if(!Array.indexOf){Array.prototype.indexOf=function(obj){for(var i=0;i<this.length;i++){if(this[i]==obj){return i;}}
return-1;}}
if(!String.trim){String.prototype.trim=function(){return this.replace(/^\s*/,"").replace(/\s*$/,"");}}
var ff=(function(){var loaded_css=undefined;var plugins=undefined;var plugins_loads=undefined;var plugins_inits=undefined;function pluginInit(id){var inits;if((inits=plugins_inits.get(id))!==undefined){for(var i=0;i<inits.length;i++){inits[i]();}
plugins_inits.set(id,[]);}}
function initEvents(key){var parts=key.split(".");if(parts.length>1&&parts[0]=="ff"){var path="ff";for(var i=1;i<parts.length;i++){path+="."+parts[i];if(eval(path+' === undefined'))
eval(path+" = {};");if(eval('typeof('+path+')')==="object"&&eval(path+".events === undefined"))
eval('jQuery.extend(true, '+path+', ff.ffEvents());');}}}
var that={"site_path":undefined,"theme":undefined,"language":undefined,"layer":undefined,"phpsession":{"name":undefined,"value":undefined},"struct":undefined,"initFF":function(params){that.site_path=params.site_path;that.theme=params.theme;if(params.site_path.length>0&&params.site_path!='/'){that.page_path=window.location.pathname.substr(params.site_path.length);}else{that.page_path=window.location.pathname;}
that.domain=window.location.hostname;that.language=params.language;that.layer=params.layer;that.phpsession.name=params.phpsession.name;that.phpsession.value=params.phpsession.value;that.struct=params.struct;that.js_path=that.site_path+'/themes/'+that.theme+'/javascript';that.pluginLoad("ff.ffEvent",that.site_path+"/themes/library/ff/ffEvent.js",undefined,false);that.pluginLoad("ff.ffEvents",that.site_path+"/themes/library/ff/ffEvents.js",undefined,false);if(params.libs!==undefined)
params.libs.each(function(key,value){that.pluginLoad(key,that.site_path+value,undefined,false);});},"extend":function(object){jQuery.extend(true,ff,object);},"pluginLoad":function(id,source,callback,async){if(callback!==undefined)
that.pluginAddInitLoad(id,callback);if(plugins.isset(id)===undefined){plugins.set(id,false);var objFF=id.split(".");var strFF='';var objFF_is_loaded=true;for(var x=0;x<objFF.length;x++)
{if(strFF==''){strFF=objFF[x];if(strFF=='jquery'){strFF='jQuery';}
strFF='window'+'["'+strFF+'"]';}else{strFF=strFF+'["'+objFF[x]+'"]';}
try{if(eval(strFF)===undefined){objFF_is_loaded=false;break;}}catch(error){objFF_is_loaded=false;break;}}
if(objFF_is_loaded){if(id==="ff.ffEvents")
ff.extend(that.ffEvents());ff.pluginInitLoad(id);}else{jQuery.ajax({"async":async,"url":source,"dataType":"script","success":function(data){if(id==="ff.ffEvents")
ff.extend(that.ffEvents());jQuery(document).append('<script type="text/javascript">ff.pluginInitLoad("'+id+'");</script>');}});}}},"pluginAddInitLoad":function(id,callback){if(plugins.get(id)!==true){if(plugins_loads.isset(id)===undefined)
plugins_loads.set(id,[]);plugins_loads.get(id).push(callback);}else
callback();},"pluginInitLoad":function(id){if(id!=="ff.ffEvent"&&id!=="ff.ffEvents")
initEvents(id);var loads;if((loads=plugins_loads.get(id))!==undefined){for(var i=0;i<loads.length;i++){loads[i]();}
plugins_loads.set(id,[]);}
pluginInit(id);plugins.set(id,true);},"pluginAddInit":function(id,callback){if(plugins.get(id)!==true){if(plugins_inits.isset(id)===undefined)
plugins_inits.set(id,[]);plugins_inits.get(id).push(callback);}else
callback();},"injectCSS":function(source){if(loaded_css.get(source)!==undefined)
return;loaded_css.set(source)=true;var css=document.createElement('link');css.setAttribute('rel','stylesheet');css.setAttribute('href',source);document.getElementsByTagName('head')[0].appendChild(css);},"addLoadEvent":function(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){if(oldonload){oldonload();}
func();}}},"submitProcessKey":function(e,button){if(null==e)
e=window.event;if(e.keyCode==13){document.getElementById(button).click();return false;}},"clearComponent":function(component){if(ff.struct.get(component)!==undefined){if(ff.struct.get(component).type=="ffGrid")
try{ff.ffPageNavigator.deleteNavigator(component);}catch(e){};ff.struct.get(component).fields.each(function(key,field){ff.doEvent({"event_name":"onClearField","event_params":[component,key,field]});});ff.struct.unset(component);}},"hash":function(){var that={"keys":[],"values":[],"length":0,"set":function(key,value){var index=that.keys.indexOf(key);if(index>-1){that.values[index]=value;return index;}else{that.keys.push(key);that.values.push(value);that.length++;return that.length-1;}},"get":function(key){var index=that.keys.indexOf(key);if(index>-1)
return that.values[index];else
return undefined;},"indexget":function(index){if(index>0&&index<that.length)
return that.values[index];else
return undefined;},"isset":function(key){var index=that.keys.indexOf(key);if(index>-1)
return index;else
return undefined;},"find":function(value,offset){var index=that.values.indexOf.apply(that.values,arguments);if(index>-1){return{"index":index,"key":that.keys[index]};}else{return undefined;}},"keyfind":function(value,key){var index;if(key===undefined)
index=that.values.indexOf(value);else{index=that.keys.indexOf(key);if(index>-1)
index=that.values.indexOf(value,index);else
return undefined;}
if(index>-1){return{"index":index,"key":that.keys[index]};}else{return undefined;}},"unset":function(key){var index=that.keys.indexOf(key);if(index>-1){that.keys.splice(index,1);that.values.splice(index,1);that.length--;return that.length;}else{return undefined;}},"indexunset":function(index){if(index>0&&index<that.length)
return undefined;else{that.keys.splice(index,1);that.values.splice(index,1);that.length--;return that.length;}},"each":function(func){var tmp_keys=that.keys.slice();var tmp_values=that.values.slice();var l=tmp_keys.length;for(var i=0;i<l;i++){func(tmp_keys[i],tmp_values[i],i);}
return l;},"clear":function(){that.keys.length=0;that.values.length=0;that.length=0;}};return that;}};loaded_css=that.hash();plugins=that.hash();plugins_loads=that.hash();plugins_inits=that.hash();return that;})();ff.ffEvent=(function(){var that={"BREAK_NEVER":0,"BREAK_EQUAL":1,"BREAK_NOT_EQUAL":2,"BREAK_CALLBACK":3,"BREAK_DEFAULT":0,"PRIORITY_TOPLEVEL":0,"PRIORITY_HIGH":1,"PRIORITY_NORMAL":2,"PRIORITY_LOW":3,"PRIORITY_FINAL":4,"PRIORITY_DEFAULT":2,"factory":function(params){var instance={"func_name":params.func_name||console.log("unnamed event"),"break_when":params.break_when,"break_value":params.break_value,"additional_data":params.additional_data||[],"checkBreak":function(result){switch(that.break_when){case ff.ffEvent.BREAK_CALLBACK:return that.break_value.apply(this,result);case ff.ffEvent.BREAK_EQUAL:if(result===that.break_value)
return true;break;case ff.ffEvent.BREAK_NOT_EQUAL:if(result!==that.break_value)
return true;break;}
return false;}};return instance;},"getLast":function(results){if(results.length>0)
return results[results.length];else
return undefined;}};return that;})();ff.ffEvents=function(){var that={events:ff.hash(),"addEvent":function(params){var event_name=params.event_name||console.log("event_name required");var func_name=params.func_name||console.log("func_name required");var priority=params.priority===undefined?ff.ffEvent.PRIORITY_DEFAULT:params.priority;var break_when=params.break_when;var break_value=params.break_value;var additional_data=params.additional_data||[];var event=ff.ffEvent.factory({"func_name":func_name,"break_when":break_when,"break_value":break_value,"additional_data":additional_data});if(that.events.isset(event_name)===undefined)
that.events.set(event_name,ff.hash());switch(priority){case ff.ffEvent.PRIORITY_TOPLEVEL:if(that.events.get(event_name).get("toplevel")!==undefined)
console.log("A toplevel event already exists");else
that.events.get(event_name).set("toplevel",event);break;case ff.ffEvent.PRIORITY_FINAL:if(that.events.isset(event_name).get("final")!==undefined)
console.log("A final event already exists");else
that.events.get(event_name).set("final",event);break;default:var queue=that.events.get(event_name).get(priority);if(queue===undefined)
queue=[];queue.push(event);that.events.get(event_name).set(priority,queue);break;}},"doEvent":function(params){var event_name=params.event_name||console.log("event_name required");var event_params=params.event_params||[];var results=[];var tmp_queue=that.events.get(event_name);var event;var tmp_args;if(tmp_queue!==undefined){if(tmp_queue.isset("toplevel")!==undefined){event=tmp_queue.get("toplevel");tmp_args=event_params.slice().concat(event.additional_data.slice());tmp_args.push(undefined);results.push(event.func_name.apply(event,tmp_args));if(event.checkBreak(results[results.length-1]))
return results;}
for(var q=ff.ffEvent.PRIORITY_TOPLEVEL+1;q<ff.ffEvent.PRIORITY_FINAL;q++){if(undefined!==(event=tmp_queue.get(q))){for(var e=0;e<event.length;e++){tmp_args=event_params.slice().concat(event[e].additional_data.slice());tmp_args.push(results[results.length-1]);results.push(event[e].func_name.apply(event[e],tmp_args));if(event[e].checkBreak(results[results.length-1]))
return results;}}}
if(tmp_queue.isset("final")!==undefined){event=tmp_queue.get("final");tmp_args=event_params.slice().concat(event.additional_data.slice());tmp_args.push(results[results.length-1]);results.push(event.func_name.apply(event,tmp_args));if(event.checkBreak(results[results.length-1]))
return results;}}
return results;}};return that;};ff.ffPage=(function(){var that={};return that;})();var jsFuncObserve=new Object();jsFuncObserve.init=function(targetid,reload){if(!reload){for(var func in jsFuncObserve){if(func!="init"&&func!="exec"&&func!="loadContent"&&jQuery.isFunction(eval("jsFuncObserve."+func))){jsFuncObserve.exec(func,targetid);}}}else{setTimeout("jsFuncObserve.init('"+targetid+"', false)",400);}};jsFuncObserve.exec=function(func,targetid){eval("jsFuncObserve."+func+"('"+targetid+"')");};if(navigator.userAgent.indexOf('MSIE 6.0')>-1){ff.pluginLoad("jquery.pngfix","/themes/library/plugins/jquery.pngfix/jquery.pngfix.js",undefined,true);ff.pluginLoad("jquery.pngfix.observe","/themes/library/plugins/jquery.pngfix/jquery.pngfix.observe.js",undefined,true);}
jsFuncObserve.loadContent=function(){jQuery('INPUT.ajaxcontent[type=hidden]').each(function(){var link=jQuery(this).attr("value");var elem=jQuery(this);jQuery.ajax({async:true,type:"GET",url:link.substring(0,link.indexOf("?")),data:link.substring(link.indexOf("?")+1),cache:true,success:function(item){if(typeof jQuery!=undefined){item_id=jQuery(item).closest("div").attr("id");if(item_id=="#")
item_id="";if(item_id!=undefined&&item_id.length){jsFuncObserve.init("#"+item_id,true);}else{jsFuncObserve.init("",true);}
jQuery(elem).after(item);jQuery(elem).next().hide();jQuery(elem).next().fadeIn();jQuery(elem).remove();}}});});}
jQuery(function(){setTimeout("jsFuncObserve.loadContent()",100);jsFuncObserve.init("",false);});if(window["Typekit"]!==undefined){try{Typekit.load();}catch(e){}}
jQuery(function(){jQuery(".dialog-num").hide();jQuery(".green-number").click(function(){jQuery(".dialog-num").toggle();});});var libs=ff.hash();var struct=ff.hash();struct.fields=ff.hash();ff.initFF({"site_path":"","theme":"site","language":"ITA","layer":"gallery","phpsession":{"name":"","value":""},"struct":struct,"libs":libs});
