// JavaScript Document ąę
var ln1 = new Object();
ln1.url = 'http://www.ppww.pl'; ln1.code = 'pl';
var ln2 = new Object();
ln2.url = 'http://www.ipiw.pl'; ln2.code = 'en';
var languages = new Array(ln1, ln2);
var defaultLanguageCode = 'pl';

var rootPath = '/';
var mainUrl = getMainUrl();
var languageCode = getLanguageCode(mainUrl, languages);
var currentUrl = getCurrentUrl(mainUrl);
var dictionary = getDictionary(languageCode);
var googleMapAddress = 'http://maps.google.pl/maps?f=q&amp;source=s_q&amp;hl=pl&amp;q=park&amp;sll=50.821791,16.308421&amp;sspn=0.003707,0.008272&amp;ie=UTF8&amp;split=1&amp;rq=1&amp;ev=zi&amp;radius=0.18&amp;hq=park&amp;hnear=&amp;ll=50.829252,16.312637&amp;spn=0.003707,0.008272&amp;z=14&amp;iwloc=A&amp;cid=8016586213574225938&amp;output=embed';
var useFlash = true;
var useSifr = true;

var scriptsToAppend = '<link href="' + rootPath + 'styles/default/jsOnBoard.css" rel="stylesheet" type="text/css" media="screen"/>';
document.write(scriptsToAppend);

if(useFlash){
	//do wykrywania wersji flash
	var requiredMajorVersion = 8;
	var requiredMinorVersion = 0;
	var requiredRevision = 24;
	var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);	
}

 
$(document).ready(function(){
	$('div.box:last').addClass('lastBox');
	
	//round me
	$('.roundMe').each(function(){
		$(this).wrap('<div class="rounded"><div class="leftBorder"><div class="rightBorder"><div class="bottomBorder"><div class="leftUpperCorner"><div class="rightUpperCorner"><div class="leftLowerCorner"><div class="rightLowerCorner"></div></div></div></div></div></div></div></div>');						
	});
	
	
	setSelected();
	
	initSideNav();	
	
	initMainColumnBoxes();
	
	sfHover();
	
	$('#topNav li:last-child').addClass('lastChild');
	$('#breadCrumbTrail li:last-child').addClass('lastChild');
	$('#bottomNav li:last-child').addClass('lastChild');
});

//showGoogleMap
function showGoogleMap(){
	var containerWrapper = $('#containerWrapper');
	containerWrapper.append('<div id="googleMapBg"><div>');		
	$('body').append('<iframe id="googleMap" width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="' + googleMapAddress + '"></iframe>');			
	
	var googleMapBg = $('#googleMapBg');
	var googleMap = $('#googleMap');
	
	googleMapBg.css({
		opacity:	0.7,
		height: containerWrapper.height()
	});	
	
	var top = $(document).scrollTop() + Math.round($(window).height()/2) - 175;
	googleMap.css('top', top + 'px');
	
	googleMapBg.click(function(){
		googleMap.remove();
		googleMapBg.remove();
	});
}

//init main parameters
function getMainUrl(){
	$regexp = new RegExp('http://.*?/');
	var mainUrl = $regexp.exec(document.location.href);		
	return new String(mainUrl);
}

function getCurrentUrl(mainUrl){	
	return '/' + document.location.href.substring(mainUrl.length);
}

function getLanguageCode(mainUrl){
	//doetnij http://
	/*var url = mainUrl.substring(7);
	var parts = url.split('.');
	var languageCode = defaultLanguageCode;
	if(parts[0].length == 2){		
		languageCode = parts[0];		
	} else {
		if(parts[1].length == 2){
			languageCode = parts[0];
		} 
	}	
	return languageCode;*/
	
	var languageCode = defaultLanguageCode;
	for(var i in languages){
		if(languages[i].url+'/' == mainUrl){
			languageCode = languages[i].code;
			break;
		}
	}
	return languageCode;
}

function getDictionary(ln){
	var dictionary = new Object();
	
	if(ln == 'pl'){
		dictionary.wrong_email_address = 'Sprawdź poprawność adresu email!';
	} else {
		dictionary.wrong_email_address = 'Check your email address!';
	}
	
	return dictionary;
}

//select for all navs and links with sites urls
function setSelected(){
	if(typeof(breadCrumbTrail)!="undefined"){
		for(var i = breadCrumbTrail.length - 1; i >= 0; i--){			
			//nie dodawaj dla ostatniej, bo ostatnia to glowna wiec podswietli na calej stronie
			if(breadCrumbTrail.length > 1 && i == 0){
				break; 
			}

			//jesli adres od http to nie dodawaj prefixu
			var prefix = '/'; var postfix = '.html';
			if(breadCrumbTrail[i].search('http') != -1){
				prefix = ''; postfix = '';				
			}			

			$("a[href='" + prefix + breadCrumbTrail[i] + postfix + "']").addClass('selected');	
			
		}
	}
}

