var SiteClass = new Class({

	initialize: function(){
		if(lang.lang == 'pl' || lang.lang == 'de') {
			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.50;
		
		hs.addSlideshow({
			//slideshowGroup: 'group1',
			interval: 5000,
			repeat: false,
			useControls: true,
			fixedControls: 'fit',
			overlayOptions: {
				opacity: .75,
				position: 'bottom center',
				hideOnMouseOut: true
			}
		});

	}, // initialize

	fadeDuration: 1000,
	delayDuration: 5000,

	fadeDuration2: 1000,
	delayDuration2: 6000,

	domReady: function() {

		Cufon.replace('.cufon', { hover: true });
		Cufon.now();
		
		this.setActiveMenu();
		
		/*
		if($('banner')) {
			new Swiff('/public/flash/top.swf', {
				id: 'flashka',
				container: $('banner'),
				width: '100%',
				height: '100%',
				params: {
					wmode: 'transparent',
					//allowFullScreen: 'true',
					allowscriptaccess: 'always'
				},
				vars: {
					xmlURL: '/public/flash/top.xml'
				}
			});
		}
		*/
		
		if($('banner-list')) {
			$$('ul#banner-list li').each(function(li, i) { li.setStyle('opacity', 0); if(i == 0) li.addClass('active'); });
			new Fx.Tween($('banner-list').getFirst(), {duration: Site.fadeDuration2}).start('opacity', 0, 1);
			
			if($$('ul#banner-list li').length > 1) {
				var nextImage = function() {
					var lis = $$('ul#banner-list li.active');
					var actual = lis[0];
					var next = (actual.getNext()) ? actual.getNext() : actual.getParent().getFirst();
					actual.setStyle('zIndex', 5);
					next.setStyle('zIndex', 10);
					
					new Fx.Tween(next, {
						duration: Site.fadeDuration2, 
						onComplete: function(li){
							li.addClass('active');
							var prev = (li.getPrevious()) ? li.getPrevious() : li.getParent().getLast();
							prev.removeClass('active');
							prev.setStyle('opacity', 0);
						}
					}).start('opacity', 0, 1);
					
				}
				var periodical = nextImage.periodical(Site.fadeDuration2 + Site.delayDuration2);
			}
		}

		if($('customers')) {
			$$('ul#customers li').each(function(li, i) { li.setStyle('opacity', 0); if(i == 0) li.addClass('active'); });
			new Fx.Tween($('customers').getFirst(), {duration: Site.fadeDuration}).start('opacity', 0, 1);
			
			if($$('ul#customers li').length > 1) {
				var nextLogo = function() {
					var lis = $$('ul#customers li.active');
					new Fx.Tween(lis[0], {
						duration: Site.fadeDuration, 
						onComplete: function(li){
							li.removeClass('active');
							var next = (li.getNext()) ? li.getNext() : li.getParent().getFirst();
							next.addClass('active');
							new Fx.Tween(next, {
								duration: Site.fadeDuration
							}).start('opacity', 0, 1);
						}
					}).start('opacity', 1, 0);
				}
				var periodical = nextLogo.periodical(2 * Site.fadeDuration + Site.delayDuration);
			}
		}
		
		if($('gmap')) this.loadMap();

	}, // domReady

	map: null,
	loadMap: function() {
		
		var myLatlng = new google.maps.LatLng(49.98580710923081,20.440707206726074);
		var myOptions = {
		zoom: 15,
		center: myLatlng,
		navigationControlOptions: {
			style: google.maps.NavigationControlStyle.SMALL
		},
		mapTypeId: google.maps.MapTypeId.ROADMAP
		}
		
		this.map = new google.maps.Map($('gmap'), myOptions);
		
		var marker = new google.maps.Marker({
			position: myLatlng, 
			map: this.map
		});
		
	}, // loadMap

	setActiveMenu: function() {
		var path = document.location.pathname.substr(1);
		if(path.charAt(path.length-1) == '/') path = path.substr(0, path.length-1);
			else if(path == '') path = '/'; // main page
		path = path.replace(/\/\d+\/?$/, '').replace(/\/[0-9a-z-]+\.html\/?$/, '');//.replace(/(pl|en|de|ua)$/, '/');
		
		var links = $$('ul#menu a[href='+path+']');
		while(links.length == 0 && path != '') {
			path = path.split('/');
			path.pop();
			path = path.join('/');
			links = $$('ul#menu a[href='+path+']');
		}
		if(links.length == 1) {
			var a = links[0];
			a.addClass('active');
		}
		
	}, //setActiveMenu

	showMail: function(user, domain, contry, attr) {
		var start = "<a href=\"mailto:" + user + "@" + domain + "." + contry + "\"" + attr + ">"+user+'@'+domain+'.'+contry;
		var end = "</a>";
		document.write(start + end);
		return false;
	} // showMail

});

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

