// JavaScript Document

<!--
var scrollVarious;
var classWorks = new Class({
	Implements: [Chain, Options, Events],
	options: {
		objectParent: undefined,
		objectMove: undefined,
		objectClickEvent: undefined,
		objectSlider: undefined,
		objectShowSpot: undefined,
		objectListLink: undefined
	},

	initialize: function(options){
		this.setOptions(options);
		this.status = 'close';
		this.idParent = this.options.objectParent.get('id');
		this.scrollbarListLink;
		
		this.sectionContent = this.options.objectMove.getElement('.works_content');
		this.sectionContent.hide();
		
		this.elLoading = this.sectionContent.getElement('.loading');
		
		this.backbutton = $('btn_back');
		
		this.objectLnkSlide;
		this.objectLnkSlide = new Fx.Slide(this.options.objectSlider, {mode: 'horizontal'}).hide();
		
		this.options.objectSlider.getElements('a').each(function(item, index){
			item.addEvent('click', function() {
				this.getContentWorks(item.get('id'));
				if(item.get('id') == 'spotVarious') {
					this.setTextSlider();
				}
			}.bind(this));
		}.bind(this));
		
		this.boxShowSpot;
		this.options.objectShowSpot.hide();

		this.idBtnSpotSectionActive ;
		this.spotContentLinkSlider;
		this.spotContentLinkSlider = new Fx.Slide(this.options.objectListLink, {
			mode: 'vertical',
			duration: 500
		});
		
		$('worksScrollarea').fade('out');

		this.options.objectClickEvent.addEvent('click', function() {this.start()}.bind(this));
	},

	start: function() {
		if(this.status == 'open')  {
		}
		else {
			this.openlink();
		}
	},

	openlink: function() {
		this.status = 'open';
		
		$('lnk_home').removeEvents('click');
		$('lnk_home').addEvent('click', function() {this.closelink()}.bind(this));
		$('lnk_home').show();
		
		this.backbutton.removeEvents('click');
		this.backbutton.addEvent('click', function() {this.closelink()}.bind(this));
		
		$('box_button_pages').getElements('li[id^=page_]').each(function(item, index){
			if(item.get('id') != this.idParent) item.fade('out');
		}, this);
		
		var x = new Chain();

		var moveOblo = function(xChain) {
			new Fx.Move(this.options.objectMove, {
				relativeTo: $('wall_row_2'),
				position: 'upperLeft',
				offset: {x: 25, y: 40},
				duration: '1000', 
				transition: 'cubic:out',
				onComplete: function() {
					xChain.callChain();
				}
			}).start();
			
		}.bind(this, x);
		
		var showElements = function() {
			this.options.objectMove.setStyles({
				width: 745,
				height: 345
			});
			
			this.sectionContent.show();
			this.options.objectShowSpot.show();
			this.objectLnkSlide.slideIn();
			this.backbutton.show();
			
		}.bind(this);

		x.chain(moveOblo);
		x.chain(showElements);
		x.callChain();
	},

	closelink: function() {
		this.status = 'close';
		this.reset();
		
		var x = new Chain();
		
		var closeSlider = function(xChain){ 
			if($(this.options.objectSlider)) 
				new Fx.Slide(this.options.objectSlider, {
					mode: 'horizontal',
					onComplete: function() {
						xChain.callChain();
					}
				}).slideOut();
			else xChain.callChain();
		}.bind(this, x);

		var moveOblo = function(xChain){
			this.options.objectMove.setStyles({
				width: this.options.objectParent.getStyle('width'),
				height: this.options.objectParent.getStyle('height')
			});
			
			this.options.objectShowSpot.hide();
			this.sectionContent.hide();
			this.backbutton.hide();
			
			new Fx.Move(this.options.objectMove, {
				relativeTo: this.options.objectParent,
				duration: '1000', 
				position: 'upperLeft',
				offset: {x: 0, y: 0},
				transition: 'cubic:out',
				onComplete: function() {
					xChain.callChain();
				}
			}).start();
		
		}.bind(this, x);
		
		var returnToInitial = function(){
			$('box_button_pages').getElements('li[id^=page_]').each(function(item, index){
				if(item.get('id') != this.idParent) item.fade('in');
			}, this);
			
			$('lnk_home').hide();
		}.bind(this);
		
		x.chain(closeSlider);
		x.chain(moveOblo);
		x.chain(returnToInitial);
		x.callChain();
	},
	
	getContentWorks: function(cnt) {
		var x = new Chain();

		this.options.objectSlider.getElements('a').each(function(item, index){
			item.addClass('selected');
		}.bind(this));

		var changeBackgroundOblo = function(xChain){ 
			if(this.idBtnSpotSectionActive ) {
				$(this.idBtnSpotSectionActive ).setStyle('background-image', 'url(images/tombo_empty_small_off.gif)');
				new Fx.Tween(this.idBtnSpotSectionActive , {
					property: 'opacity', 
					duration: 200
				}).start(0.5);
			}
			else {
				this.options.objectSlider.getElements('a').each(function(item, index){
					if(cnt != item.get('id')) {
						item.setStyle('background-image', 'url(images/tombo_empty_small_off.gif)');
						new Fx.Tween(item, {
							property: 'opacity', 
							duration: 200
						}).start(0.5);
					}
				});
			}
		
			this.idBtnSpotSectionActive = cnt;
			
			$(cnt).set('tween', {duration: 400});

			//$(cnt).setStyle('background-image', 'url(images/tombo_empty_small_on.gif)');
			new Fx.Tween($(cnt), {
				property: 'background-image'
			}).start('url(images/tombo_empty_small_on.gif)');
			
			new Fx.Tween($(cnt), {
				property: 'opacity',
				onComplete: function() {
					xChain.callChain();
				}
			}).start(1);
		}.bind(this, x);
	
		var resetElements = function(xChain){
			$('works_spot').empty();
			
			this.spotContentLinkSlider.slideOut();
			
			new Fx.Tween($('worksScrollarea'), {
				property: 'opacity', 
				duration: 400,
				onComplete: function() {
					xChain.callChain();
				}
			}).start(0);
		}.bind(this, x);
	
		var doRequest = function(){
			if(this.scrollbarListLink) this.scrollbarListLink.goToTop();
			
			var myRequest = new Request ({
				url: 'getContent.php', 
				method: 'post',
				onRequest: function() {
					this.elLoading.show();
				}.bind(this),
				onComplete: function() {
					this.elLoading.hide();
				}.bind(this),
				onFailure: function() {
					//setError('Caricamento dei dati fallito.');
				},
				onSuccess: function(responseHTML, responseXML) {
					if(responseHTML != "") {
						responseHTML = responseHTML.replace('<![CDATA[', '');
						responseHTML = responseHTML.replace(']]>', '');
						
						this.options.objectListLink.set('html', responseHTML );
						
						if(this.options.objectListLink.getElements('.spotItem').length > 8) {
							var numItems = this.options.objectListLink.getElements('.spotItem').length;
							var heightSingleItem = (this.options.objectListLink.getElements('.spotItem'))[0].getStyle('height').toInt();
							var heightList = numItems * heightSingleItem;
							
							$('worksListlink').setStyle('height', heightList +'px');
							
							this.scrollbarListLink = new ScrollBar($('worksVlist'), $('worksScrollBarContainer'), $('worksScrollKnob'), {
								mode: 'vertical',
								steps: 1000 - (1000-(heightList / 2)),
								offset: -2
							});
							
							$('worksScrollarea').fade('in');
						}
						
						if(cnt == 'spotvarious')  {
							this.options.objectListLink.getElements('a.variousItem').each(function(item, index) {
								item.addEvent('click', function() {
									this.openTextVarious(item);
								}.bind(this));
							}.bind(this));
						}

						(
							function(){ 
									this.spotContentLinkSlider.slideIn();
							}.bind(this)
						).delay(500);
						
						this.options.objectListLink.getElements('.spotItem').each(function(item, index){
							item.addEvent('click', function() {
								if(this.options.objectListLink.getElement('a.selected'))
									this.options.objectListLink.getElement('a.selected').removeClass('selected');
								item.addClass('selected');
							}.bind(this));
						}.bind(this));
					}
					
				}.bind(this)
			}).send('cnt='+ cnt);
			
		}.bind(this);
	
	
		x.chain(changeBackgroundOblo);
		x.chain(resetElements);
		x.chain(doRequest);
		x.callChain();
	},
	
	openTextVarious: function(el) {
		this.backbutton.removeEvents('click');
		this.backbutton.addEvent('click', function() {this.closeTextVarious(el)}.bind(this));
		
		var elParent = el.getParent();
		
		this.options.objectListLink.getElements('.spotItem').each(function(item, index) {
			if(item.get('id') != elParent.get('id')) item.setStyle('display', 'none'); 
		})
		
		var cntName = el.get('fl');
		var title = el.get('text');
		var margTop = el.get('imgMargTop');
	
		this.options.objectShowSpot.removeClass('works_player');
		this.options.objectShowSpot.removeClass('works_radio_player');
		this.options.objectShowSpot.empty();
		var aHref = new Element('a', {
			'href': 'javascript:openSlimBox(\'content/spot/various/'+ cntName+'_b.jpg\', \''+ title +'\')'
		});
		var img = new Element('img', {
			'class' : 'hide',
			'src': 'content/spot/various/'+ cntName+'.jpg',
			'onclick': 'openSlimBox(\'content/spot/various/'+ cntName+'_b.jpg\', \''+ title +'\')',
			'title': title,
			'style': 'margin-top:'+ margTop +'px'
		});
		
		aHref.grab(img);
		this.options.objectShowSpot.grab(aHref);
		img.removeClass('hide');
		
		elParent.getElement('.variousText').removeClass('hide');
		
		$('worksScrollarea').fade('out');
	},
	
	closeTextVarious: function(el) {
		this.backbutton.removeEvents('click');
		this.backbutton.addEvent('click', function() {this.closelink()}.bind(this));

		var elParent = el.getParent();
		
		elParent.getElement('.variousText').removeClass('hide');
	
		this.options.objectShowSpot.empty();
		elParent.getElement('.variousText').addClass('hide');
		
		this.options.objectListLink.getElements('.spotItem').each(function(item, index) {
			if(item.get('id') != elParent.get('id')) item.setStyle('display', 'block'); 
		})
		
		if(this.options.objectListLink.getElements('.spotItem').length > 8) $('worksScrollarea').fade('in');
		
	},
	
	
	
	reset: function() {
		//$('works_list_sections')
		this.idBtnSpotSectionActive = null;
		this.options.objectSlider.getElements('a').each(function(item, index){
			item.setStyle('background-image', 'url(images/tombo_empty_small_off.gif)');
			new Fx.Tween(item, {property: 'opacity'}).start(1);
		});
		
		//$('works_spot')
		this.options.objectShowSpot.empty();//.set('html', '');
		this.options.objectShowSpot.hide();
		this.spotContentLinkSlider.slideOut();
		
		new Fx.Tween($('worksScrollarea'), {
			property: 'opacity', 
			duration: 700
		}).start(0);
		
	}

});


	
function openSlimBox(url, description) {
	Slimbox.open(url, description);
}

