/**
 * Funkce po nacteni stranky
 */
$(function() {
	// obrazky lightbox
	$('a[rel^="lightbox"]').lightBox(); // Select all links that contains lightbox in the attribute rel
	
	// externi odkazy do noveho okna
	$('a[rel="external"]').click(function() {
		window.open($(this).attr("href")); 
		return false; 
	});
		
	/**
	 * Naseptavac
	 */
	$('form').on('click', '.autocomplete', function(event){
	    $(this).autocomplete({
			source: "/find_street.php",
			minLength: 1,
			// Kvuli naseptavaci docasne vypnem automatickou kontrolu adresy 
			open: function(event, ui) {
				$('form').off('focusout', 'input[name="'+this.name+'"]');
			},
			close: function(event, ui) {
				$('form').on('focusout', 'input[name="'+this.name+'"]', function(){
					check_address(null, this);
				});
			}
	    });
	});
	
	/**
	 * Nastaveni pro tooltip
	 */
	$('.tooltip').tooltip({
		bodyHandler: function() {
			var text = this.tooltipText;
			return text;
		},
	    track: true, 
	    delay: 0, 
	    showURL: false,
	    fade: 250,
	    top: 20,
	    left: -50
	});
	
	
/**
* Prihlasovaci formular - skryti/zobrazeni popisku v input boxu
*/


	$("#name").focus(function(){
		if(typeof $('body').data('name') == 'undefined' ) {
			$('body').data('name','edited');
			$("#name").css("background-image","url(../css/images/jmeno.png)");
		}
	});
	$("#name").focusout(function(){
		if( $("#name").val() == '' ) {
			$("#name").css("background-image","url(../css/images/jmeno1.png)");
      $('body').removeData('name');
		}
	});
	$("#name1").focus(function(){
		if(typeof $('body').data('name1') == 'undefined' ) {
			$('body').data('name1','edited');
			$("#name1").css("background-image","url(../css/images/jmeno.png)");
		}
	});
	$("#name1").focusout(function(){
		if( $("#name1").val() == '' ) {
			$("#name1").css("background-image","url(../css/images/jmeno1.png)");
      $('body').removeData('name1');
		}
	});
	$("#pass").focus(function(){
		if(typeof $('body').data('pass') == 'undefined' ) {
			$('body').data('pass','edited');
			$("#pass").css("background-image","url(../css/images/heslo.png)");
		}
	});
	$("#pass").focusout(function(){
		if( $("#pass").val() == '' ) {
			$("#pass").css("background-image","url(../css/images/heslo1.png)");
      $('body').removeData('pass');
		}
	});

});


/**
 * Prohozeni/prejmenovani hodnot mezi inputy o_+name a a_+name
 * @param name
 * @param type [value|name|id] nastavenim rikame, ktery atribut chceme prejmenovat
 * @returns {Boolean}
 */
function swap_names(name, type) 
{
	if (!type) type = 'name';
	var a = $('['+(type == 'id' ? 'id' : 'name')+'="o_'+name+'"]');
	//if (!a.length) return false;
	var b = $('['+(type == 'id' ? 'id' : 'name')+'="a_'+name+'"]');
	
	if (a.length) a.attr(type, 'a_'+name);
	if (b.length) b.attr(type, 'o_'+name);
	
	return true;
}

/**
 * Prohodi tabulky odesilatele a adresata a prejmenuje elementy.
 */
function swap_form() 
{	
	$('#o_address').swapWith('#a_address');

	// prejmenujem elementy
	swap_names('address', 'id');
	swap_names('adresar');
	swap_names('company');
	swap_names('ulice');
	swap_names('street_id');
	swap_names('check', 'id');
	swap_names('street_data');
	swap_names('save');
	swap_names('mesto');
	swap_names('name');
	swap_names('tel');
	
	// vratime psc na sve misto
	var psc = $('input[name="a_psc"]');
	if (psc.length) {
		$('input[name="a_mesto"]').parent().parent().after( psc.parent().parent() );
	}
	
	//swap_checked_addresses();
	return false;
}

function require_internall(obj)
{	
	if (obj.checked) obj.form.internal_text.disabled = false;
	else obj.form.internal_text.disabled = true;

}

/**
 * Prepnuti prihlasovaciho formulare a zapomenuteho hesla
 */
function toggle_login_forms () {
	jQuery('#login_form').toggle('fast');
	jQuery('#renew_pass_form').toggle('fast');
	return false;
}

