;(function($){var style=document.createElement('div').style,moz=style['MozBorderRadius']!==undefined,webkit=style['WebkitBorderRadius']!==undefined,radius=style['borderRadius']!==undefined||style['BorderRadius']!==undefined,mode=document.documentMode||0,noBottomFold=$.browser.msie&&(($.browser.version<8&&!mode)||mode<8),expr=$.browser.msie&&(function(){var div=document.createElement('div');try{div.style.setExpression('width','0+0');div.style.removeExpression('width');}
catch(e){return false;}
return true;})();$.support=$.support||{};$.support.borderRadius=moz||webkit||radius;function sz(el,p){return parseInt($.css(el,p))||0;};function hex2(s){var s=parseInt(s).toString(16);return(s.length<2)?'0'+s:s;};function gpc(node){while(node){var v=$.css(node,'backgroundColor'),rgb;if(v&&v!='transparent'&&v!='rgba(0, 0, 0, 0)'){if(v.indexOf('rgb')>=0){rgb=v.match(/\d+/g);return'#'+hex2(rgb[0])+hex2(rgb[1])+hex2(rgb[2]);}
return v;}
if(node.nodeName.toLowerCase()=='html')
break;node=node.parentNode;}
return'#ffffff';};function getWidth(fx,i,width){switch(fx){case'round':return Math.round(width*(1-Math.cos(Math.asin(i/width))));case'cool':return Math.round(width*(1+Math.cos(Math.asin(i/width))));case'sharp':return Math.round(width*(1-Math.cos(Math.acos(i/width))));case'bite':return Math.round(width*(Math.cos(Math.asin((width-i-1)/width))));case'slide':return Math.round(width*(Math.atan2(i,width/i)));case'jut':return Math.round(width*(Math.atan2(width,(width-i-1))));case'curl':return Math.round(width*(Math.atan(i)));case'tear':return Math.round(width*(Math.cos(i)));case'wicked':return Math.round(width*(Math.tan(i)));case'long':return Math.round(width*(Math.sqrt(i)));case'sculpt':return Math.round(width*(Math.log((width-i-1),width)));case'dogfold':case'dog':return(i&1)?(i+1):width;case'dog2':return(i&2)?(i+1):width;case'dog3':return(i&3)?(i+1):width;case'fray':return(i%2)*width;case'notch':return width;case'bevelfold':case'bevel':return i+1;}};$.fn.corner=function(options){if(this.length==0){if(!$.isReady&&this.selector){var s=this.selector,c=this.context;$(function(){$(s,c).corner(options);});}
return this;}
return this.each(function(index){var $this=$(this),o=[$this.attr($.fn.corner.defaults.metaAttr)||'',options||''].join(' ').toLowerCase(),keep=/keep/.test(o),cc=((o.match(/cc:(#[0-9a-f]+)/)||[])[1]),sc=((o.match(/sc:(#[0-9a-f]+)/)||[])[1]),width=parseInt((o.match(/(\d+)px/)||[])[1])||10,re=/round|bevelfold|bevel|notch|bite|cool|sharp|slide|jut|curl|tear|fray|wicked|sculpt|long|dog3|dog2|dogfold|dog/,fx=((o.match(re)||['round'])[0]),fold=/dogfold|bevelfold/.test(o),edges={T:0,B:1},opts={TL:/top|tl|left/.test(o),TR:/top|tr|right/.test(o),BL:/bottom|bl|left/.test(o),BR:/bottom|br|right/.test(o)},strip,pad,cssHeight,j,bot,d,ds,bw,i,w,e,c,common,$horz;if(!opts.TL&&!opts.TR&&!opts.BL&&!opts.BR)
opts={TL:1,TR:1,BL:1,BR:1};if($.fn.corner.defaults.useNative&&fx=='round'&&(radius||moz||webkit)&&!cc&&!sc){if(opts.TL)
$this.css(radius?'border-top-left-radius':moz?'-moz-border-radius-topleft':'-webkit-border-top-left-radius',width+'px');if(opts.TR)
$this.css(radius?'border-top-right-radius':moz?'-moz-border-radius-topright':'-webkit-border-top-right-radius',width+'px');if(opts.BL)
$this.css(radius?'border-bottom-left-radius':moz?'-moz-border-radius-bottomleft':'-webkit-border-bottom-left-radius',width+'px');if(opts.BR)
$this.css(radius?'border-bottom-right-radius':moz?'-moz-border-radius-bottomright':'-webkit-border-bottom-right-radius',width+'px');return;}
strip=document.createElement('div');$(strip).css({overflow:'hidden',height:'1px',minHeight:'1px',fontSize:'1px',backgroundColor:sc||'transparent',borderStyle:'solid'});pad={T:parseInt($.css(this,'paddingTop'))||0,R:parseInt($.css(this,'paddingRight'))||0,B:parseInt($.css(this,'paddingBottom'))||0,L:parseInt($.css(this,'paddingLeft'))||0};if(typeof this.style.zoom!=undefined)this.style.zoom=1;if(!keep)this.style.border='none';strip.style.borderColor=cc||gpc(this.parentNode);cssHeight=$(this).outerHeight();for(j in edges){bot=edges[j];if((bot&&(opts.BL||opts.BR))||(!bot&&(opts.TL||opts.TR))){strip.style.borderStyle='none '+(opts[j+'R']?'solid':'none')+' none '+(opts[j+'L']?'solid':'none');d=document.createElement('div');$(d).addClass('jquery-corner');ds=d.style;bot?this.appendChild(d):this.insertBefore(d,this.firstChild);if(bot&&cssHeight!='auto'){if($.css(this,'position')=='static')
this.style.position='relative';ds.position='absolute';ds.bottom=ds.left=ds.padding=ds.margin='0';if(expr)
ds.setExpression('width','this.parentNode.offsetWidth');else
ds.width='100%';}
else if(!bot&&$.browser.msie){if($.css(this,'position')=='static')
this.style.position='relative';ds.position='absolute';ds.top=ds.left=ds.right=ds.padding=ds.margin='0';if(expr){bw=sz(this,'borderLeftWidth')+sz(this,'borderRightWidth');ds.setExpression('width','this.parentNode.offsetWidth - '+bw+'+ "px"');}
else
ds.width='100%';}
else{ds.position='relative';ds.margin=!bot?'-'+pad.T+'px -'+pad.R+'px '+(pad.T-width)+'px -'+pad.L+'px':(pad.B-width)+'px -'+pad.R+'px -'+pad.B+'px -'+pad.L+'px';}
for(i=0;i<width;i++){w=Math.max(0,getWidth(fx,i,width));e=strip.cloneNode(false);e.style.borderWidth='0 '+(opts[j+'R']?w:0)+'px 0 '+(opts[j+'L']?w:0)+'px';bot?d.appendChild(e):d.insertBefore(e,d.firstChild);}
if(fold&&$.support.boxModel){if(bot&&noBottomFold)continue;for(c in opts){if(!opts[c])continue;if(bot&&(c=='TL'||c=='TR'))continue;if(!bot&&(c=='BL'||c=='BR'))continue;common={position:'absolute',border:'none',margin:0,padding:0,overflow:'hidden',backgroundColor:strip.style.borderColor};$horz=$('<div/>').css(common).css({width:width+'px',height:'1px'});switch(c){case'TL':$horz.css({bottom:0,left:0});break;case'TR':$horz.css({bottom:0,right:0});break;case'BL':$horz.css({top:0,left:0});break;case'BR':$horz.css({top:0,right:0});break;}
d.appendChild($horz[0]);var $vert=$('<div/>').css(common).css({top:0,bottom:0,width:'1px',height:width+'px'});switch(c){case'TL':$vert.css({left:width});break;case'TR':$vert.css({right:width});break;case'BL':$vert.css({left:width});break;case'BR':$vert.css({right:width});break;}
d.appendChild($vert[0]);}}}}});};$.fn.uncorner=function(){if(radius||moz||webkit)
this.css(radius?'border-radius':moz?'-moz-border-radius':'-webkit-border-radius',0);$('div.jquery-corner',this).remove();return this;};$.fn.corner.defaults={useNative:true,metaAttr:'data-corner'};})(jQuery);

(function($){$.mySlideshow={version:'0.0.1'};$.fn.mySlideshow=function(settings){settings=jQuery.extend({images:[],imageID:'slideshow_image',folder:"",delay:3000,loaderSrc:'loader.gif',loaderID:'slideshow_loader',loaderHTML:'',controlsID:'slideshow_controls',controlsHTML:'',controlsPrevID:'slideshow_controls_prev',controlsPlayID:'slideshow_controls_play',controlsPauseID:'slideshow_controls_pause',controlsNextID:'slideshow_controls_next',fadeOutTime:400,fadeInTime:300,maxWidth:400,maxHeight:300,startSlideshow:true,controlsFadeInTime:200,controlsFadeOutTime:200,debug:false},settings);settings.loaderHTML=settings.loaderHTML||'<img id="'+settings.loaderID+'" src="'+settings.loaderSrc+'" alt="Loading..." />';settings.controlsHTML=settings.controlsHTML||'<div id="'+settings.controlsID+'">'+'<a href="javascript:;" id="'+settings.controlsPrevID+'">Prev</a> '+'<a href="javascript:;" id="'+settings.controlsPlayID+'">Play</a> '+'<a href="javascript:;" id="'+settings.controlsPauseID+'">Pause</a> '+'<a href="javascript:;" id="'+settings.controlsNextID+'">Next</a>'+'</div>';var imgPosition=0;var parent=this;var loader;var imageContainer;var newImageData={width:0,height:0};var timerRef;var slideshowActive=settings.startSlideshow;var maxWidth=settings.maxWidth,maxHeight=settings.maxHeight;var controls={};var images=[];_init=function(){parent.css('position','relative').css('width',maxWidth).css('height',maxHeight);imageContainer=$("#"+settings.imageID);var image=imageContainer.find('img');if(image[0].complete||image[0].readyState===4){_debug("Setting initial image dimensions");_setImageDimensions(image.width(),image.height(),image);imageContainer.css('visibility','visible');}
else{_debug("Setting callback to set initial image dimensions as has not yet loaded...");image.load(function(){$(this).unbind('load');_setImageDimensions(image.width(),image.height(),image);imageContainer.css('visibility','visible');});}
_setupLoader();_setupControls();_preloadNew();_startTimer();};_setupLoader=function(){parent.append(settings.loaderHTML);loader=$('#'+settings.loaderID).hide().css('margin','-8px 0 0 -8px').css('position','absolute').css('top','50%').css('left','50%');}
_setupControls=function(){parent.append(settings.controlsHTML);controls=$('#'+settings.controlsID).hide().corner();$.extend(controls,{prev:$('#'+settings.controlsPrevID),play:$('#'+settings.controlsPlayID),pause:$('#'+settings.controlsPauseID),next:$('#'+settings.controlsNextID)});controls.play.click(function(){$.mySlideshow.play();});controls.pause.click(function(){$.mySlideshow.stop();});controls.next.click(function(){$.mySlideshow.stop();$.mySlideshow.next();})
controls.prev.click(function(){$.mySlideshow.stop();$.mySlideshow.prev();})
if(slideshowActive)controls.play.hide();else controls.pause.hide();controls.css('position','absolute').css('top','50%').css('left','50%');parent.hover(function(){controls.fadeIn(settings.controlsFadeInTime);},function(){controls.fadeOut(settings.controlsFadeOutTime);});}
$.mySlideshow.next=function(){_debug("$.mySlideshow.next() called");imgPosition++;if(imgPosition>settings.images.length-1)imgPosition=0;_startTransition('next');};$.mySlideshow.prev=function(){imgPosition--;if(imgPosition<0)imgPosition=settings.images.length-1;_startTransition('prev');}
_startTransition=function(direction){if(images[imgPosition][0].width==0){_debug(direction+" image not yet loaded. Setting callback");images[imgPosition].load(function(){$(this).unbind('click');_debug("Callback called: Image loaded");_startTransition(direction);});return;}
newImageData=_getDimensions(direction);_hideImage();}
_hideImage=function(){_debug("_hideImage() called");imageContainer.animate({"opacity":0},settings.fadeOutTime,"linear",function(){_loadNewImage();});}
_loadNewImage=function(){_debug("_loadNewImage() called");loader.show();imageContainer.html(images[imgPosition]);_resizeShowNewImage();};_resizeShowNewImage=function(){_debug("_resizeShowNewImage() called");_setImageDimensions(newImageData.width,newImageData.height,imageContainer.find('img'));loader.hide();imageContainer.animate({"opacity":1},settings.fadeInTime,"linear",function(){_finishTransition();});};_finishTransition=function(){_debug("_finishTransition() called");_preloadNew();_startTimer();}
_startTimer=function(){if(slideshowActive){timerRef=window.setTimeout(function(){$.mySlideshow.next();},settings.delay);}}
_stopTimer=function(){window.clearTimeout(timerRef);}
_getDimensions=function(direction){_debug("_getDimensions("+direction+") called");return{width:images[imgPosition][0].width,height:images[imgPosition][0].height};}
_preloadNew=function(){_debug("_preloadNew() called");var nextPosition=imgPosition+1;if(nextPosition>settings.images.length-1)nextPosition=0;var prevPosition=imgPosition-1;if(prevPosition<0)prevPosition=settings.images.length-1;if(images[nextPosition]==undefined){_debug("Setting image at next: position "+nextPosition);images[nextPosition]=$(new Image());images[nextPosition].attr('src',settings.folder+settings.images[nextPosition]);}
if(images[prevPosition]==undefined){_debug("Setting image at prev: position "+prevPosition);images[prevPosition]=$(new Image());images[prevPosition].attr('src',settings.folder+settings.images[prevPosition]);}}
_setImageDimensions=function(width,height,img){_debug("_setImageDimensions("+width+", "+height+", "+img+") called");var newWidth=0,newHeight=0,marginX=0,marginY=0;if(width/height>maxWidth/maxHeight){newHeight=maxWidth/width*height;newWidth=maxWidth;marginY=Math.abs(maxHeight-newHeight)/2;}
else{newWidth=maxHeight/height*width;newHeight=maxHeight;marginX=Math.abs(maxWidth-newWidth)/2;}
img.css('width',newWidth).css('height',newHeight).css('margin',marginY+'px '+marginX+'px');return{width:newWidth,height:newHeight,marginX:marginX,marginY:marginY};}
$.mySlideshow.play=function(){slideshowActive=true;$.mySlideshow.next();controls.play.hide();controls.pause.show();}
$.mySlideshow.stop=function(){slideshowActive=false;_stopTimer();controls.pause.hide();controls.play.show();}
_debug=function(message){if(settings.debug)
console.debug(message);}
_init();}})(jQuery);