function loadSpotVideo(cntName) {
	if(!$('flvplayer')) {
		$('works_spot').empty();
		var elPlayer = new Element('div', {'id': 'flvplayer'});
		$('works_spot').grab(elPlayer);
		if(!$('works_spot').hasClass('works_player')) $('works_spot').addClass('works_player');
	}
	//else 
		//$('flvplayer').empty(); //.set('html', '');
	
	/*menuItems: [false, false, false, false, false, false], */
	var flashvars  = {
		config:"{ playList: [ {overlayId: 'play' }, " +
				"{ url: '../content/spot/tv/"+ cntName +".flv', allowResize: false } ], " + 
				"autoPlay:true,  " +
				"loop: false,  " +
				"showMenu:false,  " +
				"getControlBarBackgroundColor:0xDDDDDD, initialScale: 'scale', " +
				"autoRewind: true}"
	};

	// need this next line for local testing, it's optional if your swf is on the same domain as your html page
	var params = {
		allowScriptAccess: "always"
	};

	swfobject.embedSWF("swf/FPClassicOnlyPlayVolume.swf", "flvplayer", "352", "288", "7", "Scripts/expressInstall", flashvars, params);
}

function loadSpotImage(cntName, title, margTop) {
	$('works_spot').removeClass('works_player');
	$('works_spot').removeClass('works_radio_player');
	$('works_spot').empty();//.set('html', '');
	//$('boxContent').set('html', '<a onclick="openSlimBox(\'content/spot/press/'+ cntName+'_b.jpg\', title)" title="'+ title +'"><img src="content/spot/press/'+ cntName+'.jpg" /></a>');
	var aHref = new Element('a', {
		'href': 'javascript:openSlimBox("content/spot/press/'+ cntName+'_b.jpg", "'+ title +'")'
	});
	var img = new Element('img', {
		'class' : 'hide',
		'src': 'content/spot/press/'+ cntName+'.jpg',
		//'onclick': 'openSlimBox("content/spot/press/'+ cntName+'_b.jpg", "'+ title +'")',
		'title': title,
		'style': 'margin-top:'+ margTop +'px'
	});
	
	aHref.grab(img);
	$('works_spot').grab(aHref);
	img.removeClass('hide');
}
	