function reg_company(obj)
{
	var tags = new Array();
	tags[0] = document.getElementById('company');
	tags[1] = document.getElementById('fax');
	tags[2] = document.getElementById('ic');
	tags[3] = document.getElementById('dic');
	
	tags[4] = document.getElementById('extended_info');
	tags[5] = document.getElementById('invoice_contact');
	// tags[6] = document.getElementById('other_setting');
	
	
	if (obj.value == 1) {
		for (var i = 0; i < tags.length; i++) {
			tags[i].className = tags[i].className + ' hidden';
		}
	} else {
		for (var i = 0; i < tags.length; i++) {
			tags[i].className = tags[i].className.replace(/hidden/, "");
		}
	}
}

function same_addresses(obj)
{
	var tags = new Array();
	tags[0] = document.getElementById('f_company');
	tags[1] = document.getElementById('f_ulice');
	tags[2] = document.getElementById('f_cp');
	tags[3] = document.getElementById('f_mesto');
	tags[4] = document.getElementById('f_psc');
	
	if (obj.checked) {
		for (var i = 0; i < tags.length; i++) {
			tags[i].disabled = true;
		}
	} else {
		for (var i = 0; i < tags.length; i++) {
			tags[i].disabled = false;
		}
	}
}

// JavaScript Document
function kamm(tel, mob, eml)
{	
	var p = document.form.potvrzeni;
	var k = document.form.kam;
	if (p.options[0].selected) 		{k.disabled = true; k.value = ''; }
	else if (p.options[1].selected) {k.disabled = false; k.value = tel; }
	else if (p.options[2].selected) {k.disabled = false; k.value = mob; }
	else if (p.options[3].selected) {k.disabled = false; k.value = eml; }
}	

/**
 * Prepinani dobirky ano/ne
 * @param obj kliknuty input
 */
function cod_switch_fn(obj)
{
	if ($(obj).val() == '1') {
		$('#cod_extra').show();
		// pokud ma dobirka nastaveno 'penize zpet', nastavime zpatecni doruceni
		checked_cod_money_back();
	} else {
		cod_check_zp(false);
		$('#cod_extra').hide();
	}
}

function cod_money_fn(obj)
{
	if ($(obj).val() == '1') {
		$('input[name="cod_vs"]').attr('disabled', false);
		$('input[name="cod_account_prefix"]').attr('disabled', false);
		$('input[name="cod_account"]').attr('disabled', false);
		$('input[name="cod_bank"]').attr('disabled', false);
		cod_check_zp(false);
	} else {
		$('input[name="cod_vs"]').attr('disabled', true);
		$('input[name="cod_account_prefix"]').attr('disabled', true);
		$('input[name="cod_account"]').attr('disabled', true);
		$('input[name="cod_bank"]').attr('disabled', true);
		cod_check_zp(true);
	}
}

/**
 * Pokud je zapnuta dobirka a ma nastaveno 'penize zpet', vynutime zpatecni doruceni
 */
function checked_cod_money_back()
{
	var cod_is_on = false;
	// overime, zda je zapnuta dobirka
	$('input[name="cod_switch"]').each(function(key, object){
		if ($(object).val() == 1 && $(object).attr('checked') == 'checked') {
			cod_is_on = true;
		} 
	});
	
	if (cod_is_on) {
		// projdem oba radiobuttony
		$('#cod_extra input[name="cod_money_switch"]').each(function(key, object){
			// pokud je zaskrtnuto 'penize zpet', zaskrtnem zpatenci doruceni
			if ($(object).val() == 0 && $(object).attr('checked') == 'checked') {
				cod_check_zp(true);
			} 
		});
	}
}

/**
 * Dobirkova funkce, zaskrtne pozadovany stav zpatecni zasilky
 * @param int check 0 - nezaskrtnout, 1 - zaskrtnout  
 * pri nastaveni hodnoty na 1, je checkbox vypnut, aby se nedal zmenit jeho stav
 */
function cod_check_zp(check)
{
	check = check ? true : false;
	$('input[name="zp"]').attr('checked', check);
	$('input[name="zp"]').attr('disabled', check);
}

function hot_whoo(obj) /* zobrazuje/skryva radek s volbami kdo je platce zasilky */ 
{
	var hot_who = document.getElementById('hot_who');
	if (obj.value == 1) hot_who.className = '';
	else hot_who.className = 'hidden';
}

