if(typeof Shadowbox=="undefined")
{
	throw"Unable to load Shadowbox, no base library adapter found."
}(function(){
var version="1.0";


var options={
assetURL:"",
loadingImage:"include/images/lightbox/loading.gif",
animate:true,
animSequence:"wh",
flvPlayer:"flvplayer.swf",
overlayColor:"#000",
overlayOpacity:0.8,
overlayBgImage:"include/images/lightbox/overlay-85.png",
listenOverlay:true,
autoplayMovies:true,
showMovieControls:true,
resizeDuration:0.25,
fadeDuration:0.25,
displayNav:true,
continuous:false,
displayCounter:true,
counterType:"default",
viewportPadding:20,
handleLgImages:"resize",
initialHeight:160,
initialWidth:320,
enableKeys:true,
keysClose:["c","q",27],
keysNext:["n",39],
keysPrev:["p",37],
onOpen:null,
onFinish:null,
onChange:null,
onClose:null,
handleUnsupported:"link",
skipSetup:false,
text:{
	cancel:"Annulla",
	loading:"Caricamento in corso...",
	close:'<div class="chiudi">CHIUDI</div> <img src="include/images/lightbox/close.gif">',
	next:'<span class="shortcut">A</span>vanti',
	prev:'<span class="shortcut">I</span>ndietro',
	errors:{
		single:'You must install the <a href="{0}">{1}</a> browser plugin to view this content.',
		shared:'You must install both the <a href="{0}">{1}</a> and <a href="{2}">{3}</a> browser plugins to view this content.',
		either:'You must install either the <a href="{0}">{1}</a> or the <a href="{2}">{3}</a> browser plugin to view this content.'
	}
},
errors:{
	fla:{
		name:"Flash",
		url:"http://www.adobe.com/products/flashplayer/"
		},
		qt:{
			name:"QuickTime",
			url:"http://www.apple.com/quicktime/download/"
			},
			wmp:{
				name:"Windows Media Player",
				url:"http://www.microsoft.com/windows/windowsmedia/"
				},
				f4m:{
					name:"Flip4Mac",
					url:"http://www.flip4mac.com/wmv_download.htm"
				}
		},
		skin:{
			main:'<div id="shadowbox_overlay"></div><div id="shadowbox_container"><div id="shadowbox"><div id="shadowbox_title"><div id="shadowbox_title_inner"></div></div><div id="shadowbox_body"><div id="shadowbox_body_inner"></div><div id="shadowbox_loading"></div></div><div id="shadowbox_toolbar"><div id="shadowbox_toolbar_inner"></div></div></div></div>',
			loading:'<img src="{0}" alt="{1}" /><span><a href="javascript:Shadowbox.close();">{2}</a></span>',
			counter:'<div id="shadowbox_counter">{0}</div>',
			close:'<div id="shadowbox_nav_close" style="top:0px"><a href="javascript:Shadowbox.close();">{0}</a></div>',
			next:'<div id="shadowbox_nav_next"><a href="javascript:Shadowbox.next();">{0}</a></div>',
			prev:'<div id="shadowbox_nav_previous"><a href="javascript:Shadowbox.previous();">{0}</a></div>'
		},
		ext:{
			img:["png","jpg","jpeg","gif","bmp"],
			qt:["dv","mov","moov","movie","mp4"],
			wmp:["asf","wm","wmv"],
			qtwmp:["avi","mpg","mpeg"],
			iframe:["asp","aspx","cgi","cfm","htm","html","pl","php","php3","php4","php5","phtml","rb","rhtml","shtml","txt","vbs"]
		}
	};
var default_options=null;
var SL=Shadowbox.lib;
var RE={resize:/(img|swf|flv)/,overlay:/(img|iframe|html|inline)/,swf:/\.swf\s*$/i,flv:/\.flv\s*$/i,domain:/:\/\/(.*?)[:\/]/,inline:/#(.+)$/,rel:/^(light|shadow)box/i,gallery:/^(light|shadow)box\[(.*?)\]/i,unsupported:/^unsupported-(\w+)/,param:/\s*([a-z_]*?)\s*=\s*(.+)\s*/,empty:/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i};
var cache=[];
var current_gallery;
var current;
var optimal_height=options.initialHeight;
var optimal_width=options.initialWidth;
var current_height=0;
var current_width=0;
var preloader;
var initialized=false;
var activated=false;
var drag;
var draggable;
var overlay_img_needed;
var ua=navigator.userAgent.toLowerCase();
var isStrict=document.compatMode=="CSS1Compat",isOpera=ua.indexOf("opera")>-1,isIE=ua.indexOf("msie")>-1,isIE7=ua.indexOf("msie 7")>-1,isBorderBox=isIE&&!isStrict,isSafari=(/webkit|khtml/).test(ua),isSafari3=isSafari&&!!(document.evaluate),isGecko=!isSafari&&ua.indexOf("gecko")>-1,isWindows=(ua.indexOf("windows")!=-1||ua.indexOf("win32")!=-1),isMac=(ua.indexOf("macintosh")!=-1||ua.indexOf("mac os x")!=-1),isLinux=(ua.indexOf("linux")!=-1);
var absolute_pos=isIE&&!isIE7;
var plugins=null;
if(navigator.plugins&&navigator.plugins.length){
	var detectPlugin=function(plugin_name)
	{
		var detected=false;
for(var i=0,len=navigator.plugins.length;i<len;++i)
	{
		if(navigator.plugins[i].name.indexOf(plugin_name)>-1)
		{
			detected=true;
			break
		}
	}
		return detected
	};


var f4m=detectPlugin("Flip4Mac");


var plugins={fla:detectPlugin("Shockwave Flash"),qt:detectPlugin("QuickTime"),wmp:!f4m&&detectPlugin("Windows Media"),f4m:f4m}}else{var detectPlugin=function(plugin_name){var detected=false;try{var axo=new ActiveXObject(plugin_name);

if(axo){detected=true}}catch(e){}return detected};


var plugins={fla:detectPlugin("ShockwaveFlash.ShockwaveFlash"),qt:detectPlugin("QuickTime.QuickTime"),wmp:detectPlugin("wmplayer.ocx"),f4m:false}}var apply=function(o,e){for(var p in e){o[p]=e[p]}return o};


var isLink=function(el){return typeof el.tagName=="string"&&(el.tagName.toUpperCase()=="A"||el.tagName.toUpperCase()=="AREA")};


SL.getViewportHeight=function(){var height=window.innerHeight;


var mode=document.compatMode;


if((mode||isIE)&&!isOpera){height=isStrict?document.documentElement.clientHeight:document.body.clientHeight}return height};


SL.getViewportWidth=function(){var width=window.innerWidth;


var mode=document.compatMode;


if(mode||isIE){width=isStrict?document.documentElement.clientWidth:document.body.clientWidth}return width};
SL.getDocumentHeight=function(){var scrollHeight=isStrict?document.documentElement.scrollHeight:document.body.scrollHeight;
return Math.max(scrollHeight,SL.getViewportHeight())};
SL.getDocumentWidth=function(){var scrollWidth=isStrict?document.documentElement.scrollWidth:document.body.scrollWidth;
return Math.max(scrollWidth,SL.getViewportWidth())};
var clearOpacity=function(el){if(isIE){if(typeof el.style.filter=="string"&&(/alpha/i).test(el.style.filter)){el.style.filter=""}}else{el.style.opacity="";el.style["-moz-opacity"]="";el.style["-khtml-opacity"]=""}};
var fadeIn=function(el,endingOpacity,duration,callback){if(options.animate){SL.setStyle(el,"opacity",0);el.style.visibility="visible";SL.animate(el,{opacity:{to:endingOpacity}},duration,function(){if(endingOpacity==1){clearOpacity(el)}if(typeof callback=="function"){callback()}})}else{if(endingOpacity==1){clearOpacity(el)}else{SL.setStyle(el,"opacity",endingOpacity)}el.style.visibility="visible";
if(typeof callback=="function"){callback()}}};
var fadeOut=function(el,duration,callback){var cb=function(){el.style.visibility="hidden";clearOpacity(el);


if(typeof callback=="function"){callback()}};


if(options.animate){SL.animate(el,{opacity:{to:0}},duration,cb)}else{cb()}};


var appendHTML=function(el,html){el=SL.get(el);


if(el.insertAdjacentHTML){el.insertAdjacentHTML("BeforeEnd",html);


return el.lastChild}if(el.lastChild){var range=el.ownerDocument.createRange();


range.setStartAfter(el.lastChild);


var frag=range.createContextualFragment(html);


el.appendChild(frag);


return el.lastChild}else{el.innerHTML=html;


return el.lastChild}};


var overwriteHTML=function(el,html){el=SL.get(el);


el.innerHTML=html;


return el.firstChild};


var getComputedHeight=function(el){var h=Math.max(el.offsetHeight,el.clientHeight);


if(!h){h=parseInt(SL.getStyle(el,"height"),10)||0;


if(!isBorderBox){h+=parseInt(SL.getStyle(el,"padding-top"),10)+parseInt(SL.getStyle(el,"padding-bottom"),10)+parseInt(SL.getStyle(el,"border-top-width"),10)+parseInt(SL.getStyle(el,"border-bottom-width"),10)}}return h};


var getComputedWidth=function(el){var w=Math.max(el.offsetWidth,el.clientWidth);


if(!w){w=parseInt(SL.getStyle(el,"width"),10)||0;


if(!isBorderBox){w+=parseInt(SL.getStyle(el,"padding-left"),10)+parseInt(SL.getStyle(el,"padding-right"),10)+parseInt(SL.getStyle(el,"border-left-width"),10)+parseInt(SL.getStyle(el,"border-right-width"),10)}}return w};


var getPlayerType=function(url){if(RE.img.test(url)){return"img"}var match=url.match(RE.domain);


var this_domain=match?document.domain==match[1]:false;


if(url.indexOf("#")>-1&&this_domain){return"inline"}var q_index=url.indexOf("?");


if(q_index>-1){url=url.substring(0,q_index)}if(RE.swf.test(url)){return plugins.fla?"swf":"unsupported-swf"}if(RE.flv.test(url)){return plugins.fla?"flv":"unsupported-flv"}if(RE.qt.test(url)){return plugins.qt?"qt":"unsupported-qt"}if(RE.wmp.test(url)){if(plugins.wmp){return"wmp"}else{if(plugins.f4m){return"qt"}else{return isMac?(plugins.qt?"unsupported-f4m":"unsupported-qtf4m"):"unsupported-wmp"}}}else{if(RE.qtwmp.test(url)){if(plugins.qt){return"qt"}else{if(plugins.wmp){return"wmp"}else{return isMac?"unsupported-qt":"unsupported-qtwmp"}}}else{if(!this_domain||RE.iframe.test(url)){return"iframe"}}}return"unsupported"};


var handleClick=function(ev){var link;


if(isLink(this)){link=this}else{link=SL.getTarget(ev);


while(!isLink(link)&&link.parentNode){link=link.parentNode}}Shadowbox.open(link);


if(current_gallery.length){SL.preventDefault(ev)}};


var setupGallery=function(obj){var copy=apply({},obj);


if(!obj.gallery)
{
	current_gallery=[copy];
	current=0
}
else
{
	current_gallery=[];
	var index,ci;
	for(var i=0,len=cache.length;i<len;++i)
	{
		ci=cache[i];
		if(ci.gallery)
		{
			if(ci.content==obj.content&&ci.gallery==obj.gallery&&ci.descr==obj.descr)
			{
				index=current_gallery.length
			}
			if(ci.gallery==obj.gallery)
			{
				current_gallery.push(apply({},ci))
			}
		}
	}
	if(index==null)
	{
		current_gallery.unshift(copy);
		index=0
	}
	current=index
}
	var match,r;
	for(var i=0,len=current_gallery.length;i<len;++i)
	{
		r=false;
		if(current_gallery[i].type=="unsupported")
		{
			r=true
		}
		else
		{
			if(match=RE.unsupported.exec(current_gallery[i].type))
			{
				if(options.handleUnsupported=="link")
				{
					current_gallery[i].type="html";		
					var m;
					switch(match[1])
					{
						case"qtwmp":
							m=String.format(options.text.errors.either,options.errors.qt.url,options.errors.qt.name,options.errors.wmp.url,options.errors.wmp.name);
						break;
						case"qtf4m":
							m=String.format(options.text.errors.shared,options.errors.qt.url,options.errors.qt.name,options.errors.f4m.url,options.errors.f4m.name);
						break;
						default:
							if(match[1]=="swf"||match[1]=="flv")
							{
								match[1]="fla"
							}
							m=String.format(options.text.errors.single,options.errors[match[1]].url,options.errors[match[1]].name)
					}
					current_gallery[i]=apply(current_gallery[i],{height:160,width:320,content:'<div class="shadowbox_message">'+m+"</div>"})
				}
				else
				{
					r=true
				}
			}
			else
			{
				if(current_gallery[i].type=="inline")
				{
					var match=RE.inline.exec(current_gallery[i].content);
					if(match)
					{
						var el;	
						if(el=SL.get(match[1]))
						{
							current_gallery[i].content=el.innerHTML
						}else
						{
							throw"No element found with id "+match[1]
						}
					}
					else
					{
						throw"No element id found for inline content"
					}
				}
			}
		}
		if(r)
		{
			current_gallery.splice(i,1);
			if(i<current)
			{
				--current}--i
			}
		}
};
var buildBars=function()
{
	var link=current_gallery[current];
	if(!link)
	{
		return
	}
	var title_i=SL.get("shadowbox_title_inner");
	title_i.innerHTML=(link.descr)?link.descr:"";
	var tool_i=SL.get("shadowbox_toolbar_inner");
	tool_i.innerHTML="";
	if(options.displayNav)
	{
		tool_i.innerHTML=String.format(options.skin.close,options.text.close);
		if(current_gallery.length>1)
		{
			if(options.continuous)
			{
				appendHTML(tool_i,String.format(options.skin.next,options.text.next));
				appendHTML(tool_i,String.format(options.skin.prev,options.text.prev))
			}else
			{
				if((current_gallery.length-1)>current)
				{
					appendHTML(tool_i,String.format(options.skin.next,options.text.next))
				}
				if(current>0)
				{
					appendHTML(tool_i,String.format(options.skin.prev,options.text.prev))
				}
			}
		}
	}
	/* INIZIO MODIFICA */
	else
	{
		SL.setStyle("shadowbox_toolbar_inner","height","0px")
	}
	/* FINE MODIFICA */
	if(current_gallery.length>1&&options.displayCounter)
	{
		var counter="";
		if(options.counterType=="skip")
		{
			for(var i=0,len=current_gallery.length;i<len;++i)
			{
				counter+='<a href="javascript:Shadowbox.change('+i+');"';
				if(i==current)
				{
					counter+=' class="shadowbox_counter_current"'
				}
				counter+=">"+(i+1)+"</a>"
			}
		}else
		{
			counter=(current+1)+" of "+current_gallery.length
	}
	appendHTML(tool_i,String.format(options.skin.counter,counter))
	}
};
var hideBars=function(callback){var title_m=getComputedHeight(SL.get("shadowbox_title"));
var tool_m=0-getComputedHeight(SL.get("shadowbox_toolbar"));
var title_i=SL.get("shadowbox_title_inner");
var tool_i=SL.get("shadowbox_toolbar_inner");
if(options.animate&&callback){SL.animate(title_i,{marginTop:{to:title_m}},0.2);


SL.animate(tool_i,{marginTop:{to:tool_m}},0.2,callback)}else{SL.setStyle(title_i,"marginTop",title_m+"px");


SL.setStyle(tool_i,"marginTop",tool_m+"px")}};


var showBars=function(callback){var title_i=SL.get("shadowbox_title_inner");


if(options.animate){if(title_i.innerHTML!=""){SL.animate(title_i,{marginTop:{to:0}},0.35)}SL.animate(SL.get("shadowbox_toolbar_inner"),{marginTop:{to:0}},0.35,callback)}else{if(title_i.innerHTML!=""){SL.setStyle(title_i,"margin-top","0px")}SL.setStyle(SL.get("shadowbox_toolbar_inner"),"margin-top","0px");


callback()}};


var resetDrag=function(){drag={x:0,y:0,start_x:null,start_y:null}};


var toggleDrag=function(on){if(on){resetDrag();


var styles=["position:absolute","cursor:"+(isGecko?"-moz-grab":"move")];


styles.push(isIE?"background-color:#fff;filter:alpha(opacity=0)":"background-color:transparent");


appendHTML("shadowbox_body_inner",'<div id="shadowbox_drag_layer" style="'+styles.join(";")+'"></div>');


SL.addEvent(SL.get("shadowbox_drag_layer"),"mousedown",listenDrag)}else{var d=SL.get("shadowbox_drag_layer");


if(d){SL.removeEvent(d,"mousedown",listenDrag);


SL.remove(d)}}};


var listenDrag=function(ev){drag.start_x=ev.clientX;


drag.start_y=ev.clientY;


draggable=SL.get("shadowbox_content");


SL.addEvent(document,"mousemove",positionDrag);


SL.addEvent(document,"mouseup",unlistenDrag);


if(isGecko){SL.setStyle(SL.get("shadowbox_drag_layer"),"cursor","-moz-grabbing")}};


var unlistenDrag=function(){SL.removeEvent(document,"mousemove",positionDrag);


SL.removeEvent(document,"mouseup",unlistenDrag);


if(isGecko){SL.setStyle(SL.get("shadowbox_drag_layer"),"cursor","-moz-grab")}};


var positionDrag=function(ev){var move_y=ev.clientY-drag.start_y;


drag.start_y=drag.start_y+move_y;


drag.y=Math.max(Math.min(0,drag.y+move_y),current_height-optimal_height);


SL.setStyle(draggable,"top",drag.y+"px");


var move_x=ev.clientX-drag.start_x;


drag.start_x=drag.start_x+move_x;


drag.x=Math.max(Math.min(0,drag.x+move_x),current_width-optimal_width);


SL.setStyle(draggable,"left",drag.x+"px")};


var loadContent=function(){var obj=current_gallery[current];


if(!obj){return }buildBars();


switch(obj.type){case"img":preloader=new Image();


preloader.onload=function(){var h=obj.height?parseInt(obj.height,10):preloader.height;


var w=obj.width?parseInt(obj.width,10):preloader.width;


resizeContent(h,w,function(dims){showBars(function(){setContent({tag:"img",height:dims.i_height,width:dims.i_width,src:obj.content,style:"position:absolute"});


if(dims.enableDrag&&options.handleLgImages=="drag"){toggleDrag(true);


SL.setStyle(SL.get("shadowbox_drag_layer"),{height:dims.i_height+"px",width:dims.i_width+"px"})}finishContent()})});


preloader.onload=function(){}};


preloader.src=obj.content;


break;


case"swf":case"flv":case"qt":case"wmp":var markup=Shadowbox.movieMarkup(obj);


resizeContent(markup.height,markup.width,function(){showBars(function(){setContent(markup);


finishContent()})});


break;


case"iframe":var h=obj.height?parseInt(obj.height,10):SL.getViewportHeight();


var w=obj.width?parseInt(obj.width,10):SL.getViewportWidth();


var content={tag:"iframe",name:"shadowbox_content",height:"100%",width:"100%",frameborder:"0",marginwidth:"0",marginheight:"0",scrolling:"auto"};


resizeContent(h,w,function(dims){showBars(function(){setContent(content);


var win=(isIE)?SL.get("shadowbox_content").contentWindow:window.frames["shadowbox_content"];


win.location=obj.content;


finishContent()})});


break;


case"html":case"inline":var h=obj.height?parseInt(obj.height,10):SL.getViewportHeight();


var w=obj.width?parseInt(obj.width,10):SL.getViewportWidth();


var content={tag:"div",cls:"html",html:obj.content};


resizeContent(h,w,function(){showBars(function(){setContent(content);


finishContent()})});


break;


default:throw"Shadowbox cannot open content of type "+obj.type}if(current_gallery.length>0){var next=current_gallery[current+1];


if(!next){next=current_gallery[0]}if(next.type=="img"){var preload_next=new Image();


preload_next.src=next.href}var prev=current_gallery[current-1];


if(!prev){prev=current_gallery[current_gallery.length-1]}if(prev.type=="img"){var preload_prev=new Image();


preload_prev.src=prev.href}}};


var setContent=function(obj){var id="shadowbox_content";


var content=SL.get(id);


if(content){switch(content.tagName.toUpperCase()){case"OBJECT":var link=current_gallery[(obj?current-1:current)];


if(link.type=="wmp"&&isIE){try{shadowbox_content.controls.stop();


shadowbox_content.URL="non-existent.wmv";


window.shadowbox_content=function(){}}catch(e){}}else{if(link.type=="qt"&&isSafari){try{document.shadowbox_content.Stop()}catch(e){}content.innerHTML=""}}setTimeout(function(){SL.remove(content)},10);


break;


case"IFRAME":SL.remove(content);


if(isGecko){delete window.frames[id]}break;


default:SL.remove(content)}}if(obj){if(!obj.id){obj.id=id}return appendHTML("shadowbox_body_inner",Shadowbox.createHTML(obj))}return null};


var finishContent=function(){var obj=current_gallery[current];


if(!obj){return }hideLoading(function(){listenKeyboard(true);


if(options.onFinish&&typeof options.onFinish=="function"){options.onFinish(obj)}})};


var resizeContent=function(height,width,callback){optimal_height=height;


optimal_width=width;


var resizable=RE.resize.test(current_gallery[current].type);


var dims=getDimensions(optimal_height,optimal_width,resizable);


if(callback){var cb=function(){callback(dims)};


switch(options.animSequence){case"hw":adjustHeight(dims.height,dims.top,true,function(){adjustWidth(dims.width,true,cb)});


break;


case"wh":adjustWidth(dims.width,true,function(){adjustHeight(dims.height,dims.top,true,cb)});


break;


default:adjustWidth(dims.width,true);


adjustHeight(dims.height,dims.top,true,cb)}}else{adjustWidth(dims.width,false);


adjustHeight(dims.height,dims.top,false);


if(options.handleLgImages=="resize"&&resizable){var content=SL.get("shadowbox_content");


if(content){content.height=dims.i_height;


content.width=dims.i_width}}}};


var getDimensions=function(o_height,o_width,resizable){if(typeof resizable=="undefined"){resizable=false}var height=o_height=parseInt(o_height);


var width=o_width=parseInt(o_width);


var shadowbox_b=SL.get("shadowbox_body");


var view_height=SL.getViewportHeight();


var extra_height=parseInt(SL.getStyle(shadowbox_b,"border-top-width"),10)+parseInt(SL.getStyle(shadowbox_b,"border-bottom-width"),10)+parseInt(SL.getStyle(shadowbox_b,"margin-top"),10)+parseInt(SL.getStyle(shadowbox_b,"margin-bottom"),10)+getComputedHeight(SL.get("shadowbox_title"))+getComputedHeight(SL.get("shadowbox_toolbar"))+(2*options.viewportPadding);


if((height+extra_height)>=view_height){height=view_height-extra_height}var view_width=SL.getViewportWidth();


var extra_body_width=parseInt(SL.getStyle(shadowbox_b,"border-left-width"),10)+parseInt(SL.getStyle(shadowbox_b,"border-right-width"),10)+parseInt(SL.getStyle(shadowbox_b,"margin-left"),10)+parseInt(SL.getStyle(shadowbox_b,"margin-right"),10);


var extra_width=extra_body_width+(2*options.viewportPadding);


if((width+extra_width)>=view_width){width=view_width-extra_width}var enableDrag=false;


var i_height=o_height;


var i_width=o_width;


var handle=options.handleLgImages;


if(resizable&&(handle=="resize"||handle=="drag")){var change_h=(o_height-height)/o_height;


var change_w=(o_width-width)/o_width;


if(handle=="resize"){if(change_h>change_w){width=Math.round((o_width/o_height)*height)}else{if(change_w>change_h){height=Math.round((o_height/o_width)*width)}}i_width=width;


i_height=height}else{var link=current_gallery[current];


if(link){enableDrag=link.type=="img"&&(change_h>0||change_w>0)}}}return{height:height,width:width+extra_body_width,i_height:i_height,i_width:i_width,top:((view_height-(height+extra_height))/2)+options.viewportPadding,enableDrag:enableDrag}};


var centerVertically=function(){var shadowbox=SL.get("shadowbox");


var scroll=document.documentElement.scrollTop;


var s_top=scroll+Math.round((SL.getViewportHeight()-(shadowbox.offsetHeight||0))/2);


SL.setStyle(shadowbox,"top",s_top+"px")};


var adjustHeight=function(height,top,animate,callback){height=parseInt(height);


current_height=height;


var sbi=SL.get("shadowbox_body_inner");


if(animate&&options.animate){SL.animate(sbi,{height:{to:height}},options.resizeDuration,callback)}else{SL.setStyle(sbi,"height",height+"px");


if(typeof callback=="function"){callback()}}if(absolute_pos){centerVertically();


SL.addEvent(window,"scroll",centerVertically);


top+=document.documentElement.scrollTop}var shadowbox=SL.get("shadowbox");


if(animate&&options.animate){SL.animate(shadowbox,{top:{to:top}},options.resizeDuration)}else{SL.setStyle(shadowbox,"top",top+"px")}};


var adjustWidth=function(width,animate,callback){width=parseInt(width);


current_width=width;


var shadowbox=SL.get("shadowbox");


if(animate&&options.animate){SL.animate(shadowbox,{width:{to:width}},options.resizeDuration,callback)}else{SL.setStyle(shadowbox,"width",width+"px");


if(typeof callback=="function"){callback()}}};


var listenKeyboard=function(on){if(!options.enableKeys){return }if(on){document.onkeydown=handleKey}else{document.onkeydown=""}};


var assertKey=function(valid,key,code){return(valid.indexOf(key)!=-1||valid.indexOf(code)!=-1)};


var handleKey=function(e){var code=e?e.which:event.keyCode;


var key=String.fromCharCode(code).toLowerCase();


if(assertKey(options.keysClose,key,code)){Shadowbox.close()}else{if(assertKey(options.keysPrev,key,code)){Shadowbox.previous()}else{if(assertKey(options.keysNext,key,code)){Shadowbox.next()}}}};


var toggleTroubleElements=function(on){var vis=(on?"visible":"hidden");


var selects=document.getElementsByTagName("select");


for(i=0,len=selects.length;


i<len;


++i){selects[i].style.visibility=vis}var objects=document.getElementsByTagName("object");


for(i=0,len=objects.length;


i<len;


++i){objects[i].style.visibility=vis}var embeds=document.getElementsByTagName("embed");


for(i=0,len=embeds.length;


i<len;


++i){embeds[i].style.visibility=vis}};


var showLoading=function(){var loading=SL.get("shadowbox_loading");


overwriteHTML(loading,String.format(options.skin.loading,options.assetURL+options.loadingImage,options.text.loading,options.text.cancel));


loading.style.visibility="visible"};


var hideLoading=function(callback){var t=current_gallery[current].type;


var anim=(t=="img"||t=="html");


var loading=SL.get("shadowbox_loading");


if(anim){fadeOut(loading,0.35,callback)}else{loading.style.visibility="hidden";


callback()}};


var resizeOverlay=function(){var overlay=SL.get("shadowbox_overlay");


SL.setStyle(overlay,{height:"100%",width:"100%"});


SL.setStyle(overlay,"height",SL.getDocumentHeight()+"px");


if(!isSafari3){SL.setStyle(overlay,"width",SL.getDocumentWidth()+"px")}};


var checkOverlayImgNeeded=function(){if(!(isGecko&&isMac)){return false}for(var i=0,len=current_gallery.length;


i<len;


++i){if(!RE.overlay.exec(current_gallery[i].type)){return true}}return false};


var toggleOverlay=function(callback){var overlay=SL.get("shadowbox_overlay");


if(overlay_img_needed==null){overlay_img_needed=checkOverlayImgNeeded()}if(callback){resizeOverlay();


if(overlay_img_needed){SL.setStyle(overlay,{visibility:"visible",backgroundColor:"transparent",backgroundImage:"url("+options.assetURL+options.overlayBgImage+")",backgroundRepeat:"repeat",opacity:1});


callback()}else{SL.setStyle(overlay,{visibility:"visible",backgroundColor:options.overlayColor,backgroundImage:"none"});


fadeIn(overlay,options.overlayOpacity,options.fadeDuration,callback)}}else{if(overlay_img_needed){SL.setStyle(overlay,"visibility","hidden")}else{fadeOut(overlay,options.fadeDuration)}overlay_img_needed=null}};


Shadowbox.init=function(opts){if(initialized){return }options=apply(options,opts||{});


appendHTML(document.body,options.skin.main);


RE.img=new RegExp(".("+options.ext.img.join("|")+")s*$","i");


RE.qt=new RegExp(".("+options.ext.qt.join("|")+")s*$","i");


RE.wmp=new RegExp(".("+options.ext.wmp.join("|")+")s*$","i");


RE.qtwmp=new RegExp(".("+options.ext.qtwmp.join("|")+")s*$","i");


RE.iframe=new RegExp(".("+options.ext.iframe.join("|")+")s*$","i");


var id=null;


var resize=function(){clearInterval(id);


id=null;


resizeOverlay();


resizeContent(optimal_height,optimal_width)};


SL.addEvent(window,"resize",function(){if(activated){if(id){clearInterval(id);


id=null}if(!id){id=setInterval(resize,50)}}});


if(options.listenOverlay){SL.addEvent(SL.get("shadowbox_overlay"),"click",Shadowbox.close)}if(absolute_pos){SL.setStyle(SL.get("shadowbox_container"),"position","absolute");


SL.setStyle("shadowbox_body","zoom",1);


SL.addEvent(SL.get("shadowbox_container"),"click",function(e){var target=SL.getTarget(e);


if(target.id&&target.id=="shadowbox_container"){Shadowbox.close()}})}if(!options.skipSetup){Shadowbox.setup()}initialized=true};


Shadowbox.setup=function(links,opts){if(!links){var links=[];


var a=document.getElementsByTagName("a"),rel;


for(var i=0,len=a.length;


i<len;


++i){rel=a[i].getAttribute("rel");


if(rel&&RE.rel.test(rel)){links[links.length]=a[i]}}}else{if(!links.length){links=[links]}}var link;


for(var i=0,len=links.length;


i<len;


++i){link=links[i];


if(typeof link.shadowboxCacheKey=="undefined"){link.shadowboxCacheKey=cache.length;


SL.addEvent(link,"click",handleClick)}cache[link.shadowboxCacheKey]=this.buildCacheObj(link,opts)}};


Shadowbox.buildCacheObj=function(link,opts){var href=link.href;


var o={el:link,descr:link.getAttribute("descr"),type:getPlayerType(href),options:apply({},opts||{}),content:href};


var opt,l_opts=["descr","type","height","width","gallery"];


for(var i=0,len=l_opts.length;


i<len;


++i){opt=l_opts[i];


if(typeof o.options[opt]!="undefined"){o[opt]=o.options[opt];


delete o.options[opt]}}var rel=link.getAttribute("rel");


if(rel){var match=rel.match(RE.gallery);


if(match){o.gallery=escape(match[2])}var params=rel.split(";");


for(var i=0,len=params.length;i<len;++i){match=params[i].match(RE.param);


if(match){if(match[1]=="options"){eval("o.options = apply(o.options, "+match[2]+")")}else{o[match[1]]=match[2]}}}}return o};


Shadowbox.applyOptions=function(opts){if(opts){default_options=apply({},options);


options=apply(options,opts)}};


Shadowbox.revertOptions=function(){if(default_options){options=default_options;


default_options=null}};


Shadowbox.open=function(obj,opts){if(activated){return }activated=true;


if(isLink(obj)){if(typeof obj.shadowboxCacheKey=="undefined"||typeof cache[obj.shadowboxCacheKey]=="undefined"){obj=this.buildCacheObj(obj,opts)}else{obj=cache[obj.shadowboxCacheKey]}}this.revertOptions();


if(obj.options||opts){this.applyOptions(apply(apply({},obj.options||{}),opts||{}))}setupGallery(obj);


if(current_gallery.length){if(options.onOpen&&typeof options.onOpen=="function"){options.onOpen(obj)}SL.setStyle(SL.get("shadowbox"),"display","block");


toggleTroubleElements(false);


var dims=getDimensions(options.initialHeight,options.initialWidth);


adjustHeight(dims.height,dims.top);


adjustWidth(dims.width);


hideBars(false);


toggleOverlay(function(){SL.setStyle(SL.get("shadowbox"),"visibility","visible");


showLoading();


loadContent()})}};


Shadowbox.change=function(num){if(!current_gallery){return }if(!current_gallery[num]){if(!options.continuous){return }else{num=(num<0)?(current_gallery.length-1):0}}current=num;


toggleDrag(false);


setContent(null);


listenKeyboard(false);


if(options.onChange&&typeof options.onChange=="function"){options.onChange(current_gallery[current])}showLoading();


hideBars(loadContent)};


Shadowbox.next=function(){return this.change(current+1)};


Shadowbox.previous=function(){return this.change(current-1)};


Shadowbox.close=function(){if(!activated){return }listenKeyboard(false);


SL.setStyle(SL.get("shadowbox"),{display:"none",visibility:"hidden"});


if(absolute_pos){SL.removeEvent(window,"scroll",centerVertically)}toggleDrag(false);


setContent(null);


if(preloader){preloader.onload=function(){};


preloader=null}toggleOverlay(false);


toggleTroubleElements(true);


if(options.onClose&&typeof options.onClose=="function"){options.onClose(current_gallery[current])}activated=false};


Shadowbox.clearCache=function(){for(var i=0,len=cache.length;


i<len;


++i){if(cache[i].el){SL.removeEvent(cache[i].el,"click",handleClick);


delete cache[i].shadowboxCacheKey}}cache=[]};


Shadowbox.movieMarkup=function(obj){var h=obj.height?parseInt(obj.height,10):300;


var w=obj.width?parseInt(obj.width,10):300;


var autoplay=options.autoplayMovies;


var controls=options.showMovieControls;


if(obj.options){if(obj.options.autoplayMovies!=null){autoplay=obj.options.autoplayMovies}if(obj.options.showMovieControls!=null){controls=obj.options.showMovieControls}}var markup={tag:"object",name:"shadowbox_content"};


switch(obj.type){case"swf":var dims=getDimensions(h,w,true);


h=dims.height;


w=dims.width;


markup.type="application/x-shockwave-flash";


markup.data=obj.content;


markup.children=[{tag:"param",name:"movie",value:obj.content}];


break;


case"flv":autoplay=autoplay?"true":"false";


var showicons="false";


var a=h/w;


if(controls){showicons="true";


h+=20}var dims=getDimensions(h,h/a,true);


h=dims.height;


w=(h-(controls?20:0))/a;


var flashvars=["file="+obj.content,"height="+h,"width="+w,"autostart="+autoplay,"displayheight="+(h-(controls?20:0)),"showicons="+showicons,"backcolor=0x000000&amp;frontcolor=0xCCCCCC&amp;lightcolor=0x557722"];


markup.type="application/x-shockwave-flash";


markup.data=options.assetURL+options.flvPlayer;


markup.children=[{tag:"param",name:"movie",value:options.assetURL+options.flvPlayer},{tag:"param",name:"flashvars",value:flashvars.join("&amp;")},{tag:"param",name:"allowfullscreen",value:"true"}];


break;


case"qt":autoplay=autoplay?"true":"false";


if(controls){controls="true";


h+=16}else{controls="false"}markup.children=[{tag:"param",name:"src",value:obj.content},{tag:"param",name:"scale",value:"aspect"},{tag:"param",name:"controller",value:controls},{tag:"param",name:"autoplay",value:autoplay}];


if(isIE){markup.classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B";


markup.codebase="http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"}else{markup.type="video/quicktime";


markup.data=obj.content}break;


case"wmp":autoplay=autoplay?1:0;


markup.children=[{tag:"param",name:"autostart",value:autoplay}];


if(isIE){if(controls){controls="full";


h+=70}else{controls="none"}markup.classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6";


markup.children[markup.children.length]={tag:"param",name:"url",value:obj.content};


markup.children[markup.children.length]={tag:"param",name:"uimode",value:controls}}else{if(controls){controls=1;


h+=45}else{controls=0}markup.type="video/x-ms-wmv";


markup.data=obj.content;


markup.children[markup.children.length]={tag:"param",name:"showcontrols",value:controls}}break}markup.height=h;


markup.width=w;


return markup};


Shadowbox.createHTML=function(obj){var html="<"+obj.tag;


for(var attr in obj){if(attr=="tag"||attr=="html"||attr=="children"){continue}if(attr=="cls"){html+=' class="'+obj["cls"]+'"'}else{html+=" "+attr+'="'+obj[attr]+'"'}}if(RE.empty.test(obj.tag)){html+="/>\n"}else{html+=">\n";


var cn=obj.children;


if(cn){for(var i=0,len=cn.length;i<len;++i){html+=this.createHTML(cn[i])}}if(obj.html){html+=obj.html}html+="</"+obj.tag+">\n"}return html};


Shadowbox.getPlugins=function(){return plugins};


Shadowbox.getOptions=function(){return options};


Shadowbox.getCurrent=function(){return current_gallery[current]};


Shadowbox.getVersion=function(){return version}})();


Array.prototype.indexOf=Array.prototype.indexOf||function(C){for(var B=0,A=this.length;


B<A;


++B){if(this[B]==C){return B}}return -1};


String.format=String.format||function(B){var A=Array.prototype.slice.call(arguments,1);


return B.replace(/\{(\d+)\}/g,function(C,D){return A[D]})}