//sideNav
function initSideNav() {	
	if(!$('#sideNav').length){
		return false;
	}
	
	$('#sideNav ul').hide();	
	
	//zaznaczanie wedle adresu
	var cnt = mainUrl.length;
	var currentUrl = '/' + document.location.href.substring(cnt);	

	if(currentUrl != '/'){
		$("a[href='"+currentUrl+"']").addClass('selected');
	} 

	$('#sideNav a.selected').parents("ul").show();
	
	//dodaje selected tez dla rodzicow
	$('#sideNav a.selected').parents("li").children('a').addClass('selected');
	
	$('#sideNav li:last').addClass('lastChild');

	$('#sideNav li a').click(
		function() {	
			$('#sideNav a.selected').removeClass('selected');
			$(this).addClass('selected');
			
			var checkElement = $(this).next();
			var parent = this.parentNode.parentNode.id;				
			
			if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {							
				//ajax(this);
				if(parent){
					$('#' + parent + ' ul:visible').slideUp('normal');
				}
				checkElement.slideDown('normal');
				return false;
			}
		}
	);	
}

//maincolumn boxes, dodaje klasy tak zeby marginesy bylo ok
function initMainColumnBoxes(){
	//produkty po 2 lub 3 w kolumnie. Odpowiednio dodaje lastChild.
	if($('.columns-left-right').size()){
		var perRow = 1;	
	} else if($('.columns-left, .columns-right').size()){
		var perRow = 2;	
	} else {
		var perRow = 3;
	}

	$('#mainColumn .boxes').each(function(){
		var i = 0;													  
		$(this).children().each(function(){
			if($(this).hasClass('box')){													
				i++;													
				if(i%perRow==0){
					$(this).addClass('lastChild');
				}
			}
		});
	});
}

//przykladowe przewijanie na jquery bez dodatkowych parametrow
function showShortOffer(dir){
	var cnt = $('#offerBox ul').size();
	for(var i=1; i<=cnt; i++){
		if($('#offerBox ul.current').hasClass('o'+i)){		
			var next = $('#offerBox ul.o'+(i+dir));
			if(next.length){
				$('#offerBox ul.current').removeClass('current');
				next.addClass('current');		
				break;
			}			 
		}
	}
}
function showPrevShortOffer(){
	showShortOffer(-1);		
}
function showNextShortOffer(){
	showShortOffer(1);		
}

//images vertival align
function verticalAlign(elem){
	var top = Math.floor(($(elem).parent().height() - elem.height)/2);
	elem.style.top = top+'px';
}



//wyslij do flash elementy menu
function sendToFlashTopNav(){					
	var rows = new Array();
	//dla ie, bo ie nie widzi klasy selected
	var selectedUrl = '';
	if(breadCrumbTrail .length > 1){
		selectedUrl = breadCrumbTrail [1];
	} else {
		selectedUrl = breadCrumbTrail [0];
	}
	
	if(selectedUrl.search('http') == -1){
		selectedUrl = '/' + selectedUrl + '.html';			
	}		
	
	$('#topNav > *').each(function(i){
		var row = new Object();
		var a = $(this).children('a');
		row.url = a.attr('href');
		row.name = a.text();
		
		if(a.hasClass('selected') || row.url == selectedUrl){
			row.selected = true;
		} else {
			row.selected = false;
		}
		rows[i] = row;
	});

	return rows;
}	

//dopasuj elementy menu w html do tych we flash, zeby dropdown sie dobrze wyswietlalo
function adjustWidth(nbr, width){
	var a = $('#tn'+nbr+' :first');	
	a.addClass('hidden');
	a.css('width', width + 'px');
}

/*Top Nav*/
sfHover = function() {
	
	$('#topNav li').hover(function () {	
	  $(this).addClass("sfhover");	  
	  var id = $(this).attr('id');
	  //tylko dla 1 poziomu
	  if(id){
	  	var nbr = id.substr(2);
	  	document.flashTopNav.SetVariable('btnOnWichIsMouseOver', nbr-1);
	  }
	}, function () {
	  $(this).removeClass("sfhover");
  	  var id = $(this).attr('id');
	  if(id){
	  	var nbr = id.substr(2);
	  	document.flashTopNav.SetVariable('btnOnWichIsMouseOut', nbr-1);
	  }
	});
	$('#topNav > *').click(function(){
		window.location.href = $(this).children('a').attr('href');											  
	});
}


/*add to bookmark*/
function addToBookmarks() {
	title = $('title').text(); 
	url = location.href;
		
	if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url,"");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite( url, title); }
	else if(window.opera && window.print) { // Opera Hotlist

	}
}

/*selecty ladne, zahaszowana linijka z onChange, bo przy zmianie submituje formularz*/
var checkboxHeight = "25";
var radioHeight = "25";
var selectWidth = "77";
/* No need to change anything after this */

document.write('<style type="text/css">input.styled { display: none; } select.styled { position: relative; width: ' + selectWidth + 'px; opacity: 0; filter: alpha(opacity=0); z-index: 5; }</style>');

