var jwplayer_zoom = null;
function playerReady(thePlayer) {
	jwplayer_zoom = window.document[thePlayer.id];
	/*setTimeout(function(){
		try{
			jwplayer_zoom.sendEvent('PLAY');
		}catch(e){
			//alert('errore sendEvent: '+e);
		}
	},0.5*1000);*/
}

function stateTracker(obj) {
	/*alert('the playback state is changed from '+obj.oldstate+' to '+obj.newstate);*/
	if (obj.newstate == 'PLAYING') {
		/*alert('play');*/
		var player = document.getElementById('jq_zoom_movie_video');
		var trackstr = player.getAttribute('flashvars');
		trackstr = trackstr.split('/binary/');
		trackstr = trackstr[1].split('&');
		trackstr = trackstr[0];
		/*alert(trackstr);*/
		//pageTracker._trackPageview ('/downloads/binary/'+trackstr);
		urchinTracker ('/downloads/binary/'+trackstr);
		//document.title += '['+'/downloads/binary/'+trackstr+']';
	}
};

function listener_setup(){//setInterval(function(){
	var player = document.getElementById('jq_zoom_movie_video');
	try{						
		if (player!='undefined' && player.addModelListener!='undefined') {
			//clearInterval(G_ATTACH_LISTENER);
			player.addModelListener("state","stateTracker");
			/*alert('test');*/
		}
	}catch(e){
		setTimeout(listener_setup,500);
	};
}

function loadpage(gallery_idx, pagebase, page, galwid) {
	//jQuery('.jq_ajax_load').load('pages/'+pagebase+page+'.html',null,function(){
		jQuery('.jq_ajax_load .jq_page').addClass('jq_page_'+pagebase+page);
		var mygal = jQuery(gallery_idx).find('.jq_gallery');
		mygal.append(jQuery('.jq_ajax_load').html());
		jQuery('.jq_ajax_load').empty();
		mygal.css({width:jQuery('.jq_page').length*galwid});
		mygal.find('.jq_thumb img').css({cursor:'url(img/zoom.cur), pointer'});
	//});
}


