function show_contact_form(){
	if ($('.qcf_invisible').css('display')=="none"){ // contact form jeste neni otevreny
		$('#quick_contact_form').removeClass('one_quick_contact').removeClass('quick_contact_form_close').addClass('quick_contact_form_open')
		$('#quick_contact_form').css('top','-=20px');
		$('#online_zprava_label_div').removeClass('label_one_contact');
		$('#qcf_zprava').css({'width':'100%','background-color':'#FFF'});
		$('#qcf_zprava').animate({height:'7em'},500);
		$('.qcf_invisible').css('display','block');
	}
	
	if ($('#qcf_kontakt_2').val() || (is_telephone_number($('#qcf_kontakt').val())) && $('#qcf_zaslat_kopii').prop('checked')){
		$('.qcf_invisible_cond').css('display','block');
	}
}


function close_contact_form(){
	$('#quick_contact_form').css('top','+=20px');
	$('#quick_contact_form').removeClass('quick_contact_form_open').addClass('one_quick_contact').addClass('quick_contact_form_close');
	$('.qcf_invisible').css('display','none');	
	$('#qcf_zprava').css({'height':'1.8em','width':'200px','background-color':'#ccc'});
	$('.qcf_invisible_cond').css('display','none');	
	$('#online_zprava_label_div').addClass('label_one_contact');
}


function send_quick_contact_form_message(){
	if (check_message()){
		start_loading_animation('#quick_contact_form');
		var email = "";
		if (is_email_address($('#qcf_kontakt').val())){
			email = $('#qcf_kontakt').val();
		} else if (is_email_address($('#qcf_kontakt_2').val())){
			email = $('#qcf_kontakt_2').val();
		}
		
		var phone = "";
		if (is_telephone_number($('#qcf_kontakt').val())){
			phone = $('#qcf_kontakt').val();
		} else if (is_telephone_number($('#qcf_kontakt_2'))){
			phone = $('#qcf_kontakt_2').val();
		}  
		  
		var send_copy = 0;  
		if ($('#qcf_zaslat_kopii').prop('checked')){
			send_copy = 1;
		}
		
		$.get('ajax/send_message.py',
			{name:$('#qcf_jmeno').val(),
			 email:email,
			 phone_number:phone,
			 text:$('#qcf_zprava').val(),
			 send_copy:send_copy},
			 function(data){
			 	if (data.status){
			 		alert('Zpráva byla v pořádku odeslána');
			 		close_contact_form();
			 		$.cookies.del(true);
			 		load_quick_contact_form();
				}else{
					alert(data.message);
				}
				stop_loading_animation();
			 },
		 	'json');
	}
}

function append_text_to_quick_contact(text,from_element){
	//if(from_element){
	var clone = from_element.clone().appendTo('body');
	clone.css({'position':'absolute','left':from_element.offset().left,'top':from_element.offset().top});
	clone.animate({'left':$('#qcf_zprava').offset().left,'top':$('#qcf_zprava').offset().top},1000,function(){
		$('#qcf_zprava').val($('#qcf_zprava').val()+" "+text);
		$('#qcf_zprava').change();
		clone.animate({opacity:0},500);
		clone.remove()
		show_contact_form();
	});
	$('body,html').animate({scrollTop: 0}, 800);
}


function load_quick_contact_form(){
	//nahraje contact form z cookies
	$('#qcf_jmeno').val($.cookies.get('contact_name'));
	$('#qcf_zprava').val($.cookies.get('contact_message'));
	$('#qcf_zaslat_kopii').prop('checked',$.cookies.get('contact_send_copy'));
	
	if ($.cookies.get('contact_email')==""){
		$('#qcf_kontakt').val($.cookies.get('contact_telephone'));
	} else if ($.cookies.get('contact_telephone')==""){
		$('#qcf_kontakt').val($.cookies.get('contact_email'));
	} else {
		$('#qcf_kontakt').val($.cookies.get('contact_telephone'));
		$('#qcf_kontakt_2').val($.cookies.get('contact_email'));
	}
}

//function save_to_cookie(name){
//	$.cookies.set(name,$(this).val());
//}

function click_on_qcf_checkbox(){
	var zaslat_kopii = $(this).prop("checked");
	$.cookies.set('contact_send_copy',zaslat_kopii);	
	if (is_telephone_number($('#qcf_kontakt').val())){ //když v kontaktu je telefoni cislo, tak se otevre policko pro zadani mailu
		$('.qcf_invisible_cond').css('display','block');
		$.cookies.set('qcf_kontakt_2_display','block');
	}
}


function is_email_address(text){
	if (text == null){
		return false;
	}
	if (text.length==0){
		return false;
	}
	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	if(!emailReg.test(text)) {
		return false;
	} else {
		return true;
	}
}

function is_telephone_number(text){
	if (text == null){
		return false;
	}
	ntext = text.toString().split(' ').join(''); //bez mezer
	if (ntext.length==0){
		return false;
	}
	var phoneReg = /^((\+42[01])|(42[01]))?\d{9}$/ //české a slovenské telefony bez mezer
	if(!phoneReg.test(ntext)) {
		return false;
	} else {
		return true;
	}
}

