/**
 * playmax.js
 *
 * @author Michal nez Sekula (michal@esee.pl)
 */
 
// mini preloader do obrazkow
var preloadImages = function(preloadedImages) {
	var temp = [];
	for(i=0;i<preloadedImages.length;i++) { 
		temp[i] = new Image();
		temp[i].src = preloadedImages[i];
	}
};
// kreski w menu
var ofertaMenu = function() {
    var start = 250;
    var step = 3;
    var array = $("#ofertamenu li");
    if( array.length>0 ) {
        for(i=0;i<array.length;i++) {
            var len = start - (i*step);
            $("a", array[i]).css('width', len+'px');
        }
    }
};
// link w warstwie bookmark
var makeAdBmlink = function() {
	$("#ad_bm").click(function(){
    	location.href=''+$("#ad_bm a").attr('href');
	}).css('cursor','pointer');
};
// guziczki rozwin/zwin
var makeShowInfoLinks = function() {
	$("div.pakiety span.showinfo").click(function(){
    	$("p.hidden", $(this).parent().parent()).toggle();
    	if( $(this).html() == 'Rozwiń' ) {
    		$(this).html('Zwiń');
    		$(this).css('background','url(images/zwin.gif) no-repeat top right');
    	} else {
    		$(this).html('Rozwiń');
    		$(this).css('background','url(images/rozwin.gif) no-repeat top right');
    	}
	}).css('cursor','pointer');
};

// walidacja formularza kontaktowego
var contactFormCheck = function(form) {
	
	var el = form.elements;
	var err = 0;
	var errMesg = [];
	var errStr = '';
	
	if( el['name'].value.length == 0 ) {
		errMesg[err++] = 'Imię i nazwisko';
	}
	if( el['city'].value.length == 0 ) {
		errMesg[err++] = 'Miasto';
	}
	if( el['state'].value.length == 0 ) {
		errMesg[err++] = 'Województwo';
	}
	if( el['phone'].value.length == 0 && el['email'].value.length == 0 ) {
		errMesg[err++] = 'Wprowadź Telefon lub Adres email';
	}
	if( el['category'].value == '-1' ) {
		errMesg[err++] = 'Kategoria zgłoszenia';
	}
	if( el['message'].value.length == 0 ) {
		errMesg[err++] = 'Twoja wiadomość';
	}
	if( el['agree'].checked == false ) {
		errMesg[err++] = 'Musisz wyrazić zgodę na przetwarzanie danych osobowych';
	}
	
	if( el['email'].value.length > 0 ) {
		//var pattern = /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
		var pattern = /^([a-zA-Z0-9._-])+@([a-zA-Z0-9.-])+(\.[a-zA-Z0-9.-])*\.[a-zA-Z]{2,4}$/;
		if( pattern.test(el['email'].value) == false ) {
			errMesg[err++] = 'Wprowadź poprawny adres email';
		}
	}
	
	if( err > 0 ) {
		errStr = '<div class="errors"><span>Wypełnij pola:</span><ul>';
		for( i=0; i<err; i++ ) {
			errStr += '<li>'+errMesg[i]+'</li>';
		}
		errStr += '</ul></div>';
		
		$("div.errors").remove();
		$("form#fcontact").before(errStr);
		
		return false;
	}
	$("div.errors").remove();
	return true;
};

preloadImages(['images/menu_dot_over.gif', 'images/zwin.gif']);


var resetHTML = function() {
	$("div#results").html('');
	//$("div#results").show();
};
var clearOperators = function() {
//	$("div#results").fadeOut("slow", resetHTML);
	resetHTML();
//	$("div#results").html('');
};

var appendItem = function(xml) {
	var line = '';
    var count = $(xml).find('operator').length;
    var cityid = $(xml).attr('id');
    var tabId = "c_"+cityid;
   	
   		    line = '<table border="0" cellspacing="0" width="100%" class="results_table" id="'+tabId+'"></table>';
		    $("div#results").append(line);
    		line = '<thead><td class="name">Firma</td><td class="phone">Telefon kontaktowy</td><td class="address">Adres biura</td><td class="www">Strona WWW</td></thead>';
    		$("div#results table#"+tabId).append(line);
    
    line = '';
    for(i=0;i<count;i++) {
    	var rowid = "r_"+cityid+"_"+i;
    	var hiddenrowid = "h_"+cityid+"_"+i;
	   line = '<tr id="'+rowid+'"><td class="name">'+$(xml).find('name').eq(i).text()+'</td><td>'+$(xml).find('phone').eq(i).text()+'</td><td>'+$(xml).find('address').eq(i).text()+'</td><td>'+$(xml).find('www').eq(i).text()+'</td></tr>';
	   
	   $("div#results table#"+tabId).append(line);
	   
	   if( $(xml).find('description').eq(i).text() != '' ) {
	   		$("div#results table tr#"+rowid).css('cursor','pointer');
		   line = '<tr id="'+hiddenrowid+'" style="display: none;"><td colspan="4" class="description">'+$(xml).find('description').eq(i).text()+'</td></tr>';
		   $("div#results table#"+tabId).append(line);
		}
	   
	}
//

};
var processData = function(xml, state, city) {
    clearOperators();
	var line = '';
	$("div#results").append('<div class="header">Dostępne lokacje</div>');

	if( city == null ) {
		$(xml).find('cityitem').each(
			function(){
				line = '<div class="header_city">'+($(this).attr('name'))+'</div>';
				$("div#results").append(line);
				appendItem(this);
			}
		);	
	} else {
		$(xml).find('cityitem').each(
			function(){
				if( $(this).attr('cityid') == city ) {
					line = '<div class="header_city">'+($(this).attr('name'))+'</div>';
					$("div#results").append(line);
					appendItem(this);
				}
			}
		);	
	}
	
	$("div#results table tr[@id^=r_]").hover(function(){$(this).addClass('hover');},function(){$(this).removeClass('hover');});
	
	$("div#results table tr[id^=r_]").click(function(){
		var hid = $(this).attr('id').replace('r_', 'h_');
		$("div#results table tr#"+hid).toggle();
	});
};
var showOperators = function(data) {
	var state = data.state || null;
	var city = data.city || null;
	
	clearOperators();
	
	$.get("xml/map_"+state+".xml?r="+Math.floor(Math.random()*10001), {},
		function(data){
			processData(data, state, city);
		}, "xml");
};



$(document).ready(function(){$(document).pngFix();});

$(function(){

	//$(document).pngFix();

	$("ul.sub").parent().hover(
		function(){ 
			$('ul',this).show(); 
			$(this).addClass('active');
			/*var bgpos = $(this).width()+'px 0px';
			$('ul',this).css('background-position',bgpos);*/
		}, function(){ $('ul',this).hide(); $(this).removeClass('active'); }
	);
	
	$("ul.subright").parent().hover(
		function(){ 
			$('ul',this).show();
			var w = $(this).width();
			var ulw = $('ul',this).width();
			var nw = 0-ulw+w;
			/*var tt = 0-400+ulw-w;*/
			$("ul", this).css({
				'left': nw+'px'/*,
				'background-position':tt+'px 0px'*/
			});

			$(this).addClass('active');

		}, function(){ $('ul',this).hide(); $(this).removeClass('active'); }
	);
	$("div#ofertamenu li:last a").addClass("last");
	$("div#ofertamenu li a").hover(
		function(){
    		$(this).parent().addClass("lihover");
		},
		function(){
    		$(this).parent().removeClass("lihover");
		}
	);
	
	ofertaMenu();
	makeAdBmlink();
	//makeShowInfoLinks();
});
