/* * jQuery 1.2.6 - New Wave Javascript * * Copyright (c) 2008 John Resig (jquery.com) * Dual licensed under the MIT (MIT-LICENSE.txt) * and GPL (GPL-LICENSE.txt) licenses. * * $Date: 2008/05/26 $ * $Rev: 5685 $ */ (function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&¬xml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($) { $.poll = function(target, data, options) { options = $.extend({ animate: true, columns: 1 },options); var totalVotes = 0; for(var i = 0; i < data.length; i++) { totalVotes += data[i].data; } var currentColumn = 0; var appendString = ""; for(var i = 0; i < data.length; i++) { if(currentColumn == 0) { appendString = "
"; } var percent = Math.floor(data[i].data * 100 / totalVotes); var bar_percent = percent + 2; var show_bar_percent = bar_percent; if(options.animate) { show_bar_percent = 2; } appendString += "
"; appendString += "
"+ "
"+ "
"+ percent + "%
"+ "
"; appendString += "
"+ data[i].label +"
"; appendString += "
"; currentColumn++; if(currentColumn == options.columns || data.length - 1 == i) { appendString += "
"; target.append(appendString); currentColumn = 0; } if(options.animate) { setTimeout("$('#"+target[0].id+" #CVC_poll_bar"+i+"').animate({'width':"+bar_percent+"},'slow');", 2000); } } target.append( '
'+totalVotes + " total votes
" ); }; })(jQuery);// helper for returning the weekends in a period function weekendAreas(plotarea) { var areas = []; var d = new Date(plotarea.xmin); // go to the first Saturday d.setDate(d.getDate() - ((d.getDay() + 1) % 7)) d.setSeconds(0); d.setMinutes(0); d.setHours(0); var i = d.getTime(); do { // when we don't set y1 and y2 the rectangle // automatically extends to infinity in those directions areas.push({ x1: i, x2: i + 2 * 24 * 60 * 60 * 1000 }); i += 7 * 24 * 60 * 60 * 1000; } while (i < plotarea.xmax); return areas; } if (document.images) { preload_image = new Image(); preload_image.src="site_image/audio_pause.gif"; } jQuery.extend({ playCompleted: function() { if($.playingID != "") { var jq = $("#convocast #"+$.playingID); var p = $("a:first-child",jq); $(".CVC_stopButton",jq).hide(); p[0].playing = null; p[0].stopPoint = 0; p.addClass("CVC_playButton"); p.removeClass("CVC_pauseButton"); $.playingID = ""; } }, playingId: "", commentPlayer: function(callback) { callback = callback || function(){}; $nodes = $("#convocast .CVC_commentPlayerControls, .CVC_pop .CVC_commentPlayerControls"); $nodes.each(function() { var $jq = $(this); $jq.html("
Loading...
"); var p = $("a:first-child",$jq); p.addClass("CVC_playButton"); var s = $(".CVC_stopButton",$jq); p.click(function(){ if(this.className =="CVC_pauseButton") { this.stopPoint = $('#convocast #mpl')[0].stopAudio(); this.className = "CVC_resumeButton"; } else { if($('#convocast #mpl')[0] && $('#convocast #playinfo')[0]) $('#convocast #mpl')[0].pause(); var oldTime = $('#convocast #mpl')[0].playAudio($jq.attr("file"),this.stopPoint); $.playingID = $jq[0].id; if(oldTime != -1) { $("#convocast .CVC_commentPlayerControls a.CVC_pauseButton, .CVC_pop .CVC_commentPlayerControls a.CVC_pauseButton").each(function(){ this.className = "CVC_resumeButton"; this.stopPoint = oldTime; }); } else { $('#'+$.playingID+' .CVC_comment_loading').animate({width: "show"}); setTimeout(function(){$('#'+$.playingID+' .CVC_comment_loading').animate({width: "hide"});}, 2500); } this.className = "CVC_pauseButton"; s.show(); } }); s.click(function(){ $('#convocast #mpl')[0].stopAudio($jq.attr("file")); $('#'+$.playingID+' .CVC_comment_loading').animate({width: "hide"}); s.hide(); p[0].playing = null; p[0].stopPoint = 0; p[0].className = "CVC_playButton"; callback($jq); }); }); } }); jQuery.fn.fastSerialize = function() { var a = []; $('input,textarea,select,button', this).each(function() { var n = this.name; var t = this.type; if ( !n || this.disabled || t == 'reset' || (t == 'checkbox' || t == 'radio') && !this.checked || (t == 'submit' || t == 'image' || t == 'button') && this.form.clicked != this || this.tagName.toLowerCase() == 'select' && this.selectedIndex == -1) return; if (t == 'image' && this.form.clicked_x) return a.push( {name: n+'_x', value: this.form.clicked_x}, {name: n+'_y', value: this.form.clicked_y} ); if (t == 'select-multiple') { $('option:selected', this).each( function() { a.push({name: n, value: this.value}); }); return; } a.push({name: n, value: this.value}); }); return a; }; (function($) { $.heartBeat = function(func, delay) { delay = delay || 60; delay = delay * 1000; var id = null; var beat = function() { if (id) clearTimeout(id); func(); id = setTimeout(beat, delay); }; id = setTimeout(beat, delay); }; $.fn.hoverIntent = function(f,g) { // default configuration options var cfg = { sensitivity: 7, interval: 100, timeout: 0 }; // override configuration options with user supplied object cfg = $.extend(cfg, g ? { over: f, out: g } : f ); // instantiate variables // cX, cY = current X and Y position of mouse, updated by mousemove event // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval var cX, cY, pX, pY; // A private function for getting mouse position var track = function(ev) { cX = ev.pageX; cY = ev.pageY; }; // A private function for comparing current and previous mouse position var compare = function(ev,ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); // compare mouse positions to see if they've crossed the threshold if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) { $(ob).unbind("mousemove",track); // set hoverIntent state to true (so mouseOut can be called) ob.hoverIntent_s = 1; return cfg.over.apply(ob,[ev]); } else { // set previous coordinates for next time pX = cX; pY = cY; // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs) ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval ); } }; // A private function for delaying the mouseOut function var delay = function(ev,ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); ob.hoverIntent_s = 0; return cfg.out.apply(ob,[ev]); }; // A private function for handling mouse 'hovering' var handleHover = function(e) { // next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget; while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } } if ( p == this ) { return false; } // copy objects to be passed into t (required for event object to be passed in IE) var ev = jQuery.extend({},e); var ob = this; // cancel hoverIntent timer if it exists if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); } // else e.type == "onmouseover" if (e.type == "mouseover") { // set "previous" X and Y position based on initial entry point pX = ev.pageX; pY = ev.pageY; // update "current" X and Y position based on mousemove $(ob).bind("mousemove",track); // start polling interval (self-calling timeout) to compare mouse coordinates over time if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );} // else e.type == "onmouseout" } else { // unbind expensive mousemove event $(ob).unbind("mousemove",track); // if hoverIntent state is true, then call the mouseOut function after the specified delay if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );} } }; // bind the function to the two event listeners return this.mouseover(handleHover).mouseout(handleHover); }; })(jQuery);// Based on Thickbox 3 by Cody Lindley (http://www.codylindley.com) //Preload images var imgLoader = {};//new Image();// preload image imgLoader.src = "/site_image/loadingAnimation.gif";//no convocast path defined at this time thus this generates an error jQuery.extend({ popup: new function() { var z = this; var isAPI = false; var isSportsTalk = false; var width = 400; var height = 220; var confirm = '
' +'

$text$

' +'
' +'
' +'
' +'Yes' +'
' +'
' +'No' +'
' +'
'; var warning = '
' +'

Alert

' +'
' +'
' +'

$text$

' +'' +'
'; //function called when the user clicks on a jbox link z.show = function(ref,caption, url) { var o = jQuery.extend({ height: 220, width: 400, type: "ajax", showHeader: true }, arguments[3] || {}); $('.CVC_pop,#convocastHideSelect').stop().remove(); z.remove(); width = o.width; Convocast.hideFlash(); if (typeof document.body.style.maxHeight === "undefined") {//if IE 6 //$("body","html").css({height: "100%", width: "100%"}); //$("html").css("overflow","hidden"); if (document.getElementById("convocastHideSelect") === null) { $("body").append("
"); $("#convocastOverlay").click(z.remove); } }else{//all others if($("#convocastOverlay").length == 0){ if($.browser.mozilla && /Win/.test(navigator.platform)) { $("body").append("
"); } else { $("body").append("
"); $("#convocastOverlay").click(z.remove); } } } $('.CVC_pop #loading').show();//show loader if($(".CVC_pop").css("display") != "block"){ $(".CVC_pop").append( '' +"
"); }else{ $("#windowTitle").html(caption); } $("#CVC_closeButton").click(z.remove); $.popup.position(); $(".CVC_pop").show(); if(o.type == "ajax") { // Do ajax if(isAPI) { $.getScriptXS(Convocast.ajaxPath +"?action=popup&target=CVC_popbody&popup="+url+"&"+$.param(Convocast.clientInfo)+"&"+$.param(Convocast.current)); } else if(isSportsTalk) { $.ajax({data:"action=popup&target=CVC_popbody&popup="+url}); } else { rpp("m="+url,$(".CVC_pop .CVC_popbody")[0],true); } } else if(o.type== "confirm") { var temp = confirm.replace("$text$",o.text); $(".CVC_pop #loading").remove(); $('.CVC_pop .CVC_popbody').html(temp); $("#confirmYes").click(url); $("#confirmYes").click(z.remove); } else if(o.type== "alert") { var temp = warning.replace("$text$",url); $(".CVC_pop #loading").remove(); $('.CVC_pop .CVC_popbody').html(temp); } document.onkeyup = function(e){ if (e == null) { // ie keycode = event.keyCode; } else { // mozilla keycode = e.which; } if(keycode == 27){ // close z.remove(); } }; }; z.remove = function() { $("#convocastOverlay").unbind("click"); $("#CVC_closeButton").unbind("click"); $('#convocastOverlay, #loading').remove(); $('.CVC_pop #recorder_content').remove(); $(".CVC_pop").animate({height: "hide"},'slow', function(){ $('.CVC_pop,#convocastHideSelect').remove(); $("#convocast .CVC_flashContainer").each(function(){ $jq = $(this); if(!$jq.hasClass('player_hidden')) { $jq.css("visibility", "visible"); } });//.css("visibility", "visible"); }); if (typeof document.body.style.maxHeight == "undefined") {//if IE 6 //$("body","html").css({height: "auto", width: "auto"}); //$("html").css("overflow",""); } document.onkeydown = ""; return false; }; z.position = function(w) { //if(arguments.length == 1) { width = $(".CVC_pop").width()+26;//w; //} $(".CVC_pop #content").css({"width":width}); $(".CVC_pop").css({marginLeft: '-' + parseInt((width / 2),10) + 'px', width: width + 'px', top: ($(window).scrollTop()+140)}); }; z.confirm = function(ref,text, action) { $.popup.show(ref,"Confirm", action, {height:100, width:200, type: "confirm", text: text}); }; z.alert = function(ref,text) { $.popup.show(ref,"Alert", text, {height:100, width:200, type: "alert"}); }; z.setAPI = function() { isAPI = true; } z.setST = function() { isSportsTalk = true; } } }); /* * jQuery Form Plugin * version: 2.19 (02-FEB-2009) * @requires jQuery v1.2.2 or later * * Examples and documentation at: http://malsup.com/jquery/form/ * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html */ ;(function($) { /* Usage Note: ----------- Do not use both ajaxSubmit and ajaxForm on the same form. These functions are intended to be exclusive. Use ajaxSubmit if you want to bind your own submit handler to the form. For example, $(document).ready(function() { $('#myForm').bind('submit', function() { $(this).ajaxSubmit({ target: '#output' }); return false; // <-- important! }); }); Use ajaxForm when you want the plugin to manage all the event binding for you. For example, $(document).ready(function() { $('#myForm').ajaxForm({ target: '#output' }); }); When using ajaxForm, the ajaxSubmit function will be invoked for you at the appropriate time. */ /** * ajaxSubmit() provides a mechanism for immediately submitting * an HTML form using AJAX. */ $.fn.ajaxSubmit = function(options) { // fast fail if nothing selected (http://dev.jquery.com/ticket/2752) if (!this.length) { log('ajaxSubmit: skipping submit process - no element selected'); return this; } if (typeof options == 'function') options = { success: options }; options = $.extend({ url: this.attr('action') || window.location.toString(), type: this.attr('method') || 'GET' }, options || {}); // hook for manipulating the form data before it is extracted; // convenient for use with rich editors like tinyMCE or FCKEditor var veto = {}; this.trigger('form-pre-serialize', [this, options, veto]); if (veto.veto) { log('ajaxSubmit: submit vetoed via form-pre-serialize trigger'); return this; } // provide opportunity to alter form data before it is serialized if (options.beforeSerialize && options.beforeSerialize(this, options) === false) { log('ajaxSubmit: submit aborted via beforeSerialize callback'); return this; } var a = this.formToArray(options.semantic); if (options.data) { options.extraData = options.data; for (var n in options.data) { if(options.data[n] instanceof Array) { for (var k in options.data[n]) a.push( { name: n, value: options.data[n][k] } ) } else a.push( { name: n, value: options.data[n] } ); } } // give pre-submit callback an opportunity to abort the submit if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) { log('ajaxSubmit: submit aborted via beforeSubmit callback'); return this; } // fire vetoable 'validate' event this.trigger('form-submit-validate', [a, this, options, veto]); if (veto.veto) { log('ajaxSubmit: submit vetoed via form-submit-validate trigger'); return this; } var q = $.param(a); if (options.type.toUpperCase() == 'GET') { options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q; options.data = null; // data is null for 'get' } else options.data = q; // data is the query string for 'post' var $form = this, callbacks = []; if (options.resetForm) callbacks.push(function() { $form.resetForm(); }); if (options.clearForm) callbacks.push(function() { $form.clearForm(); }); // perform a load on the target only if dataType is not provided if (!options.dataType && options.target) { var oldSuccess = options.success || function(){}; callbacks.push(function(data) { $(options.target).html(data).each(oldSuccess, arguments); }); } else if (options.success) callbacks.push(options.success); options.success = function(data, status) { for (var i=0, max=callbacks.length; i < max; i++) callbacks[i].apply(options, [data, status, $form]); }; // are there files to upload? var files = $('input:file', this).fieldValue(); var found = false; for (var j=0; j < files.length; j++) if (files[j]) found = true; // options.iframe allows user to force iframe mode if (options.iframe || found) { // hack to fix Safari hang (thanks to Tim Molendijk for this) // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d if ($.browser.safari && options.closeKeepAlive) $.get(options.closeKeepAlive, fileUpload); else fileUpload(); } else $.ajax(options); // fire 'notify' event this.trigger('form-submit-notify', [this, options]); return this; // private function for handling file uploads (hat tip to YAHOO!) function fileUpload() { var form = $form[0]; if ($(':input[name=submit]', form).length) { alert('Error: Form elements must not be named "submit".'); return; } var opts = $.extend({}, $.ajaxSettings, options); var s = jQuery.extend(true, {}, $.extend(true, {}, $.ajaxSettings), opts); var id = 'jqFormIO' + (new Date().getTime()); var $io = $('') : $(''); var w = $('
'); var m = full ? $('
') : $(''); w.css('position', full ? 'fixed' : 'absolute'); if (msg) m.css(css); if (!noalpha) w.css($.blockUI.defaults.overlayCSS); if (this.op8) w.css({ width:''+el.clientWidth,height:''+el.clientHeight }); // lame if ($.browser.msie) f.css('opacity','0.0'); $([f[0],w[0],m[0]]).appendTo(full ? 'body' : el); // ie7 must use absolute positioning in quirks mode and to account for activex issues (when scrolling) var expr = false;//$.browser.msie && (!$.boxModel || $('object,embed', full ? null : el).length > 0); if (this.ie6 || expr) { // stretch content area if it's short if (full && $.blockUI.defaults.ie6Stretch && $.boxModel) $('html,body').css('height','100%'); // fix ie6 problem when blocked element has a border width if ((this.ie6 || !$.boxModel) && !full) { var t = this.sz(el,'borderTopWidth'), l = this.sz(el,'borderLeftWidth'); var fixT = t ? '(0 - '+t+')' : 0; var fixL = l ? '(0 - '+l+')' : 0; } // simulate fixed position $.each([f,w,m], function(i,o) { var s = o[0].style; s.position = 'absolute'; if (i < 2) { full ? s.setExpression('height','document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + "px"') : s.setExpression('height','this.parentNode.offsetHeight + "px"'); full ? s.setExpression('width','jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"') : s.setExpression('width','this.parentNode.offsetWidth + "px"'); if (fixL) s.setExpression('left', fixL); if (fixT) s.setExpression('top', fixT); } else { //if (full) s.setExpression('top','(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"'); s.marginTop = 0; } }); } if (opts.displayMode) { w.css('cursor','default').attr('title', $.blockUI.defaults.closeMessage); m.css('cursor','default'); $([f[0],w[0],m[0]]).removeClass('blockUI').addClass('displayBox'); $().click($.blockUI.impl.boxHandler).bind('keypress', $.blockUI.impl.boxHandler); } else this.bind(1, el); m.append(msg).show(); if (msg.jquery) msg.show(); if (opts.displayMode) return; if (full) { this.pageBlock = m[0]; this.pageBlockEls = $(':input:enabled:visible',this.pageBlock); setTimeout(this.focus, 20); } else this.center(m[0]); }, remove: function(el, opts) { var o = $.extend({}, $.blockUI.defaults, opts); this.bind(0, el); var full = el == window; var els = full ? $('body').children().filter('.blockUI') : $('.blockUI', el); if (full) this.pageBlock = this.pageBlockEls = null; if (o.fadeOut) { els.fadeOut(o.fadeTime, function() { if (this.parentNode) this.parentNode.removeChild(this); }); } else els.remove(); }, boxRemove: function(el) { $().unbind('click',$.blockUI.impl.boxHandler).unbind('keypress', $.blockUI.impl.boxHandler); if (this.boxCallback) this.boxCallback(this.box); $('body .displayBox').hide().remove(); }, // event handler to suppress keyboard/mouse events when blocking handler: function(e) { if (e.keyCode && e.keyCode == 9) { if ($.blockUI.impl.pageBlock && !$.blockUI.defaults.allowTabToLeave) { var els = $.blockUI.impl.pageBlockEls; var fwd = !e.shiftKey && e.target == els[els.length-1]; var back = e.shiftKey && e.target == els[0]; if (fwd || back) { setTimeout(function(){$.blockUI.impl.focus(back)},10); return false; } } } if ($(e.target).parents('div.blockMsg').length > 0) return true; return $(e.target).parents().children().filter('div.blockUI').length == 0; }, boxHandler: function(e) { if ((e.keyCode && e.keyCode == 27) || (e.type == 'click' && $(e.target).parents('div.blockMsg').length == 0)) $.blockUI.impl.boxRemove(); return true; }, // bind/unbind the handler bind: function(b, el) { var full = el == window; // don't bother unbinding if there is nothing to unbind if (!b && (full && !this.pageBlock || !full && !el.$blocked)) return; if (!full) el.$blocked = b; var $e = $(el).find('a,:input'); $.each(['mousedown','mouseup','keydown','keypress','click'], function(i,o) { $e[b?'bind':'unbind'](o, $.blockUI.impl.handler); }); }, focus: function(back) { if (!$.blockUI.impl.pageBlockEls) return; var e = $.blockUI.impl.pageBlockEls[back===true ? $.blockUI.impl.pageBlockEls.length-1 : 0]; if (e) e.focus(); }, center: function(el) { var p = el.parentNode, s = el.style; var l = ((p.offsetWidth - el.offsetWidth)/2) - this.sz(p,'borderLeftWidth'); var t = ((p.offsetHeight - el.offsetHeight)/2) - this.sz(p,'borderTopWidth'); s.left = l > 0 ? (l+'px') : '0'; s.top = t > 0 ? (t+'px') : '0'; }, sz: function(el, p) { return parseInt($.css(el,p))||0; } }; })(jQuery); // Main Class // @param: path - the url of our server grabbed from the request path for this file var Convocast = new function($) { var z = this; var canvas = null; z.clientInfo = { currentBin: "home", key: "", program: "", tz:new Date().getTimezoneOffset()/60 }; z.current = {}; z.path = "http://www.convocast.com/"; z.ajaxPath = z.path + "api.php"; var newViews = ""; z.addView = function(cid) { if(cid){ if(typeof cid == "number") newViews += "&views[]="+cid; else newViews += "&views[]="+cid.attr("ref"); } }; z.viewRequest = function() { if(newViews != "") { $.getScriptXS(Convocast.ajaxPath +"?"+$.param(Convocast.clientInfo) + "&action=update_views" + newViews); newViews = ""; } }; z.vote = function(poll,item) { z.doRequest({ poll: poll, item: item, view: 'poll' }); }; z.binRequest = function(bin,options) { options = options || {}; options = $.extend({},options,{action:"bin",bin:bin}) z.doRequest(options); }; //End Init z.loaded = false z.load = function(key, program) { if(z.loaded){ return; } z.ajaxPath = z.path + "api.php"; z.clientInfo.key = key; z.clientInfo.program = program; canvas = $('#convocast'); if(canvas.length == 0) { alert("Error: There is no div with id='convocast'"); return; } if(!program) { if(program_id = canvas.attr("program")) { z.clientInfo.key = 'microsite'; z.clientInfo.program = program_id; } else { //else fail transparently return; } } extendedRequest = {}; if(episode_id = canvas.attr("episode")) { z.clientInfo.episode = episode_id; extendedRequest = {route:1,bin:'posts'}; } //Do validation (div size etc) check on div if(canvas.attr("embed")) { z.clientInfo.embed = canvas.attr("embed"); } else { z.clientInfo.embed = 'normal'; } // alert(z.clientInfo.embed); //canvas.width(780); canvas.css({"height":"auto","border":"0px solid #3B6299"});//,"border":"1px solid #F1A92D"}); // Check flash player version if(deconcept.SWFObjectUtil.getPlayerVersion().major < 8) { canvas.html("You need Flash 8 or higher to play and post audio on ConvoCast. Click here to download the most recent Flash plugin for your browser."); return; } //z.overloadCSS(); z.createCSSLink(z.path+"css/common.css"); if(jQuery.browser.msie) { z.createCSSLink(z.path+"css/iehacks.css"); } /*if(document.doctype == null) { z.createCSSLink(z.path+"css/nodoctype.css"); }*/ if(z.clientInfo.embed == 'small') { z.createCSSLink(z.path+"css/small.css"); } z.createCSSLink(z.path+"forcestyle.php?program="+z.clientInfo.program+"&"+new Date().getTime()); //do ajax authentication $.popup.setAPI(); //Make sure all popups process through ondemand javascript var hash = location.hash; if(hash == '' || hash == '#') { z.doRequest($.extend({action:"init"},extendedRequest)); } else { z.doRequest({action:"init", hash:hash}); //alert(hash); } $.heartBeat(z.viewRequest); $.ajaxHistory.initialize(z.reset); z.loaded = true; }; z.pageLoaded = function() { //$.ajaxHistory.initialize(z.reset); }; z.reset = function(){ z.doRequest({action:"bin",bin:"home",route:1}); //Convocast.drawers.open("comments"); } z.doAction = function(el,container) { container = container || "CVC_pop"; el = $("#"+container+" #"+el); var data = el.formToArray(); data.push({name:"action","value":el.attr("action")}); if(el.attr("action") != "popup" || el.attr("action") != "processAudio") z.block(); $.getScriptXS(this.ajaxPath +"?"+$.param(data)+"&"+$.param(this.clientInfo)+"&"+$.param(z.current)); }; z.doRequest = function() { var params = jQuery.extend({},{action:"update"}, arguments[0] || {}); if(params.action != "popup" && params.action != "processAudio" && params.action != "quick_look") z.block(); $.getScriptXS(this.ajaxPath +"?"+$.param(params)+"&"+$.param(this.clientInfo)+"&"+$.param(z.current)); }; z.retrieveHistory = function(hash) { $.getScriptXS(this.ajaxPath +"?"+$.param(this.clientInfo)+"&"+hash); }; z.ajaxHistory = function(params) { z.pageReset(); params = $.extend({},z.current,params); $.ajaxHistory.trigger(true,params); }; z.showProfile = function(profile) { //z.pageReset(); //z.drawers.shut(); z.ajaxHistory({action:"bin",bin:"profile",profile:profile}); }; z.drawers = function() { $("#convocast .drawerRight,#convocast .drawerRight_open,#convocast .drawerRight_over").mouseover(function(){ if(this.className == "drawerRight_open") return; this.className = "drawerRight_over"; }).mouseout(function(){ if(this.className == "drawerRight_open") return; this.className = "drawerRight"; }).click(function(){ var el = $(this); if(el.attr("class") == "drawerRight_open") return; z.drawers.open(el.attr("bin"),{}); }); }; z.drawers.open = function(bin, options) { doRequest = options || false; z.pageReset(); $("#convocast .drawerRight[bin="+bin+"]").attr("class","drawerRight_open"); if(doRequest) { z.ajaxHistory($.extend({},{route:"1",bin:bin},options || {})); } }; z.drawers.shut = function() { return $("#convocast .drawerRight,#convocast .drawerRight_open,#convocast .drawerRight_over").attr("class","drawerRight"); } z.isBlocking = null; z.block = function() { z.isBlocking = setTimeout(ajaxTimeout, 30000); $.blockUI(); }; var ajaxTimeout = function() { z.unblock(); $.blockUI("There was an error doing your request. Please try again.",{ width:'250px', margin:'-50px 0 0 -125px', top:'50%', left:'50%', textAlign:'center', color:'#000', backgroundColor:'#ffe', border:'1px solid #f00' }); setTimeout(z.unblock, 4000); }; z.unblock = function() { clearTimeout(z.isBlocking); z.isBlocking = null; $.unblockUI(); }; z.openTab = function(tab) { var params = jQuery.extend({},{route:1,bin:z.clientInfo.currentBin,tab:tab}, arguments[1] || {}); z.ajaxHistory(params); }; z.tabs = function($ul) { var $li = $("li",$ul); $li.hover(function(){ if(this.className == "drawerTop_open") return; this.className = "drawerTop_over"; },function(){ if(this.className == "drawerTop_open") return; this.className = "drawerTop"; }).click(function(){ var el = $(this); if(el.attr("class") == "drawerTop_open") return; $li.attr("class","drawerTop"); el.attr("class","drawerTop_open"); z.ajaxHistory({route:1,bin:z.clientInfo.currentBin,tab:el.attr("ref")}); }); }; z.tabSelect = function(el,uid) { var p = $(el.parentNode.parentNode.parentNode); $("a",p).removeClass("CVC_current"); el = $(el); el.addClass("CVC_current"); z.doRequest({action:"popup",target:"tabContent",popup:p.attr("ref"),tab:el.attr("ref"),uid:uid}); }; z.tbInternalLink = function(tab,uid,title) { $("a",".CVC_pop #tabs").removeClass("CVC_current"); $("a[@ref="+tab+"]").addClass("CVC_current"); $('.CVC_pop #windowTitle').html(title); z.doRequest({action:"popup",target:"content",popup:"quick_browse",tab:tab,uid:uid,newinstance:1}); }; z.doFilterFX = function() { if($("#filterContent").css("display") == "none") { $("#convocast #order").hide(); $("#convocast .sectionRightTab").css({"top":-1,"padding-top":3}) $("#filterContent").slideToggle("slow"); } else { $("#filterContent").slideToggle("slow",function() { $("#convocast .sectionRightTab").css({"top":0,"padding-top":2}) $("#convocast #order").show(); }); } }; z.hideTranscript = function(el) { el = $(el); transcript = $('#CVC_hiddenTranscript'+$(el).attr('ref')); if(transcript.css('display') != 'none'){ el.html("Show Audio Transcript"); } else { el.html("Hide Audio Transcript"); } transcript.slideToggle(); //$('.text2', el.parent().parent()).; } z.open_post_text = function(ele){ $(ele).click(function(){ var postid = $(this).attr("id").replace("CVC_open_text_",""); if($("#CVC_hidden_text_"+postid).css("display") != "none"){ $("#CVC_hidden_text_"+postid).hide("fast"); $(this).html("[ More ]"); } else { $("#CVC_hidden_text_"+postid).show("fast",function(){ $("#CVC_hidden_text_"+postid).css({display:"inline"}); }); $(this).html("[ Less ]"); } }); } z.toggleReplies = function(el,convoid,total,profile) { el = $(el); var replies = $('#CVC_responses_'+convoid); if(el.hasClass('CVC_respondButton_selected')) { total = total || 0; $("#CVC_response_pager_"+convoid).html(""); el.removeClass('CVC_respondButton_selected'); replies.slideUp("slow",function(){replies.html("");el.html('View Responses ('+total+')');}); } else { el.html("Loading..."); replies.show(); el.addClass('CVC_respondButton_selected'); curcvc = convoid; this.rqvars = {convoid:convoid,route:'1',update:'posts',button:'1'}; if(profile){ this.rqvars = $.extend(this.rqvars,{profile:profile}); } Convocast.doRequest(this.rqvars); } }; z.getPlayerUpdate = function(typ,pr1,pr2,pid) { if(typ == "state" && pr1 > 0) { $(".CVC_commentPlayerControls a.current").each(function(){ var oldTime = $('#convocast #CVC_commentPlayer')[0].stopAudio(); this.innerHTML = "Resume"; this.className = ""; this.stopPoint = oldTime; }); } }; z.setEpisode = function(id, title, info, file) { $display = $('#convocast #CVC_L #CVC_player'); if($display.length == 0) { //init $('#convocast #CVC_L').append('
'); $display = $('#convocast #CVC_L #CVC_player'); } $display.html('
'); so = new SWFObject(z.path+'flash/mediaplayer.swf','mpl','168','20','8'); so.addParam('allowfullscreen','true'); so.addParam('allowscriptaccess','always'); if(file==''){ $("#CVC_mp_container").attr('style','margin-left:-5000px;height:1px;'); file = 'http://convocast.com/empty.mp3'; } so.addVariable('file',file); //so.addParam('WMode','Transparent'); so.addVariable('height','20'); so.addVariable('width','168'); so.addVariable('enablejs','true'); so.addVariable('javascriptid','mpl'); so.write('CVC_mp_container'); setTimeout(function(){z.displayEpisode(id, title, info, file,false);},23); }; z.displayEpisode = function(id, title, info, file, setFile) { $display = $('#player'); if(setFile) { if(file != "") { $("#convocast #CVC_mp_container").css({"visibility":"visible","height":20}).removeClass("CVC_player_hidden"); $('#convocast #mpl')[0].setFile(file); } else { $("#convocast #CVC_mp_container").css({'margin-left':"-5000px","height":1}).addClass("CVC_player_hidden"); } } }; z.profileLinks = function(profile) { $("#convocast a[profile]").unbind().attr({"href":"javascript:{}","rel":z.ajaxPath}).click(function(){ z.showProfile($(this).attr("profile")); }); }; z.check = function($nodes,options) { options = $.extend({ check: true, attr: "" },options || {}); if(options.attr != "") { $($nodes+":checked").each(function() { this.checked = false; }); $nodes = $($nodes+"["+options.attr+"]"); }else { $nodes = $($nodes); } $nodes.each(function() { this.checked = options.check; }); }; z.tutorial = function(el) { $('.CVC_tutorial_node_body',$(el).parent().parent().parent()).slideToggle(function() { $el = $(this); $toggleText = $('.CVC_toggleText',$el.parent()); if($el.css("display") == "none") { $toggleText.html("Read"); } else { $toggleText.html("Hide"); } }); }; z.mail = function(c,cvcin) { c = $("#"+c); var title = $("#messageTitle",c); var message = $("#messageText",c); var error = false; var errorText = ""; if(!title.val() || title.val() == title.attr("title")) { error = true; errorText = "Subject is required"; } if(!cvcin){ if(!message.val() || message.val() == message.attr("title")) { if(error) { errorText += "
"; } error = true; errorText += "Message body is required"; } } var recipients = ""; $('#convocast #recipients a').each(function(){ recipients +="&to[]="+$(this).attr("uid"); }); if(recipients == ''){ if(error) { errorText += "
"; } error = true; errorText += "You must have at least one recipient"; } if(error) { z.mail.writeError(errorText); return false; } if(!cvcin){ $.getScriptXS(z.ajaxPath +"?"+$.param({route:1,update:"inbox",tab:"compose",subject:title.val(),message:message.val()})+recipients+"&"+$.param(z.clientInfo)+"&"+$.param(z.current)+"&"+$.param(additional)+"&write=inbox"); }else{ this.val = message.val().split("\r\n").join('\\n');//win this.val = this.val.split("\r").join('\\n');//mac this.val = this.val.split("\n").join('\\n');//linix this.val = this.val.split("\t").join('\\t');//save the tabs too this.path = z.ajaxPath +"?route=1&tab=compose&subject="+title.val()+"&message="+this.val+recipients+"&"+$.param(z.clientInfo)+"&"+$.param(z.current)+"&write=cvcinbox&audio="+$("#audio_name").val()+"&thread="+$("#thread_name").val(); $.getScriptXS(this.path); } return false; }; z.mail.writeError = function(error){ if(!error.length){ alert('error has no length'); } c = $("#messageError"); c.css({display:'none',border:'1px dotted red',margin:'4px'}); c.html(error); c.show('fast'); setTimeout(function(){ c.hide('slow'); },5000); } z.mail.addRecipient = function(name,uid) { $('#convocast #recipients').prepend(''+name+''); $("#convocast #userid").val(""); }; z.mail.deleteRecipient = function(uid) { $('#convocast #recipients a[uid='+uid+']').remove(); }; z.mail.action = function(method,mid,tab,requestParams,cvcin){ var mids = ""; if(mid.each) { mid.each(function(){ mids +="&mids[]="+$(this).attr("mid"); }); } else { mids ="&mids[]="+mid; } this.bin = 'inbox'; if(cvcin){ this.bin = 'cvcinbox'; } var params = $.extend({},{route:1,update:this.bin,tab:tab,method:method}, requestParams || {}); $.getScriptXS(z.ajaxPath +"?"+$.param(params)+mids+"&"+$.param(z.clientInfo)+"&"+$.param(z.current)+"&write="+this.bin); }; /*z.mail.deleteMessage = function(tab,box,mid,mrelation_id) { $("#convocast #message"+mid).css("text-align","center").html("Deleting..."); $("#convocast #message"+mid).slideUp(function(){ z.doRequest({action:"bin",bin:"inbox",tab:tab,mid:mid,r:mrelation_id,box:box}); }); };*/ z.changePassword = function() { var newpass = $("#convocast #newpass1").val(); if(newpass == $("#convocast #newpass2").val()) { z.doRequest({bin:"settings",tab:"password",route:"true",write:"settings",oldpass:$("#convocast #oldpass").val(),newpass:newpass}); } else { $("#convocast #passwordInfo").html("Your new password and confirm password don't match!"); } }; z.togglePostSummary = function(el,tab) { el = $(el.parentNode.parentNode); if(tab == "title") { $("legend a", el).addClass("CVC_selected"); $(".CVC_keywords a", el).removeClass("CVC_selected"); $(".CVC_transcription:first",el).show(); $(".CVC_transcription:last",el).hide(); } else { $("legend a", el).removeClass("CVC_selected"); $(".CVC_keywords a", el).addClass("CVC_selected"); $(".CVC_transcription:first",el).hide(); $(".CVC_transcription:last",el).show(); } }; z.cluetipClose = function() { $("#CVC_cluetip-outer").parent().removeClass().end().children().empty(); }; z.initFilePost = function() { var container = $("#convocast .CVC_fileinputs"); if($.browser.msie) { container.html(""); } else { container.html(""); } }; var searchTimer = null; z.setSearch = function(init) { $('#convocast #q').keydown(function(e) { if(e.keyCode==13 && this.value !='') { z.doRequest({q:this.value,view:'posts',order:this.order}); } }).focus(function(){ clearTimeout(searchTimer); searchTimer = null; $(this).animate({width:120},'slow'); }).blur(z.hideSearch); if(init) { searchTimer = setTimeout("Convocast.hideSearch.apply($('#convocast #CVC_q')[0]);",3000); } }; z.pageReset = function() { z.drawers.shut(); scroll(0,$("#convocast").offset().top); clearTimeout(searchTimer); searchTimer = null; $("#convocast #CVC_q").stop(); } z.hideSearch = function() { if(this.value == '') { $(this).animate({width:0},'slow'); } }; z.episodeToggle = function(eid,link) { if($("#convocast #CVC_episodeSummaryEdit"+eid).css("display") == "none") { $("#convocast #CVC_episodeSummary"+eid).hide(); $("#convocast #CVC_episodeSummaryEdit"+eid).show(); $("#convocast #CVC_episodeDetails"+eid).slideDown("slow"); link.innerHTML = 'Hide'; } else { $("#convocast #CVC_episodeSummaryEdit"+eid).hide(); $("#convocast #CVC_episodeSummary"+eid).show(); $("#convocast #CVC_episodeDetails"+eid).slideUp("slow"); link.innerHTML = 'Show'; } }; z.Upload = new function() { var y = this; //y.callback = null; var flash = null; y.load = function(file) { var iu = null; //if(!$.browser.msie || $.browser.version != '6.0') { $('#convocastUploadContainer').css({'margin-left':-5000}); iu = new SWFObject(z.path+'flash/upload.swf','CVC_imageUploader','1','1','8'); //} else { // $('#convocastUploadContainer').css({'height':300,'width':300}); // iu = new SWFObject(z.path+'flash/upload.swf','imageUploader','300','300','8'); //} iu.addParam('allowscriptaccess','always'); iu.addVariable('uploadUrl',z.path+'api/upload.php?'+file); iu.addVariable('useExternalInterface',true); iu.addVariable('javaScriptEventsPrefix','Convocast.Upload.'); iu.addVariable('removeButtonVisible',false); iu.addVariable('backgroundColor','FFFFFF'); iu.write('convocastUploadContainer'); }; y.browse = function(fileTypes) { fileTypes = fileTypes || "images" var allTypes = []; var imageTypes = {}; switch(fileTypes) { case "images": imageTypes.description = "Images (*.JPG;*.JPEG;*.JPE;*.GIF;*.PNG;)"; imageTypes.extension = "*.jpg; *.jpeg; *.jpe; *.gif; *.png;"; break; case "wav": imageTypes.description = "Audio (*.WAV;)"; imageTypes.extension = "*.wav;"; break; } allTypes.push(imageTypes); flash.browseFiles(allTypes); }; y._onMovieLoad = function() { //if(!$.browser.msie || $.browser.version != '6.0') { $("#convocast .CVC_uploadToShow, .CVC_pop .CVC_uploadToShow").show(); //} flash = $("#convocast #CVC_imageUploader")[0]; }; y._onSelect = function() { var fileList = flash.fileList(); if(fileList.length > 1) { flash.removeItemAt(0); } $("#convocast #CVC_fileInput").html(fileList[fileList.length-1].name); }; y.submit = function() { var fileList = flash.fileList(); if(fileList.length > 0) { flash.uploadAll(); } else { $("#convocast #CVC_percentCompleted").text("Please select a file."); } }; y._onProgress = function(type, fileIndex, fileBytesLoaded, fileBytesLength, totalBytesLoaded, totalBytesLength) { var PercentDone = new Number((totalBytesLoaded/totalBytesLength)*100).toFixed(1); $("#convocast #CVC_percentCompleted").text(PercentDone + "% uploaded"); }; y._onCompleteAbsolute = function(type, uploadedBytes){ $("#convocast #CVC_percentCompleted").text("Upload Complete!"); $("#convocast #CVC_fileInput").html(" "); //var request = {action:"updateImage"}; //if(y.callback){ // z.doRequest(y.callback); //}else{ if($(".CVC_new_user_upload").length > 0){ $(".CVC_new_user_upload").remove(); $("#CVC_img_upload_title").remove(); } else { z.doRequest({action:"updateImage"}); } }; y._onError = function(type,er,error){ $("#convocast #CVC_percentCompleted").text(error); }; }; z.audioUpload = new function() { var y = this; var flash = null; y.load = function(file) { var iu = null; //if(!$.browser.msie || $.browser.version != '6.0') { $('#convocastAudioUploadContainer').css({'margin-left':-5000}); iu = new SWFObject(z.path+'flash/upload.swf','CVC_audioUploader','1','1','8'); //} else { // $('#convocastAudioUploadContainer').css({'height':300,'width':300}); // iu = new SWFObject(z.path+'flash/upload.swf','audioUploader','300','300','8'); //} iu.addParam('allowscriptaccess','always'); iu.addVariable('uploadUrl',z.path+'api/upload.php?'+file); iu.addVariable('useExternalInterface',true); iu.addVariable('javaScriptEventsPrefix','Convocast.audioUpload.'); iu.addVariable('removeButtonVisible',false); iu.addVariable('backgroundColor','FFFFFF'); iu.write('convocastAudioUploadContainer'); }; y.browse = function() { var allTypes = []; var imageTypes = {}; imageTypes.description = "Audio (*.WAV;)"; imageTypes.extension = "*.wav;"; allTypes.push(imageTypes); flash.browseFiles(allTypes); }; y._onMovieLoad = function() { //if(!$.browser.msie || $.browser.version != '6.0') { $("#convocast .CVC_uploadToShow, .CVC_pop .CVC_uploadToShow").show(); //} flash = $("#convocast #CVC_audioUploader")[0]; }; y._onSelect = function() { var fileList = flash.fileList(); if(fileList.length > 1) { flash.removeItemAt(0); } $("#convocast #CVC_audioFileInput").html(fileList[fileList.length-1].name); }; y.submit = function() { var fileList = flash.fileList(); if(fileList.length > 0) { flash.uploadAll(); } else { $("#convocast #CVC_audioPercentCompleted").text("Please select a file."); } }; y._onProgress = function(type, fileIndex, fileBytesLoaded, fileBytesLength, totalBytesLoaded, totalBytesLength) { var PercentDone = new Number((totalBytesLoaded/totalBytesLength)*100).toFixed(1); $("#convocast #CVC_audioPercentCompleted").text(PercentDone + "% uploaded"); }; y._onCompleteAbsolute = function(type, uploadedBytes){ $("#convocast #CVC_audioPercentCompleted").text("Upload Complete!"); $("#convocast #CVC_audioFileInput").html(" "); z.doRequest({route:1,update:'manage',tab:'settings'}); }; y._onError = function(type,er,error){ $("#convocast #CVC_audioPercentCompleted").text(error); }; }; z.postUpload = new function() { var y = this; var flash = null; var tmpid = null; y.load = function(file,temp_id) { tmpid = temp_id; var iu = null; $('#convocastPostUploadContainer').css({'margin-left':-5000}); iu = new SWFObject(z.path+'flash/upload.swf','CVC_postUploader','1','1','8'); iu.addParam('allowscriptaccess','always'); iu.addVariable('uploadUrl',z.path+'ap