function check_message(){
	//valid email, phone
	//name
	//text
	var no_error = true;
	var div_error = $('#qcf_error_message');
	if (!div_error.length == 0){
		div_error.remove();
	}
	if ($('#qcf_zprava').val().length == 0){
		show_error_message_qcf($('#qcf_zprava'),'Nenapsali jste žádný text do zprávy');
		no_error = false;		
	}
	if ($('#qcf_jmeno').val().length == 0){
		show_error_message_qcf($('#qcf_jmeno'),'Zadejte své jméno');
		no_error = false;
	}
	if (!is_email_address($('#qcf_kontakt').val()) && !is_telephone_number($('#qcf_kontakt').val()) && !is_email_address($('#qcf_kontakt_2').val()) && !is_telephone_number($('#qcf_kontakt_2').val())){
		// zadny z kontaktnich poli neobsahuje platny kontakt
		show_error_message_qcf($('#qcf_kontakt'),'Zadejte na vás platný telefonní nebo emailový kontakt');
		no_error = false;
	}
	if (!(is_email_address($('#qcf_kontakt').val()) || is_email_address($('#qcf_kontakt_2').val())) && $('#qcf_zaslat_kopii').prop("checked")){
		// kdyz zadne z poli neobsahuje mail a ma se poslat kopie na mail
		if (is_telephone_number($('#qcf_kontakt').val())){
			$('.qcf_invisible_cond').css('display','block');
			show_error_message_qcf($('#qcf_kontakt_2'),'Pro zaslání kopie na váš email zadejte jeho adresu');	
		}else{
			show_error_message_qcf($('#qcf_kontakt'),'Pro zaslání kopie na váš email zadejte jeho adresu');
		}
		no_error = false;
	}
	return no_error;
}

function show_error_message_qcf(element, text){
	var div_error = $('#qcf_error_message');
	if (div_error.length == 0){
		$('#qcf_odeslat').before('<div id="qcf_error_message" class="qcf_invisible"></div>');
		$('#qcf_error_message').css('display','block');
		var div_error = $('#qcf_error_message');
	}else{
		div_error.append('<br/>');	
	}
	div_error.append(text);
	element.addClass('qcf_error_input');	
}

function enter_to_input(){
	if ($(this).hasClass('qcf_not_entered_input')){
		$(this).removeClass('qcf_not_entered_input');
		$(this).val('');
		$(this).addClass('qcf_already_entered_input');
	}
	if ($(this).hasClass('qcf_error_input')){
		$(this).removeClass('qcf_error_input');
	}
}


function start_loading_animation(element){
	var e = $(element);
	var e_offset = e.offset();
	var div_loading = $('div.loading');
	div_loading.css({'left':e_offset.left,'top':e_offset.top, 'width':e.width(), 'height':e.height()});
	div_loading.css('display','block');
	var m = (e.height()-$('img.loading').height())/2;
	$('img.loading').css({'margin-top':m,'margin-bottom':m});
}


function stop_loading_animation(){
	$('div.loading').css('display','none');
}


function add_color_image(image){
	//image je jquery objekt
	var src = image.attr('src');
	var last_dot = src.lastIndexOf('.');
	image.attr('src',src.substr(0,last_dot)+"_color"+src.substr(last_dot));
}

function remove_color_image(image){
	//image je jquery objekt
	var src = image.attr('src');
	var last_ = src.lastIndexOf('_');
	image.attr('src',src.substr(0,last_)+src.substr(last_+6));
}

function set_events_to_quick_contact_form(){
	$("#qcf_jmeno").change(function(){$.cookies.set('contact_name',$(this).val());});
	$("#qcf_zprava").change(function(){$.cookies.set('contact_message',$(this).val());});	
	$("#qcf_kontakt").change(function(){
		var value = $(this).val();
		if (is_email_address(value)){
			$.cookies.set('contact_email',value);	
		} else if (is_telephone_number(value)){
			$.cookies.set('contact_telephone',value);	
		};
	});
	$("#qcf_kontakt_2").change(function(){
		var value = $(this).val();
		if (is_email_address(value)){
			$.cookies.set('contact_email',value);	
		} else if (is_telephone_number(value)){
			$.cookies.set('contact_telephone',value);	
		};
	});
	$('#qcf_zaslat_kopii').click(click_on_qcf_checkbox);
	
	$("#qcf_jmeno").focus(enter_to_input);
	$("#qcf_zprava").focus(enter_to_input);
	$("#qcf_kontakt").focus(enter_to_input);
	$("#qcf_kontakt_2").focus(enter_to_input);
	
	$("#qcf_zprava").focus(show_contact_form);
}

function emphasize_box(){
	$(this).find('h2').css({'text-decoration':'underline'});
	$(this).find('img').css({'opacity':'1','filter':'alpha(opacity=100)'});
}

function unemphasize_box(){
	$(this).find('h2').css({'text-decoration':'none'});
	$(this).find('img').css({'opacity':'0.7','filter':'alpha(opacity=70)'});
}

//------------------------------------------------------------------------------
$(document).ready(function(){
	set_events_to_quick_contact_form();
	load_quick_contact_form();
	
	$('a.box').hover(emphasize_box,unemphasize_box);
	
	//$('#lang_form_next').attr('val',$(location).attr('href'));
});

