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;
}

$(document).ready(function() {
	$('#jcarousel').jcarousel();
	$('a.fancybox').fancybox({
		titleShow: false
	});
	$('#form-varianty').validate();
	$('#form-vyhledavani').validate({
		rules: {
			dotaz: {required: true, minlength: 2}
		},
		errorLabelContainer: $('#form-vyhledavani-error')
	});
	$('#form-newsletter').validate({
		rules: {
			email: {required: true, email: true}
		},
		errorLabelContainer: $('#form-newsletter-error')
	});
	$('#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}
		}
	});
	$('#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}
		}
	});
	$('#form-dotaz').validate({
		rules: {
			jmeno: {required: true},
			prijmeni: {required: true},
			email: {required: true, email: true},
			subject: {required: true},
			dotaz: {required: true}
		}
	});
	$('#div-4 form').bind('submit', function() {
		if ($('#f1_jmeno').val().length < 1 || $('#f1_prijmeni').val().length < 1 || $('#f1_email').val().length < 1 || $('#f1_dotaz').val().length < 1) {
			alert('Vyplňte prosím povinné položky.');
			return false;
		}
		$.ajax({
			type: 'POST',
			cache: false,
			url: '/product/ask/',
			data: $(this).serializeArray(),
			success: function(data) {
				$.fancybox('<span style="color: #000;">' + data + '</span>');
			}
		});
		return false;
	});
	$('#div-5 form').bind('submit', function() {
		if ($('#f2_jmeno').val().length < 1 || $('#f2_email').val().length < 1) {
			alert('Vyplňte prosím povinné položky.');
			return false;
		}
		$.ajax({
			type: 'POST',
			cache: false,
			url: '/product/recommend/',
			data: $(this).serializeArray(),
			success: function(data) {
				$.fancybox('<span style="color: #000;">' + data + '</span>');
			}
		});
		return false;
	});
	$('[placeholder]').focus(function() {
		var input = $(this);
		if (input.val() == input.attr('placeholder')) {
			input.val('');
			input.removeClass('placeholder');
		}
	}).blur(function() {
		var input = $(this);
		if (input.val() == '' || input.val() == input.attr('placeholder')) {
			input.addClass('placeholder');
			input.val(input.attr('placeholder'));
		}
	}).blur().parents('form').submit(function() {
		$(this).find('[placeholder]').each(function() {
			var input = $(this);
			if (input.val() == input.attr('placeholder')) {
				input.val('');
			}
		})
	});
	
	// zmena ceny v detailu produktu po kliku na variantu
	$('.jQcena').click(function() {
		$('#jQcena').html($(this).attr('data-cena'));
	});
	
	/*
	$('#slider').easySlider({
		prevText: '',
		nextText: ''
	});
	*/
});

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 = $.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.find('tr[id!="platby_loading"]').remove();
 $('#platby_loading').show();
  var dataToSend = "country=" + country;
	$.ajax({
		type: "GET",
		url: "/order/loadPayShip/",
		data: dataToSend,
		dataType: 'html',
		success: function(msg){
		if(my_index == pay_index){
      $('#platby_loading').hide();
			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;
}

//Separated payments and shipping
/**
* Shows payments for selected shipping based on rows' id.
*/
function selectPayments(id_ship){
// alert('tr[id|="pay_'+id_ship+'"]');
 $('#platby').children().hide();
 $('tr[id^="pay_'+id_ship+'"]').show();
 $('tr[id^="pay_'+id_ship+'"]:eq(0)').find("input").attr('checked', 'checked');
}

/**
* Shows shippinh for selected payment based on rows' id.
*/
function selectShipping(id_pay){
// alert('tr[id|="pay_'+id_ship+'"]');
 $('#dopravy').children().hide();
 $('tr[id^="ship_'+id_pay+'"]').show();
 $('tr[id^="ship_'+id_pay+'"]:eq(0)').find("input").attr('checked', 'checked');
}

/**
 * Loads payments and shipping based on 'country_code' using
 * template 'dopravy_platby_rows.tpl' and appends payments to element with
 * id = 'pay_elem_id' and shipping to element with id = 'ship_elem_id'.
 * @param country - country code or name
 * @param radio - radio button which must be checked to perform country selection
 */
var pay_index=0;
function loadPayShipSeparately(pay_elem_id, ship_elem_id, country, radio){
 if(radio && !$('#'+radio).attr('checked')){
		return false;
 }
 pay_index++;
 var my_index = pay_index;

 var pay_elem = $('#'+pay_elem_id);
 var ship_elem = $('#'+ship_elem_id);

 pay_elem.find('tr[id!="platby_loading"]').remove();
 ship_elem.find('tr[id!="platby_loading"]').remove();

 $('#platby_loading').show();
  var dataToSend = "country=" + country + "&separately=1";
	$.ajax({
		type: "GET",
		url: "/order/loadPayShip/",
		data: dataToSend,
		dataType: 'json',
		success: function(msg){
		if(my_index == pay_index){
      $('#platby_loading').hide();
      pay_elem.append(msg.pay);
      ship_elem.append(msg.ship);
			
		}
		}
	}
	);
	return false;
}

