function clearAbsolutes() {
  if (document.getElementById("header-block")) {
    /* u olivie se neprovadi */
  } else {
		if (navigator.appName.indexOf("Opera") != -1) {
			document.getElementById("wrapper").style.minHeight = 0;
		}
		var sideHeight = 0;
		var contentHeight = 0;
		var minWrapperHeight = window.innerHeight - 442;
		if (navigator.appName.indexOf("Microsoft") != -1) {
			minWrapperHeight = document.documentElement.clientHeight - 442;
		}
		if (document.getElementById("left")) {
			sideHeight = document.getElementById("left").clientHeight;
		}
		if (document.getElementById("right")) {
			if (document.getElementById("right").clientHeight > sideHeight) {
				sideHeight = document.getElementById("right").clientHeight;
			}
		}
		if (document.getElementById("content")) {
			contentHeight = document.getElementById("content").clientHeight;
		} else {
			contentHeight = document.getElementById("content-wide").clientHeight;
		}
		if (contentHeight < minWrapperHeight && sideHeight < minWrapperHeight) {
			document.getElementById("wrapper").style.height = minWrapperHeight + 'px';
		}
		if (sideHeight > contentHeight) {
			document.getElementById("wrapper").style.minHeight = sideHeight + 'px';
		} else if (contentHeight < 800) {
			document.getElementById("wrapper").style.minHeight = contentHeight + 'px';
		}
	}
}
window.onload = clearAbsolutes;

function bookmarks(objId) {
	for (i=0; i<=7; i++) {
		if (document.getElementById('tab-'+i)) {
			document.getElementById('tab-'+i).setAttribute("class", "");
			document.getElementById('div-'+i).style.display = 'none';
		}
	}
	document.getElementById('tab-'+objId).setAttribute("class", "active");
	document.getElementById('div-'+objId).style.display = 'block';
	return false;
}

jQuery(document).ready(function() {
	jQuery('#jcarousel').jcarousel();
	jQuery('a.fancybox').fancybox();
	jQuery('#form-varianty').validate();
	jQuery('#form-vyhledavani').validate({
		rules: {
			dotaz: { required: true, minlength: 2 }
		},
		errorLabelContainer: jQuery('#form-vyhledavani-error')
	});
	jQuery('#form-newsletter').validate({
		rules: {
			email: { required: true, email: true }
		},
		errorLabelContainer: jQuery('#form-newsletter-error')
	});
	jQuery('#form-kontakty').validate({
		rules: {
			jmeno: { required: true },
			prijmeni: { required: true },
			ulice: { required: true },
			mesto: { required: true },
			psc: { required: true, digits: true, minlength: 5 },
			tel: { required: true },
			email: { required: true, email: true }
		}
	});
	jQuery('#form-registrace').validate({
		rules: {
			login: { required: true },
			password: { required: true },
			password_verify: { required: true, equalTo: '#password' },
			jmeno: { required: true },
			prijmeni: { required: true },
			ulice: { required: true },
			mesto: { required: true },
			psc: { required: true, digits: true, minlength: 5 },
			tel: { required: true },
			email: { required: true, email: true }
		}
	});
	jQuery('#form-dotaz').validate({
		rules: {
			jmeno: { required: true },
			prijmeni: { required: true },
			email: { required: true, email: true },
			subject: { required: true },
			dotaz: { required: true }
		}
	});
	jQuery('#div-4 form').bind('submit', function() {
		if (jQuery('#f1_jmeno').val().length < 1 || jQuery('#f1_prijmeni').val().length < 1 || jQuery('#f1_email').val().length < 1 || jQuery('#f1_dotaz').val().length < 1) {
			alert('Vyplňte prosím povinné položky.');
			return false;
		}
		jQuery.ajax({
			type: 'POST',
			cache: false,
			url: '/dotaz.php',
			data: jQuery(this).serializeArray(),
			success: function(data) {
				jQuery.fancybox('<span style="color: #000;">' + data + '</span>');
			}
		});
		return false;
	});
	jQuery('#div-5 form').bind('submit', function() {
		if (jQuery('#f2_jmeno').val().length < 1 || jQuery('#f2_email').val().length < 1) {
			alert('Vyplňte prosím povinné položky.');
			return false;
		}
		jQuery.ajax({
			type: 'POST',
			cache: false,
			url: '/poslat_odkaz.php',
			data: jQuery(this).serializeArray(),
			success: function(data) {
				jQuery.fancybox('<span style="color: #000;">' + data + '</span>');
			}
		});
		return false;
	});
});

function bookmarkSite(url, title) {
	if (document.all) {
		window.external.AddFavorite(url, title);
	} else if (window.sidebar) {
		window.sidebar.addPanel(title, url, "");
	}
}