function loadSpotRadio(cntName) {
	$('works_spot').removeClass('works_player');
	if(!$('flvplayer')) {
		$('works_spot').empty();
		var elPlayer = new Element('div', {'id': 'flvplayer'});
		$('works_spot').grab(elPlayer);
		if(!$('works_spot').hasClass('works_radio_player')) $('works_spot').addClass('works_radio_player');
	}
	//else 
		//$('flvplayer').empty();
	
	var flashvars  = {
		config:"{ playList: [ {overlayId: 'play' }, " +
				"{ url: '../content/spot/radio/"+ cntName +".flv', allowResize: false } ], " + 
				"autoPlay:true,  " +
				"loop: false,  " +
				"showMenu:false,  " +
				"initialScale: 'scale', " +
				"autoRewind: true}"
	};

	var params = { allowScriptAccess: "always" };

	swfobject.embedSWF("swf/FPClassicOnlyPlayVolume.swf", "flvplayer", "250", "24", "7", "Scripts/expressInstall", flashvars, params);
}


function loadSpotVarious(cntName, title) {
	$('works_spot').removeClass('works_radio_player');
	if(!$('flvplayer')) {
		$('works_spot').empty();
		var elPlayer = new Element('div', {'id': 'flvplayer'});
		$('works_spot').grab(elPlayer);
		if(!$('works_spot').hasClass('works_player')) $('works_spot').addClass('works_player');
	}
	//else 
		//$('flvplayer').empty();
	
	var flashvars  = {
		config:"{ playList: [ {overlayId: 'play' }, " +
				"{ url: '../content/spot/various/"+ cntName +".flv', allowResize: false } ], " + 
				"autoPlay:true,  " +
				"loop: false,  " +
				"showMenu:false,  " +
				"initialScale: 'scale', " +
				"autoRewind: true}"
	};

	var params = { allowScriptAccess: "always" };

	swfobject.embedSWF("swf/FPClassicOnlyPlayVolume.swf", "flvplayer", "352", "288", "7", "Scripts/expressInstall", flashvars, params);
}


/*function showTextVarious(el, cntName, title) {
	
	$('works_spot').removeClass('works_player');
	$('works_spot').empty();//.set('html', '');
	var img = new Element('img', {
		'class' : 'hide',
		'src': 'content/spot/various/'+ cntName+'.jpg',
		'onclick': 'openSlimBox(\'content/spot/various/'+ cntName+'_b.jpg\', \''+ title +'\')',
		'title': title
	});
	
	$('works_spot').grab(img);
	img.removeClass('hide');
	
	var parent = el.getParent();
	parent.getElement('.variousText').toggleClass('hide');
	
	var sumHeight = 0;
	$('worksListlink').getElements('div.various').each(function(item, index) {
		sumHeight += item.getStyle('height').toInt();
	});
	
	if(sumHeight > 160) {
		new ScrollBar($('worksVlist'), $('worksScrollBarContainer'), $('worksScrollKnob'), {
			mode: 'vertical',
			steps: 1000 - (1000-(sumHeight / 2)),
			offset: -2
		});
		
		$('worksScrollarea').fade('in');
	}
	else
		$('worksScrollarea').fade('out');

	$('worksScrollarea').fade('out');
}*/

//-->