function showZoomedOne( source, isVideo, params ) {
	//alert("'DBG::showZoomedOne -> \n"+"source: "+source+"\n"+"isVideo: "+isVideo+"\n"+"params: "+params+"\n");
	//alert("'DBG2::showZoomedOne -> \n"+"source: "+source+"\n"+"isVideo: "+isVideo+"\n"+"params.width: "+params.width+"\n"+"params.height: "+params.height+"\n"+"params.thumbnail: "+params.thumbnail+"\n");
	if ( ! isVideo ) {
		jQuery('.jq_zoom_structure').removeData('video_page');

		if (source!=null) {
			jQuery('.jq_zoom_structure').data('image_source', source);
		}
		else {
			source = jQuery('.jq_zoom_structure').data('image_source');					
		}
	}
	else {
		jQuery('.jq_zoom_structure').removeData('image_source');
		
		if (source!=null) {
			jQuery('.jq_zoom_structure').data('video_page', source);
		}
		else {
			source = jQuery('.jq_zoom_structure').data('video_page');
		}
	}
	//alert(params.thumbnail);
	rememberMe = '';
	if ( isVideo && params.thumbnail!=null) { // questa è follia [di IE8]
		rememberMe = ''+params.thumbnail;
	}
	
	jQuery('.jq_zoom_background').show();

	jQuery('.jq_zoom_structure').css({
		top:			-10000,
		width:			0,
		height:			0,
		overflow:		'hidden'
	});
	jQuery('.jq_zoom_structure').show();
	if ( ! isVideo ) {
		jQuery('.jq_zoom_frame').html(jQuery('<img class="jq_zoom_image" src="'+source+'" style="-ms-interpolation-mode:bicubic;" />'));
		//alert('NotVid '+params.thumbnail);
	}
	else {		
		//jQuery('.jq_zoom_frame').append(jQuery('<div id="jq_zoom_movie" title="'+source+'#'+rememberMe+'"><a href="http://www.macromedia.com/go/getflashplayer">Scarica Adobe Flash player</a> per vedere il filmato</div>'));
		jQuery('.jq_zoom_frame').html(jQuery('<div id="jq_zoom_movie" title="'+source+'#'+rememberMe+'"><a href="http://www.macromedia.com/go/getflashplayer">Scarica Adobe Flash player</a> per vedere il filmato</div>'));
		//alert('Vid '+params.thumbnail);
	}
	setTimeout(function(){
		var wid = 400;
		var hei = 300;
		
		if (params) {
			if (params.width) {
				wid = params.width -0;
			}
			if (params.height) {
				hei = params.height -0;
			}
		}
		
		var img = jQuery('.jq_zoom_image');
		if (img.length > 0) {
			wid = img.width();
			hei = img.height();
		}
		else {
			wid = wid +20;
			hei = hei +20;
			//alert(wid+"\n"+hei);
		}

		var doc_wid = jQuery(document).width();
		var doc_hei = jQuery(document).height();

		jQuery('.jq_zoom_structure').hide();
		jQuery('.jq_zoom_structure').css({
			top:		0,
			width:		doc_wid,
			height:		doc_hei,
			overflow:	'hidden'
		});

		var win_wid = jQuery(window).width();
		var win_hei = jQuery(window).height();

		var shad_wid_perc = (100+(40*100/400))/100;	// 355 = width originale immagine ombra
		var shad_hei_perc = (100+(50*100/400))/100;	// 298 = height originale immagine ombra 

		var pad = 10; /* modificato da "50" il 201008171100 */
		var ar = wid/hei;
		/*######################################################################################################################### BEGIN */
		//var old_wid = wid;	/* fix 201008171100 */
		//var old_hei = hei;	/* fix 201008171100 */
		if ((hei*shad_hei_perc +pad) > win_hei) {
			hei = Math.round((win_hei-pad)/shad_hei_perc);
			wid = Math.round(hei*ar);
		}
		if ((wid*shad_wid_perc +pad) > win_wid) {
			wid = Math.round((win_wid-pad)/shad_wid_perc);
			hei = Math.round(wid/ar);
		}
		/* fix 201008171100 */
		//document.title = wid+"__"+hei; // DEBUG
		/*if (wid < 830 && hei < 580) {			
			wid = old_wid;
			hei = old_hei;document.title += '----'+wid+"__"+hei;
		}*/
		/* fix 201008171100 */
		/*######################################################################################################################### END */
		img.width(wid);
		img.height(hei);

		var main = jQuery('.jq_zoom_main');
		main.css({
			top:		(win_hei-hei)/3 +jQuery(window).scrollTop() -30 /* fix 201008171100 */,
			left:		(win_wid-wid)/2 +jQuery(window).scrollLeft() -60 /* fix 201008171100 */
		});
		
		var heiDiffNoCtrl = 0;
		if (jQuery('.jqw_options').length > 0) {
			var opts = jQuery('.jqw_options').text();
			if (opts.indexOf('nocontrols') >= 0) {
				heiDiffNoCtrl = -34;
			}
		}

		var shadow = jQuery('.jq_zoom_shadow');
		var shad_wid = wid * shad_wid_perc;
		var shad_hei = hei * shad_hei_perc;
		shadow.attr('width', shad_wid*1.06);
		shadow.attr('height',shad_hei*1.08 +heiDiffNoCtrl);

		jQuery('.jq_zoom_frame').css({
			left:		(shad_wid-wid)/2 *1.1,
			top:		(shad_hei-hei)/2 *1.1,
			width:		wid,
			height:		hei +heiDiffNoCtrl,
			padding:	'10px'
		});
		jQuery('.jq_zoom_close').css({
			left:		wid+(shad_wid-wid)/2 -8,
			top:		(shad_hei-hei)/2 -28
		});
		
		jQuery('.jq_zoom_background,.jq_zoom_structure').css({
			width:		'100%',
			height:		jQuery(document).height() +heiDiffNoCtrl
		});
		jQuery('.jq_zoom_structure').show();

		jwplayer_zoom = null;
		if ( isVideo ) {
			setTimeout(function(){
				var spl = '';
				try {
					spl = jQuery('#jq_zoom_movie').attr('title').split('#');
				}
				catch(e) {
					spl = jQuery('.jq_thumb a').attr('title').split('#');
				}
				var movielink = spl[0];
				var thumbnail = spl[1];
				
				var opt_var = '';
				var autoPlay = false;
				var loopPlay = 'none';
				var nocontrols = false;
				if (jQuery('.jqw_options').length > 0) {
					var opts = jQuery('.jqw_options').text();
					if (opts.indexOf('autoplay') >= 0) {
						autoPlay = true;
						opt_var += ' autoplay="autoplay"';
					}
					if (opts.indexOf('loop') >= 0) {
						loopPlay = ' always';
						opt_var += ' loop="loop"';
					}
					if (opts.indexOf('nocontrols') >= 0) {
						nocontrols = true;
					}
				}
				
				var borderit = 10;
				//alert(movielink+'ciao');
				if (movielink.indexOf('.flv')>=0 || movielink.indexOf('.mp4')>=0) {
					/*var flashvars = {
							file: 			movielink,
							image:			thumbnail,
							autostart:		"false",
							controlbar:		"over",
							bufferlength:	"30"
					}
					var params = {
							allowfullscreen:	"true", 
							/*allowscriptaccess:	"always",* /
							wmode:				"transparent"
					}
					var attributes = {
							id:		"jq_zoom_movie",
							name:	"jq_zoom_movie"
					}
					//alert(flashvars+' - '+params+' - '+attributes+' ciao');
					swfobject.embedSWF("/immagini/objects/flvplayer_new.swf", "jq_zoom_movie", wid, hei, "9.0.115", false, flashvars, params, attributes);
					*/					
					var heightAdjust = 0;
					//alert(navigator.userAgent+"\n"+(''+navigator.userAgent).indexOf('Safari')+"\n"+(''+navigator.userAgent).indexOf('Chrome'));
					if ((''+navigator.userAgent).indexOf('Safari')>=0 && (''+navigator.userAgent).indexOf('Chrome')<0) {
						heightAdjust = 20;
					}
					else if ((''+navigator.userAgent).indexOf('Chrome')>=0) {
						heightAdjust = 10;
						if (nocontrols) {
							jQuery('.jq_zoom_frame').append('<div style="position:absolute;bottom:0;left:0;background:white;height:10px;width:99%;overflow:hidden;z-index:999999;">&nbsp;</div>');
						}
					}
					else if ((''+navigator.userAgent).indexOf('MSIE 9')>=0) {
						heightAdjust = 24;						
						if (nocontrols) {
							jQuery('.jq_zoom_frame').append('<div style="position:absolute;bottom:0;left:0;background:white;height:10px;width:99%;overflow:hidden;z-index:999999;">&nbsp;</div>');
						}
					}
					else {//if ((''+navigator.userAgent).indexOf('Firefox')>=0) {
						if (nocontrols) {
							heightAdjust += 24;
						}
					}
/*
					if (nocontrols) {
						heightAdjust += 24;
					}
*/
					var myobj = '<div id="jq_zoom_movie" style="margin-bottom:'+(borderit+heightAdjust)+'px;background:white;"><video id="jq_zoom_movie_video" poster="'+thumbnail+'" src="'+movielink+'" width="'+(wid - borderit)+'" height="'+(hei - borderit - heightAdjust)+'"></video></div>';
					var jwvars = {
						flashplayer:'/hera_off_comm/js/jw5/player.swf',
						skin:'/hera_off_comm/js/jw5/five/five.xml',
						autostart:autoPlay,
						repeat:loopPlay,						
						wmode:'transparent'
					};
					if (nocontrols) {
						jwvars.controlbar = 'none';
					}
					jQuery('#jq_zoom_movie').replaceWith(myobj);
					jQuery('#jq_zoom_movie_video').jwplayer(jwvars);
					setTimeout(listener_setup,2500);
				}
				else if (movielink.indexOf('.swf')>=0) {
					var myobj = '';
					myobj += '<object type="application/x-shockwave-flash" width="'+(wid - borderit)+'" height="'+(hei - borderit)+'" title="'+movielink+'" data="'+movielink+'">';
					myobj += '<param name="movie" value="'+movielink+'" />';
					myobj += '<param name="quality" value="high" />';
					myobj += movielink+'</object>';
					jQuery('#jq_zoom_movie').replaceWith(myobj);
				}
				else {
					var myobj = '';
					myobj += '<div style="padding:5px;background:white;">';
					myobj += '<object type="application/x-shockwave-flash" width="'+(wid - borderit)+'" height="'+(hei - borderit)+'" title="'+movielink+'" data="'+movielink+'">';
					myobj += '<param name="movie" value="'+movielink+'" />';
					myobj += '<param name="quality" value="high" />';
					myobj += '<param name="wmode" value="transparent" />';
					myobj += '<param name="allowFullScreen" value="true" />';
					myobj += '</object>';
					myobj += '</div>';
					jQuery('#jq_zoom_movie').replaceWith(myobj);
				}
			},200);//,1);
		}
	},0.5*1000);
}
jQuery.noConflict();
jQuery(document).ready(function(){	
	if ( ! jQuery('body').data('initialized___gal_fotovideo') ) {
		jQuery('body').data('initialized___gal_fotovideo', 'initialized');
		//jQuery('body').append('<div class="jq_ajax_load"></div>');
			var $blocco_zoom  = '';
			$blocco_zoom += '<div class="jq_zoom_background" style="position:absolute;top:0px; left:0px; background:black;opacity:0.5;filter:alpha(opacity=50); z-index:10001;"></div>';
			$blocco_zoom += '<div class="jq_zoom_structure" style="display:none;position:absolute;top:0px;left:0px; z-index:10002;">';
			$blocco_zoom += '	<div class="jq_zoom_main" style="position:absolute;top:0px;left:0px;">';
			$blocco_zoom += '		<div style="position:relative;">';
			if((''+navigator.userAgent).indexOf('MSIE 6')<0) { // non su IE6
				$blocco_zoom += '			<img class="jq_zoom_shadow" style="position:absolute;top:0px; left:0px; -ms-interpolation-mode:bicubic;" src="/hera_off_comm/immagini/ombra.png" />';
			}
			$blocco_zoom += '			<div class="jq_zoom_frame" style="position:absolute;top:0px; left:0px; background:white; border:2px solid #AEAEAE; overflow:hidden;"></div>';
			if((''+navigator.userAgent).indexOf('MSIE 6')<0) { // non su IE6
				$blocco_zoom += '			<img class="jq_zoom_close" style="position:absolute;top:0px; left:0px; width:66px;height:66px; z-index:10004;" src="/hera_off_comm/immagini/chiudi.png"/>';
			}
			else { // versione chiudi per IE6
				$blocco_zoom += '			<img class="jq_zoom_close" style="position:absolute;top:0px; left:0px; width:66px;height:66px; z-index:10004;" src="/hera_off_comm/immagini/chiudi_ie6.gif"/>';
			}
			$blocco_zoom += '		</div>';
			$blocco_zoom += '	</div>';
			$blocco_zoom += '</div>';
		//?>
		jQuery('body').append($blocco_zoom);
	//				DD_belatedPNG.fix('.jq_zoom_structure img');
	
		
	
		jQuery('.jq_gallery_container').each(function(gallery_idx){
			var gallery_index = 'jq_gallery_index_'+gallery_idx;
			jQuery(this).addClass(gallery_index);
			var gal_params = jQuery(this).find('.jq_gallery_params');
			var galpagebase = gal_params.find('.basepage').text();
			var galpagenum = gal_params.find('.pagenum').text();
			
			var mygal = jQuery(this).find('.jq_gallery');
			var galwid = mygal.width();
	
			mygal.data('page',1);
			mygal.data('pagenum',galpagenum);
			loadpage('.'+gallery_index, galpagebase,1,galwid);
	
			jQuery(this).find('.jq_gallery_prev,.jq_gallery_next').css({cursor:'pointer'});
			jQuery(this).find('.jq_gallery_prev').click(function(){
				var mygal = jQuery(this).closest('.jq_gallery_container').find('.jq_gallery');
				var page = mygal.data('page');
				page--;
				if ( page >= 1 ) {
					mygal.data('page',page);
					if (mygal.find('.jq_page_'+galpagebase+page).length == 0) {
						loadpage('.'+gallery_index, galpagebase,page,galwid);
					}
					mygal.animate({marginLeft:-(page-1)*galwid},{duration:1000});
				}
			});
			jQuery(this).find('.jq_gallery_next').click(function(){
				var mygal = jQuery(this).closest('.jq_gallery_container').find('.jq_gallery');
				var page = mygal.data('page');
				var pagenum = mygal.data('pagenum');
				page++;
				if ( page <= pagenum ) {
					mygal.data('page',page);
					if (mygal.find('.jq_page_'+galpagebase+page).length == 0) {
						loadpage('.'+gallery_index, galpagebase,page,galwid);
					}
					mygal.animate({marginLeft:-(page-1)*galwid},{duration:1000});
				}
			});
		});
	
	
/*
		jQuery(window).resize(function(){
			//if (jQuery('.jq_zoom_structure').data('image_source')) {
			//	showZoomedOne(null);
			//}
			//else if (jQuery('.jq_zoom_structure').data('video_page')) {
			//	showZoomedOne(null,true);
			//}
			alert('DBG::resize');
			closeMediaDialog(); // modificato 201008171106
		});
*/
		/*######################################################################################################################## BEGIN */
		/*GLOBAL_jq_zoom_scroll = null;
		jQuery(window).scroll(function(){		
			clearTimeout(GLOBAL_jq_zoom_scroll);
			GLOBAL_jq_zoom_scroll = setTimeout(function(){						
				var wid = 400;
				var hei = 300;
				var img = jQuery('.jq_zoom_image');
				if (img.length > 0) {
					wid = img.width();
					hei = img.height();
				}
				
				var pad = 10; //50; // modif 201008171130
				var win_wid = jQuery(window).width();
				var win_hei = jQuery(window).height();
				var main = jQuery('.jq_zoom_main');
				main.animate(
					{
						top:	(win_hei-hei)/3 +jQuery(window).scrollTop(),
						left:	(win_wid-wid)/2 +jQuery(window).scrollLeft()
					},
					{
						duration: 250
					}
				);
			}, 250);
		});*/
		/*######################################################################################################################## END */
		jQuery('.jq_thumb a,.jq_thumb area').live('click',function(e){
			var gal_params = jQuery(this).closest('.jq_gallery_container').find('.jq_gallery_params');
			var galpagebase = gal_params.find('.basepage').text();
			if (galpagebase == 'page') {
				//alert('pagebase -> '+jQuery(this).attr('href'));
				//showZoomedOne(jQuery(this).attr('href'));
				showZoomedOne(jQuery(this).attr('title'));
			}
			else if (galpagebase == 'video') { //alert(jQuery(this).attr('title'));
				var spl0 = jQuery(this).attr('title').split('#');
				var spl1 = spl0[1].split('@'); //alert(spl1[1]);
				//var spl1 = jQuery(this).attr('title').split('@');
				var spl2 = spl1[1].split('x');
				//alert('wid:'+spl2[0]+"\nhei:"+spl2[1]);
				//alert('ciao'+jQuery(this).attr('href');
				//alert(jQuery(this).find('img').attr('src'));
				//showZoomedOne(jQuery(this).attr('href'),true,{width:spl2[0],height:spl2[1],thumbnail:jQuery(this).find('img').attr('src')});
				//showZoomedOne(spl0[0],true,{width:spl2[0],height:spl2[1],thumbnail:jQuery(this).find('img').attr('src')});
				
				var heiAdj = 20;
				if ((''+navigator.userAgent).indexOf('Safari')>=0) {
					if ((''+navigator.userAgent).indexOf('Chrome')<0) {
						heiAdj = 16;
					}
					else {
						heiAdj = 6;
					}
				}
				//alert(''+spl0[0]);
				//alert(jQuery(e.target).closest('.jq_thumb').find('.jq_thumb_big').html());
				showZoomedOne(''+spl0[0], true, {'width':spl2[0]-0,'height':( spl2[1]-0 + heiAdj ),'thumbnail':jQuery(e.target).closest('.jq_thumb').find('.jq_thumb_big').html()});
			}
	
			jQuery('.jq_zoom_close').css({cursor:'pointer'});
			jQuery('.jq_zoom_close').click(function(){
				//alert('DBG::click close');
				closeMediaDialog();
			});
			jQuery(document).bind('keypress', function(ev){
				if (ev.keyCode==27) { // ESC
					//alert('DBG::esc close');
					closeMediaDialog();
					return false;
				}
				return true;
			});
	
			return false;
		});
		
	
		
		jQuery(".jq_mp3").each(function(i){
			jQuery(this).attr('id','jq_mp3_'+i);
			var audiolink = jQuery(this).attr('href');					
			var flashvars = {
					mp3: audiolink,
					showtime:1
			}
			var params = {
					wmode:"transparent"
			}
			var attributes = {
					id:'jq_mp3_'+i,
					name:'jq_mp3_'+i
			}
			swfobject.embedSWF("/images/objects/dewplayer.swf", 'jq_mp3_'+i, "200", "20", "9.0.115", false, flashvars, params, attributes);
		});
		
		//window.onerror = function(){return true;}
	}
});

function closeMediaDialog() { //alert('DBG::close');
	jQuery(document).unbind('keypress');
	if (jwplayer_zoom) {
		try{
			jwplayer_zoom.sendEvent('STOP');
		}catch(e){
			//alert('errore sendEvent: '+e);
			jQuery('#jq_zoom_movie_video').remove();
		}
	}
	else if (jQuery('#jq_zoom_movie_not_ie')) {
		jQuery('#jq_zoom_movie_not_ie,#jq_zoom_movie_ie').remove();
	}
	jQuery('.jq_zoom_structure,.jq_zoom_background').hide();
	jQuery('.jq_zoom_structure').removeData('image_source');
	jQuery('.jq_zoom_structure').removeData('video_page');
	jQuery('.jq_zoom_frame').empty();
}
