
// remap jQuery to $
(function($){

(function($){$.fn.easySlider=function(options){var defaults={prevId:'prevBtn',prevText:'Previous',nextId:'nextBtn',nextText:'Next',controlsShow:true,controlsBefore:'',controlsAfter:'',controlsFade:true,firstId:'firstBtn',firstText:'First',firstShow:false,lastId:'lastBtn',lastText:'Last',lastShow:false,vertical:false,speed:800,auto:false,pause:2000,continuous:false,numeric:false,numericId:'controls'};var options=$.extend(defaults,options);this.each(function(){var obj=$(this);var s=$("li",obj).length;var w=$("li",obj).width();var h=$("li",obj).height();var clickable=true;obj.width(w);obj.height(h);obj.css("overflow","hidden");var ts=s-1;var t=0;$("ul",obj).css('width',s*w);if(options.continuous){$("ul",obj).prepend($("ul li:last-child",obj).clone().css("margin-left","-"+w+"px"));$("ul",obj).append($("ul li:nth-child(2)",obj).clone());$("ul",obj).css('width',(s+1)*w);};if(!options.vertical)$("li",obj).css('float','left');if(options.controlsShow){var html=options.controlsBefore;if(options.numeric){html+='<ol id="'+options.numericId+'"></ol>';}else{if(options.firstShow)html+='<span id="'+options.firstId+'"><a href=\"javascript:void(0);\">'+options.firstText+'</a></span>';html+=' <span id="'+options.prevId+'"><a href=\"javascript:void(0);\">'+options.prevText+'</a></span>';html+=' <span id="'+options.nextId+'"><a href=\"javascript:void(0);\">'+options.nextText+'</a></span>';if(options.lastShow)html+=' <span id="'+options.lastId+'"><a href=\"javascript:void(0);\">'+options.lastText+'</a></span>';};html+=options.controlsAfter;$(obj).after(html);};if(options.numeric){for(var i=0;i<s;i++){$(document.createElement("li")).attr('id',options.numericId+(i+1)).html('<a rel='+i+' href=\"javascript:void(0);\">'+(i+1)+'</a>').appendTo($("#"+options.numericId)).click(function(){animate($("a",$(this)).attr('rel'),true);});};}else{$("a","#"+options.nextId).click(function(){animate("next",true);});$("a","#"+options.prevId).click(function(){animate("prev",true);});$("a","#"+options.firstId).click(function(){animate("first",true);});$("a","#"+options.lastId).click(function(){animate("last",true);});};function setCurrent(i){i=parseInt(i)+1;$("li","#"+options.numericId).removeClass("current");$("li#"+options.numericId+i).addClass("current");};function adjust(){if(t>ts)t=0;if(t<0)t=ts;if(!options.vertical){$("ul",obj).css("margin-left",(t*w*-1));}else{$("ul",obj).css("margin-left",(t*h*-1));}
clickable=true;if(options.numeric)setCurrent(t);};function animate(dir,clicked){if(clickable){clickable=false;var ot=t;switch(dir){case"next":t=(ot>=ts)?(options.continuous?t+1:ts):t+1;break;case"prev":t=(t<=0)?(options.continuous?t-1:0):t-1;break;case"first":t=0;break;case"last":t=ts;break;default:t=dir;break;};var diff=Math.abs(ot-t);var speed=diff*options.speed;if(!options.vertical){p=(t*w*-1);$("ul",obj).animate({marginLeft:p},{queue:false,duration:speed,complete:adjust});}else{p=(t*h*-1);$("ul",obj).animate({marginTop:p},{queue:false,duration:speed,complete:adjust});};if(!options.continuous&&options.controlsFade){if(t==ts){$("a","#"+options.nextId).hide();$("a","#"+options.lastId).hide();}else{$("a","#"+options.nextId).show();$("a","#"+options.lastId).show();};if(t==0){$("a","#"+options.prevId).hide();$("a","#"+options.firstId).hide();}else{$("a","#"+options.prevId).show();$("a","#"+options.firstId).show();};};if(clicked)clearTimeout(timeout);if(options.auto&&dir=="next"&&!clicked){;timeout=setTimeout(function(){animate("next",false);},diff*options.speed+options.pause);};};};var timeout;if(options.auto){;timeout=setTimeout(function(){animate("next",false);},options.pause);};if(options.numeric)setCurrent(0);if(!options.continuous&&options.controlsFade){$("a","#"+options.prevId).hide();$("a","#"+options.firstId).hide();};});};})(jQuery);

(function($,flash){var createAttrs=function(obj){var aEach,aArray=[];for(aEach in obj){if(/string|number/.test(typeof obj[aEach])&&obj[aEach]!==''){aArray.push(aEach+'="'+obj[aEach]+'"');}}
return aArray[j]('');},createParams=function(obj){var aEach,bEach,aArray=[],bArray;if(typeof obj=='object'){for(aEach in obj){if(typeof obj[aEach]=='object'){bArray=[];for(bEach in obj[aEach]){bArray.push([bEach,'=',encodeURIComponent(obj[aEach][bEach])][j](''));}
obj[aEach]=bArray[j]('&');}
if(obj[aEach]){aArray.push(['<param name="',aEach,'" value="',obj[aEach],'" />'][j](''));}}
obj=aArray[j]('');}
return obj;},expressInstallIsActive=false,j='join';$[flash]=(function(){try{var flashVersion='0,0,0',Plugin=navigator.plugins['Shockwave Flash']||ActiveXObject;flashVersion=Plugin.description||(function(){try{return(new Plugin('ShockwaveFlash.ShockwaveFlash')).GetVariable('$version');}
catch(eIE){}}());}
catch(e){}
flashVersion=flashVersion.match(/^[A-Za-z\s]*?(\d+)[\.|,](\d+)(?:\s+[d|r]|,)(\d+)/);return{available:flashVersion[1]>0,activeX:Plugin&&!Plugin.name,version:{major:flashVersion[1]*1,minor:flashVersion[2]*1,release:flashVersion[3]*1},hasVersion:function(version){var versionCompare=this.version,major='major',minor='minor',release='release';version=(/string|number/.test(typeof version))?version.toString().split('.'):version||[0,0,0];version=[version[major]||version[0]||versionCompare[major],version[minor]||version[1]||versionCompare[minor],version[release]||version[2]||versionCompare[release]];return(version[0]<versionCompare[major])||(version[0]==versionCompare[major]&&version[1]<versionCompare[minor])||(version[0]==versionCompare[major]&&version[1]==versionCompare[minor]&&version[2]<=versionCompare[release]);},expressInstall:'expressInstall.swf',create:function(obj){if(!$[flash].available||expressInstallIsActive||!typeof obj=='object'||!obj.swf){return false;}
if(obj.hasVersion&&!$[flash].hasVersion(obj.hasVersion)){obj={swf:obj.expressInstall||$[flash].expressInstall,attrs:{id:obj.id||'SWFObjectExprInst',name:obj.name,height:Math.max(obj.height||137),width:Math.max(obj.width||214)},params:{flashvars:{MMredirectURL:location.href,MMplayerType:($[flash].activeX)?'ActiveX':'PlugIn',MMdoctitle:document.title.slice(0,47)+' - Flash Player Installation'}}};expressInstallIsActive=true;}
else{obj=$.extend(true,{attrs:{id:obj.id,name:obj.name,height:obj.height||180,width:obj.width||320},params:{wmode:obj.wmode||'opaque',flashvars:obj.flashvars}},obj);}
if($[flash].activeX){obj.attrs.classid=obj.attrs.classid||'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';obj.params.movie=obj.params.movie||obj.swf;}
else{obj.attrs.type=obj.attrs.classid||'application/x-shockwave-flash';obj.attrs.data=obj.attrs.data||obj.swf;}
return['<object ',createAttrs(obj.attrs),'>',createParams(obj.params),'</object>'][j]('');}};}());$.fn[flash]=function(args){if(typeof args=='object'){this.each(function(){var test=document.createElement(flash);var newFlash=$[flash].create(args);if(newFlash){test.innerHTML=newFlash;if(test.childNodes[0]){this.appendChild(test.childNodes[0]);}};});}
else if(typeof args=='function'){this.find('object').andSelf().filter('object').each(function(){var elem=this,jsInteractionTimeoutMs='jsInteractionTimeoutMs';elem[jsInteractionTimeoutMs]=elem[jsInteractionTimeoutMs]||0;if(elem[jsInteractionTimeoutMs]<660){if(elem.clientWidth||elem.clientHeight){args.call(this);}
else{setTimeout(function(){$(elem)[flash](args);},elem[jsInteractionTimeoutMs]+66);}}});}
return this;};}(jQuery,'flash'));

})(window.jQuery);



// usage: log('inside coolFunc',this,arguments);
// paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/
window.log = function(){
  log.history = log.history || [];   // store logs to an array for reference
  log.history.push(arguments);
  if(this.console){
    console.log( Array.prototype.slice.call(arguments) );
  }
};



// catch all document.write() calls
(function(doc){
  var write = doc.write;
  doc.write = function(q){ 
    log('document.write(): ',arguments); 
    if (/docwriteregexwhitelist/.test(q)) write.apply(doc,arguments);  
  };
})(document);