var Custom = {
	init: function() {
		var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
		for(a = 0; a < inputs.length; a++) {
			if((inputs[a].type == "checkbox" || inputs[a].type == "radio") && inputs[a].className == "styled") {
				span[a] = document.createElement("span");
				span[a].className = inputs[a].type;

				if(inputs[a].checked == true) {
					if(inputs[a].type == "checkbox") {
						position = "0 -" + (checkboxHeight*2) + "px";
						span[a].style.backgroundPosition = position;
					} else {
						position = "0 -" + (radioHeight*2) + "px";
						span[a].style.backgroundPosition = position;
					}
				}
				inputs[a].parentNode.insertBefore(span[a], inputs[a]);
				//inputs[a].onchange = Custom.clear;
				span[a].onmousedown = Custom.pushed;
				span[a].onmouseup = Custom.check;
				document.onmouseup = Custom.clear;
			}
		}
		inputs = document.getElementsByTagName("select");
		for(a = 0; a < inputs.length; a++) {
			if(inputs[a].className == "styled") {
				option = inputs[a].getElementsByTagName("option");
				active = option[0].childNodes[0].nodeValue;
				textnode = document.createTextNode(active);
				for(b = 0; b < option.length; b++) {
					if(option[b].selected == true) {
						textnode = document.createTextNode(option[b].childNodes[0].nodeValue);
					}
				}
				span[a] = document.createElement("span");
				span[a].className = "select";
				span[a].id = "select" + inputs[a].name;
				span[a].appendChild(textnode);
				inputs[a].parentNode.insertBefore(span[a], inputs[a]);
				//inputs[a].onchange = Custom.choose;
			}
		}
	},
	pushed: function() {
		element = this.nextSibling;
		if(element.checked == true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight*3 + "px";
		} else if(element.checked == true && element.type == "radio") {
			this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
		} else if(element.checked != true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight + "px";
		} else {
			this.style.backgroundPosition = "0 -" + radioHeight + "px";
		}
	},
	check: function() {
		element = this.nextSibling;
		if(element.checked == true && element.type == "checkbox") {
			this.style.backgroundPosition = "0 0";
			element.checked = false;
		} else {
			if(element.type == "checkbox") {
				this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
			} else {
				this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
				group = this.nextSibling.name;
				inputs = document.getElementsByTagName("input");
				for(a = 0; a < inputs.length; a++) {
					if(inputs[a].name == group && inputs[a] != this.nextSibling) {
						inputs[a].previousSibling.style.backgroundPosition = "0 0";
					}
				}
			}
			element.checked = true;
		}
	},
	clear: function() {
		inputs = document.getElementsByTagName("input");
		for(var b = 0; b < inputs.length; b++) {
			if(inputs[b].type == "checkbox" && inputs[b].checked == true && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
			} else if(inputs[b].type == "checkbox" && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 0";
			} else if(inputs[b].type == "radio" && inputs[b].checked == true && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
			} else if(inputs[b].type == "radio" && inputs[b].className == "styled") {
				inputs[b].previousSibling.style.backgroundPosition = "0 0";
			}
		}
	},
	choose: function() {
		option = this.getElementsByTagName("option");
		for(d = 0; d < option.length; d++) {
			if(option[d].selected == true) {
				document.getElementById("select" + this.name).childNodes[0].nodeValue = option[d].childNodes[0].nodeValue;
			}
		}
	}
}
//window.onload = Custom.init;

/*polec znajomemu*/
function showMailtoForm(){
	$('#mailtoForm').show();
}

function mailto(form){
	if(isEMailAddr(form.e)){		
		$.get("/mailto/index", {e:form.e.value, url:document.location.href}, function(data){
			form.e.value = 'email do znajomego';
			$('#mailtoForm').hide();
			if(data == 'ok'){					
				alert("Wysłane. Dziękujemy.");
			} else {
				alert(data);
			}
		});
	}
	return false;
}

//swap image to flash
function swapProductImageToFlash(elem){
	var a = $(elem).parent();
	a.html('<embed type="application/x-shockwave-flash" scale="noscale" bgcolor="none" wmode="transparent" flashvars="src='+ elem.src + '&url=' + a.attr('href') + '&width=' + elem.width + '&height=' + elem.height +'" quality="best" src="/flash/image.swf" width="130" height="'+elem.height+'">');
}

//isEmailAddress
function isEMailAddr(elem) {
	var str = elem.value;
	var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
	if (!str.match(re)) {
		alert(dictionary.wrong_email_address);
		return false;
	} else {
		return true;
	}
}

//miscelenous
function misc(){
	if(!($.browser.msie == true && jQuery.browser.version == 6.0)){
	}
}


//sifr config
if(useSifr){
	var mpsb = { src: rootPath + 'flash/sifrMPSB.swf' };
	var mpl = { src: rootPath + 'flash/sifrMPL.swf' };
	
	sIFR.activate(mpl);
	
	sIFR.replace(mpl, {
	  selector: '#slogan',
	  css: '.sIFR-root {color: #93a8b1;}',
	  wmode: 'transparent'
	});
	
	sIFR.replace(mpl, {
	  selector: '#welcomeBox h3',
	  css: '.sIFR-root {color: #012a39;}',
	  wmode: 'transparent'
	});
	
	sIFR.replace(mpl, {
	  selector: '.box .header h3, .mainHeader h2',
	  css: '.sIFR-root {color: #012a39;}',
	  wmode: 'transparent'
	});
}