function amountt()
{
	document.form.ins_amount.disabled = true;
	if (document.form.pojisteni.options[document.form.pojisteni.selectedIndex].value == 'PPR') document.form.ins_amount.disabled = false;
}

function date_time_dis (value)
{
	document.form.cas.disabled=value;
	document.form.datum.disabled=value;
}

function deliver_at_ (obj)
{
	var disable = $(obj).is(':checked') ? false : true;
	$('input[name="deliver_at_time"]').attr('disabled', disable);
	$('select[name="deliver_at_date"]').attr('disabled', disable);
}

/**
 * Zmenou datumu nebo casu ve vyzvednuti, se prepocte cas doruceni
 * 
 * @return null
 */
function change_deliver_at()
{
	var pickup_at = $('select[name="datum"]').val() + ' ' + $('input[name="cas"]').val();
	var id_price = $('select[name="id_price"]').val();
	
	$.post(self.location.pathname, {ajaxGetPriceData: id_price, pickup_at: pickup_at}, function(data) {
		var deliver_at_time = $('input[name="deliver_at_time"]');
		var deliver_at_date = $('select[name="deliver_at_date"]');
		
		if (data.time_deliver == 0) deliver_at_time.val(''); // vypnem hodnotu casu
		else deliver_at_time.val(data.deliver_at_time);
		deliver_at_date.val(data.deliver_at_date);

	}, "json");
}

/**
 * Prepnuti kategorie v objednavkovem formulari Praha
 * 
 * @param url
 * @param id_price - id_price
 * @return null
 */
function category_change(id_price)
{	
	// nactem nastaveny cas vyzvednuti i z vypnutych inputu
	var pickup_at = $('select[name="datum"]').val() + ' ' + $('input[name="cas"]').val();
	
	$.post(self.location.pathname, {ajaxGetPriceData: id_price, pickup_at: pickup_at}, function(data) {
		var deliver_at_time = $('input[name="deliver_at_time"]');
		var deliver_at_date = $('select[name="deliver_at_date"]');
		
		// neni k dispozici cas doruceni => deaktivujem moznost nastaveni casu doruceni, vypnem vsechny inputy
		if (data.time_deliver == 0) {
			$('input[name="casd"]').attr('checked', false) // zrusime pripadne zaskrtnuti checkboxu
			$('input[name="casd"]').attr('disabled', true); // vypnem checkbox
			deliver_at_time.val(''); // vypnem hodnotu casu
			deliver_at_time.attr('disabled', true); // vypnem input
			deliver_at_date.attr('disabled', true); // vypnem input
		} else {
			$('input[name="casd"]').attr('disabled', false);
			deliver_at_time.val(data.deliver_at_time);
			deliver_at_date.val(data.deliver_at_date);
		}
			
		// 	nahradi text u elementu s ID activeText za nacteny
		$('#activeText').html(data.active_text);
	}, "json");
}

function submit_form() {
	
}

function click()
{
	if (document.all)
	{
	if(event.button == 2 || event.button==3) alert('Neklikej!');
	}
}
document.onmousedown=click

/**
 * Zobrazit dialog
 * (Detail ceny po dokonceni objednavky)
 * 
 * @param classname 
 * @returns {Boolean}
 */
function showDialog(classname)
{
	$('.dialog.'+classname).dialog({
		modal: true, // ztmaveni pozadi
		width: 'auto'
	});
	return false;
}

/**
 * Zobrazit dialog s obsahem stazenym pres ajax
 * (Detail ceny v objednavkach a fakturach)
 * @param title
 * @returns {Boolean}
 */
function showAjaxDialog(classname, id)
{
	$.post(self.location.pathname, { ajaxDialog: true, id: id }, function (data) {
		$("body").append(data);
		$(".dialog."+classname).dialog({ 
			width: 'auto',
			modal: true,
			close: function(event, ui){
	            $(this).remove();
	        }
		});
	});
	return false;
}

function showAjaxPrintDialog(title)
{
	$.post(self.location.pathname, { print: true }, function (data) {
		$("body").append("<div class=\"ajaxdialog\"></div>");
		$("body div.ajaxdialog").html(data);
		$(".ajaxdialog").dialog({ 
			width: 'auto',
			modal: true,
			title: title,
			close: function(event, ui){
	            $(this).remove();
	        }
		});
		window.print();
	});
	return false;
}


