var SiteClass = new Class({

	fontSizes: [11, 13, 15],
	fontIndex: 0,
	
	initialize: function(){
		
		hs.lang.cssDirection = lang.cssDirection;
		hs.lang.loadingText = lang.loadingText;
		hs.lang.loadingTitle = lang.loadingTitle;
		hs.lang.focusTitle = lang.focusTitle;
		hs.lang.fullExpandTitle = lang.fullExpandTitle;
		hs.lang.previousText = lang.previousText;
		hs.lang.nextText = lang.nextText; 
		hs.lang.moveText = lang.moveText;
		hs.lang.closeText = lang.closeText; 
		hs.lang.closeTitle = lang.closeTitle; 
		hs.lang.resizeTitle = lang.resizeTitle;
		hs.lang.playText = lang.playText;
		hs.lang.playTitle = lang.playTitle;
		hs.lang.pauseText = lang.pauseText;
		hs.lang.pauseTitle = lang.pauseTitle;
		hs.lang.previousTitle = lang.previousTitle;
		hs.lang.nextTitle = lang.nextTitle;
		hs.lang.moveTitle = lang.moveTitle;
		hs.lang.fullExpandText = lang.fullExpandText;
		hs.lang.number = lang.number;
		hs.lang.restoreTitle = lang.restoreTitle;			
		hs.graphicsDir = 'public/images/highslide/';
		hs.align = 'center';
		hs.transitions = ['expand', 'crossfade'];
		hs.outlineType = 'rounded-white';
		hs.fadeInOut = true;
		//hs.dimmingOpacity = 0.75;
		
		hs.addSlideshow({
			//slideshowGroup: 'group1',
			interval: 5000,
			repeat: false,
			useControls: true,
			fixedControls: 'fit',
			overlayOptions: {
				opacity: .75,
				position: 'bottom center',
				hideOnMouseOut: true
			}
		});
	
	}, // initialize

	
	domReady: function() {


		Cufon.replace('h2.caption');
		Cufon.replace('h3.caption');
		Cufon.now();
		
		if($('q')) new OverText($('q'));
		
		this.activateFontSize();
		this.activateMenu();
		this.activateTabs();
		this.activateOrderForm();
		this.activateRegisterForm();
		this.activateFlash();
		this.activateYT();
		this.activateParkMap();
		this.activateNewsletter();
		
		$$('form').each(function(form){
			form.set('action', form.get('title')).set('title', '');
		});
		
		if($('pano')) {
			new Swiff('/public/flash/pano/panorama_'+$('pano').className+'.swf', {
				id: 'panorama',
				container: $('pano'),
				width: '100%',
				height: '100%',
				params: {
					wmode: 'tranaparent',
					allowFullScreen: 'true',
					allowscriptaccess: 'always'
				}
			});
			
		}
		
	}, // domReady

	activateNewsletter: function() {

		if($('newsletter_add_btn')) { 
			$('newsletter_add_btn').addEvent('click', function(){ $('email_add').value = '1'; });
			$('newsletter_rem_btn').addEvent('click', function(){ $('email_add').value = '0'; });
		}
		
	}, // activateNewsletter

	activateParkMap: function() {
		if($('parkmap')) {
			new Swiff('/public/flash/mapa/preloader.swf', {
				id: 'mapa-flash',
				container: $('parkmap'),
				width: 650,
				height: 550,
				params: {
					wmode: 'tranaparent',
					allowFullScreen: 'true',
					allowscriptaccess: 'always'
				}
			});
		}
	}, // activateParkMap
	
	activateYT:function() {
		$$('div.yt').each(function(d) {
			var params = d.getFirst().innerHTML.split('|');
			new Swiff('http://www.youtube.com/v/'+params[0]+'&hl='+params[1]+'&fs=1&rel=0', {
				id: 'yt-'+params[0],
				container: d,
				width: params[2],
				height: params[3],
				params: {
					wmode: 'tranaparent',
					allowFullScreen: 'true',
					allowscriptaccess: 'always'
				}
			});
			
		});	
	}, // activateYT
	
	activateFlash:function() {
		
		if(Browser.Plugins.Flash.version >= 9) {
			
			/*
			// przeniesione do widoku, bo potrzebne dodatkowe parametry z php
			*/
		} else {
			$('flash').addClass('no-flash');
		}
	
	}, //activateFlash
	
	activateTabs:function() {
	
		$$('div.tabs ul.tabs-list a').each(function(tab, i){
			if(i == 0) {
				tab.addClass('active');
				$(tab.get('rel')).setStyle('display', 'block');
			}
			tab.addEvent('click', function(){
				var tabs = $$('#' + this.getParent('.tabs').get('id') + ' ul.tabs-list a');
				for(var i = 0; i < tabs.length; i++) {
					if(this === tabs[i]) {
						$(tabs[i].get('rel')).setStyle('display', 'block');
						tabs[i].addClass('active');
					} else {
						$(tabs[i].get('rel')).setStyle('display', 'none');
						tabs[i].removeClass('active');
					}
				}
				this.blur();
				return false;
			});
		});
	
	}, // activateTabs
	
	activateMenu: function() {
	
		$$('div#main-menu a.active').each(function(a){
												   
			if(a.getNext()) a.getNext().setStyle('display', 'block');
			
			var ul = a.getParent('ul');
			while(ul) {
				ul.setStyle('display', 'block');
				ul = ul.getParent('ul');
			}
			
			var li = a.getParent('li');
			while(li) {
				if(li.getNext()) li.getNext().setStyle('background', 'none');
				li = li.getParent('li');
			}
			
		});
	
	}, //activateMenu
	
	activateFontSize: function() {
		
		Site.fontIndex = Cookie.read('font');
		if(Site.fontIndex) $('body').setStyle('font-size', this.fontSizes[Site.fontIndex]+'px');
			else Site.fontIndex = 0;
		var aLinks = $$('li.font-size a');
		if(aLinks.length > 0) {
			aLinks[2 - Site.fontIndex].addClass('active'); // 2 - bo odwrotna kolejnosc
			
			$$('li.font-size a').each(function(a){
				a.addEvent('click', function(){
					switch(a.get('id')) {
						case 'font-size-s': var iIndex = 0; break;
						case 'font-size-m': var iIndex = 1; break;
						case 'font-size-l': var iIndex = 2; break;
					}
					Site.fontIndex = iIndex;
					$('body').setStyle('font-size', Site.fontSizes[Site.fontIndex]+'px');
					Cookie.write('font', Site.fontIndex, {duration: 365});
					var aLinks = $$('li.font-size a');
					for(var i = 0; i < aLinks.length; i++) {
						if(aLinks[i] === this) aLinks[i].addClass('active');
							else aLinks[i].removeClass('active');
					}
				});
			});
		}
		
	}, //activateFontSize

	activateOrderForm: function() {
		
		if($('copy_form')) {
			$('copy_form').addEvent('click', function(){
				$$('div#customer_data input[type=text]').each(function(i){
					var n = i.get('id').replace('customer', 'delivery');
					if($(n)) $(n).set('value', i.get('value'));
				});
			});
		}
		
	}, //activateOrderForm
	
	activateRegisterForm: function() {
		
		if($('agree')) {
			$('agree').getParent('form').addEvent('submit', function(){
				if(!$('agree').checked) {
					alert(lang.agreeError);
					return false;
				}
			});
		}
		
	}, //activateRegisterForm

	getCalendar: function(month, year) {

        var path = 'kalendarz/' + month + '/' + year;
        var loader = $('ajax-calendar-loader');
        
        loader.setStyle('display', 'block');
        
        var req = new Request({  
            method: 'get',
            url: path,
            onSuccess: function(response) {
                $('calendar-table').innerHTML = response;
                loader.setStyle('display', 'none');
            }  
        }).send();
	}, // getCalendar

	showMail: function(user, domain, contry, attr) {
		var start = "<a href=\"mailto:" + user + "@" + domain + "." + contry + "\"" + attr + ">";
		var end = "</a>";
		document.write(start + user + "@" + domain + "." + contry + end);
		return false;
	}, // showMail
	
	showFlash: function(panolink) {
	    window.open('/panoramy/'+panolink, 'Panorama', 'menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no,fullscreen=no,channelmode=no,width=950,height=550,left='+((screen.width-950)/2)+',top='+((screen.height-550)/2)).focus();
	}
});

var Site = new SiteClass();
window.addEvent('domready', function(){ Site.domReady(); });
