/*
 * jQuery THINKPLACE-poglie -> MainClass
 *
 * Copyright 2011, Marco Poglie
 * THINKPLACE scripts.
 * http://www.thinkplace.it
 * http://www.poglie.com
 * 
 */

(function($) {
	$(function() {
		var poglie = function(element, options){
			/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															OBJECT settings
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//Defaults are below
			var settings = $.extend({}, $.fn.Poglie.defaults, options);
	
			
			
			
			/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															  INIT-VAR
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			var _element = $(element); // l'oggetto selezionato
			
			var figli = _element.children();
			var lunghezzaElement = figli.length;
			
			// --------[OGGETTI]--------
			var header = $('#header');
			var content = $('#content');
			var mainContent = $('#main-content');
			
			var footer = $('#footer');
			
			var bgFoto = $('#bg-foto');
			
			var bgPage = $('#bg-page');
			
			//  ------- controllo dei ink ------
			var pageSelect = 0; // l'indice del bottone scelo - In questo caso è subito il primo
			var old_pageSelect; // l'indice del bottone precedentemente scelto
			
			var commentaBut = $('#comment-footer a#comment-but');
			var commentArea = $('#comment-page');
			var commentContent = $('#comment-page-content')
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															    INIT
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			// 
			
			var init = function(setting){
				
				
				
				// ------------------------------------------------------- HEADER ------------------------------------------------------------------
				//
				// CallBack
				var funEntrato = function(){
					//if(bgFoto) bgFoto.fadeOut(700, function() {});
					//
					
					//Trigger the afterLoad callback
					settings.afterLoad.call(this);
					
					//window.alert("aaa");
					
				}
				var funUscito = function(){
					
				}
				var clickBut = function(i, old_i){
					//
					scambioPagina(i); ///
					//
					/*if(content && content.data('vars').nascondi) content.data('vars').nascondi(0, function(){
																												bgFoto.fadeOut(700, function() {});
																											});*/
				}
				var clickQuit = function(i){
					//
					/*if(content && content.data('vars').mostra) content.data('vars').mostra(1000, function(){
																												bgFoto.fadeIn(700, function() {});
																										  });*/
				}
				// Setting
				var objHead = {
									site_url: settings.site_url,
									colorTx:'#FFFFFF',
									colorTxBg:'#000000',
									colorHover:'#555555',
									colorSelect:'#a3001a',
									
									delay:1000,
									//
									
									clickBut:clickBut,
									clickQuit:clickQuit,
									// 
									onStart:funEntrato,
									chiuso:funUscito,
									//
									allCallback:true, // al click delle voci vengono usate solo i CallBack
									//
									otherSelector:''
								};
				
				var goHead = function(){
					/***************************************/				
					// Costructor
					header.menuBarrTop(objHead);
					/***************************************/
				}
				// ------------------------------------------------------- PAGINE ------------------------------------------------------------------
				
				var scrollFilm = function(i){
						
						
						if(header.data('vars')) header.data('vars').controllaBut(i);
						
				}
				var startFilm = function(){
						
						goHead();
						
						var indexRestituito = leggoPermalinkPageHeader();
						//window.alert('startFilm: vai alla pagina.. '+indexRestituito);
						
						
						if(header.data('vars')) header.data('vars').controllaBut(indexRestituito);
						//
						scambioPagina(indexRestituito);
						
				}
				
				/***************************************/
				var objFilmV = {
					site_url: settings.site_url,
					delay: 1500,
					elements: settings.elements,
					  
					Hfoot:footer.outerHeight(true)-1,
					  
					resizeType: 'screen',
					  
					onInit:function(){},
					onScroll: scrollFilm,
					onStart: startFilm
					
					
				};
				// Costructor
				mainContent.scrollV(objFilmV);
				/***************************************/
				
				
				
				
				
				
				// ------------------------------------------------------- PIEDINO ------------------------------------------------------------------
				//
				// Setting
				var objFoot = {
								 	delay:1200,
									altezza:60
								};
								
				/***************************************/
				// Costructor
				footer.barrFoot(objFoot);
				/***************************************/
				
				
				
				
				
				//
				// ------------------------------------------------------- BG-Foto ------------------------------------------------------------------
				//
				// Setting
				var objBG = { 
									delay:2000,
									slideshowSpeed: 6000,
									photos: [ {
														"title" : "Prima",
														"image" : "bg1.png",
														"url" : "images/bg/",
														"firstline" : "",
														"secondline" : ""
													},{
														"title" : "Seconda",
														"image" : "bg1.png",
														"url" : "images/bg/",
														"firstline" : "",
														"secondline" : ""
													}
												] 
					}
				
				/***************************************/
				// Costructor
				bgFoto.bgSliding(objBG);
				/***************************************/
			}
			
			
			
			
			
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//														permalinkpage
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//
			var leggoPermalinkPageHeader = function(){
				//
				//window.alert(settings.permalinkpage);
				var indexRestituito;
				if(header.data('vars')) indexRestituito = header.data('vars').permalinktoindex(settings.permalinkpage);
				//window.alert(indexRestituito);
				return indexRestituito
			}
			var leggoPermalinkPageVSlide = function(){
				//
				//window.alert(settings.permalinkSubPage);
				var indexRestituito;
				if(mainContent.data('vars')) indexRestituito = mainContent.data('vars').permalinktoindex(settings.permalinkSubPage, pageSelect);
				//window.alert(indexRestituito+" - "+settings.permalinkSubPage);
				return indexRestituito
			}
			
			
			
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															COMMENTO
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//
			var altezzaPageComment = 0;
			var clickCommentaOpen = function(event){
				
				
				
				/*
				window.alert(altezzaPageComment);
				*/
				
				//commentContent.css({'bottom':altezzaPageComment});
				commentContent.css({'bottom':-altezzaPageComment});
				commentContent.animate({'bottom':0}, 1000, "easeInOutExpo");
				
			}
			var clickCommentaClose = function(event){
				//commentContent.css({'bottom':-400});
				commentContent.animate({'bottom':-400}, 1000, "easeInOutExpo", function(){ $('#cf_info').empty(); });	
			}
			
			
			var creaPannelloComent = function(event){
				commentArea.css('bottom',footer.outerHeight(true));
				commentContent.load('http://www.poglie.com/commenti?isload=true', function(response, status, xhr) {			//window.alert(elem.attr('id'));	
																			  if (status == "error") {
																					var msg = "Sorry but there was an error: ";
																					$(this).append(msg + xhr.status + " " + xhr.statusText);
																			  }else{
																				  	altezzaPageComment = $(this).outerHeight(true)+7;
																			  }
																	   });
			}
			creaPannelloComent();
			commentaBut.toggle(clickCommentaOpen, clickCommentaClose);
			
			
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															SCAMBIO
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//
			var scambioPagina = function(i){
				
				old_pageSelect = pageSelect;
				pageSelect = i;
				//
				var indiceRestituito = leggoPermalinkPageVSlide();
				//
				//window.alert(indiceRestituito+" AAAAAAAAAA");
				mainContent.data('vars').scrollWin(i, false, Number(indiceRestituito));
				
				
			}
			
			
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															RESIZING
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//
			var scala  = function(){
				
				// uso data('vars') metodo pubblico di schiere.FilmV
				if(mainContent)	{
					mainContent.data('vars').scala();	
					
				}
				
			}
			var accendiScala = function (){
				
					$(window).bind('resize', scala);
			}
			var spegniScala = function (){
					$(window).unbind('resize');
			}
			
			
			/*********************************************************[ PUBBLIC Data.vars ]**********************************************/
			var vars = {
				// vuoto ...
				
			};
			//_element.data('vars',vars)
			/***********************************************************************************************************************/
			
			
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//															GOOOOOOO
			////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
			//
			init(settings);
			
			accendiScala();
			
			
			// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
			return this;
		};
			
		$.fn.Poglie = function(options) {
		
			return this.each(function(key, value){
				var element = $(this);
				
				// Rientro anticipato dell'attrubuto se questo elemento ha già un plugin istanza
				if (element.data('poglie')) return element.data('poglie');
				
				// COSTRUTTORE: -----------------------------
				var pogliews = new poglie(this, options);
				// ------------------------------------------
				
				// memorizzo il l'istanza in data
				element.data('poglie', pogliews);
			});
	
		};
		
		//Default settings
		$.fn.Poglie.defaults = {
			site_url: "",
			elements: [],
			permalinkpage:"",
			permalinkSubPage:"",
			afterLoad: function(){}
		};
		
		
	}); // end load js
})(jQuery);