$(document).ready(function() {
	$('.slick-down').change(function() {
		$('.slick-down').attr('checked', true);
		$('#slickbox-2').slideDown('fast');
		return false;
	});
	$('.slick-up').change(function() {
		$('.slick-up').attr('checked', true);
		$('#slickbox-2').slideUp('fast');
		return false;
	});
	$('.slick-toggle').click(function() {
		$('#slickbox').slideToggle('fast');
		return false;
	});
});

/**
 * ajax-based main filter update
 * @param id - selected param id
 * @param form - form id
 *
 */
function update_filter(id, form){
	form = '#'+form;
	var inputs = jQuery.makeArray( $("select", form));
	var params = '';
	for(i in inputs){
		params += '&' + inputs[i].name + '=' + inputs[i].value;
		if(inputs[i].id == 'par'+id){ //only get params before or equal the selected one
			break;
		}
	}
	var dataToSend = "action=updateMainFilter&id=" + id + params;
										//+"&" + $.param($("input:hidden", form).serializeArray());
	$.ajax({
		type: "GET",
		url: "/ajax.php",
		data: dataToSend,
		dataType: 'json',
		success: function(msg){
			//alert(msg);
		var params = msg.params;
		for(i in params){ //for each filtr param
			var id = "#par" + params[i].id;
			$(id).children('option').remove(); //first remove all option

			var values = params[i].values;
			for(j in values){ //add all new options
				$(id).append('<option value="'+ values[j].value+'">'+ values[j].text+' </option>');
			}

			$(id).removeAttr('disabled'); //reset disabled property
			if(!params[i].enabled){
				$(id).attr('disabled', 'disabled');
			}
		}
		//set submit button
		$("input:submit", form).removeAttr('disabled');
		if(!msg.submit){
			$("input:submit", form).attr('disabled', 'disabled');
		}
		else{
		url = $('input[name|="form_base_url"]', form).attr('value') + msg.url;
		$(form).attr('action',url);
		}
	} //end success
 });	//end ajax
}

/**
* Main filter form submit. Does not send data, only redirect to action url.
* @param form - form id
*/
function submit_form(form){
 url = $('#'+form).attr('action');
 $(location).attr('href',url);
 return false;
}

/**
* Filter form submit. Does not send data, only redirects to the url specified
* as a value of selected param.
* Used in param filter.
* @param id - param id (i.e. the select tag)
*/
function send_param_filter(id){
 param = '#par'+id;
 url = $(param).attr('value');
 $(location).attr('href',url);
 return false;
}

/**
 * Loads payments and shipping based on 'country_code' using
 * template 'dopravy_platby_rows.tpl' and appends them to alement with id = 'elem_id'.
 * @param elem_id - where to put result
 * @param country - country code or name
 * @param radio - radio button which must be checked to perform country selection
 */
var pay_index=0;
function loadPayShip(elem_id, country, radio){
 if(radio && !$('#'+radio).attr('checked')){
		return false;
 }
 pay_index++;
 var my_index = pay_index;

 //convert name to code using option id
 var elem = $('#'+elem_id);
 elem.empty();
 elem.append('<tr><td colspan="4" \
							style="color: red; font-weight: bold; \
							background-color: #cccccc; text-decoration: blink;">Načítám platby a dopravy pro vybraný stát ...</td></tr>');
 var dataToSend = "country=" + country;
	$.ajax({
		type: "GET",
		url: "loadPayShip.php",
		data: dataToSend,
		dataType: 'html',
		success: function(msg){
		if(my_index == pay_index){
			elem.empty();
			elem.append(msg);
		}
		}
	}
	);

	return false;
}

/**
 * Signs up for the neswletter using ajax request.
 * @param email - email address
 * @return
 */
function signUpNewsletter(email, invalid_email_message){
 if(!validateEmail(email)){
   alert(invalid_email_message);
   return false;
 }

 var dataToSend = "email=" + email + "&ajax=1";
  $.ajax({
   type: "GET",
   url: "/shop/singUpNewsletter/",
   data: dataToSend,
   dataType: 'text',
   success: function(msg){
    alert(msg);
   }
  }
  );
 return false;
}

/**
 * Simple email validation, checks @ position and last dot's position
 */
function validateEmail(email){
 var atpos=email.indexOf("@");
 var dotpos=email.lastIndexOf(".");
 return (atpos>0 && dotpos>atpos+1 && dotpos+2<email.length);
}
 
/**
 * Opinion pool vote.
 */
function opinionPool(id_pool, id_row){
  var dataToSend = "id_anketa=" + id_pool + "&id_row=" + id_row + "&ajax=1";
  $.ajax({
   type: "GET",
   url: "/shop/opinionPool/",
   data: dataToSend,
   dataType: 'text',
   success: function(msg){
    alert(msg);
   }
  }
  );
  return false;
}
