function do_submit(form_id)
{

  document.getElementById(form_id).submit();

  return false;

}

function set_external_links()
{

  if (!document.getElementsByTagName) {

    return;

  }

  var anchors = document.getElementsByTagName('a');

  for (var i = 0; i < anchors.length; i++) {

   var anchor = anchors[i];

   if (anchor.getAttribute('href') && anchor.getAttribute('rel') == 'external') {

     anchor.target = "_blank";

   }

  }

}

window.onload = set_external_links;

function set_visible(id, title_arrow_id)
{

	if (document.getElementById(id).className=='career_content')

	{

		document.getElementById(id).className='career_content_visible'

		document.getElementById(title_arrow_id).className='career_top_right_up'

	}

	else

	{

		document.getElementById(id).className='career_content'

		document.getElementById(title_arrow_id).className='career_top_right'

	}

			

	return false;

}

function in_array(needle, haystack, argStrict) {

    var key = '', strict = !!argStrict;
 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        if (typeof(needle)=='string') {
            str = haystack.toString();
            return (str.search(needle) !== false);
        }
 
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }
 
    return false;
}

function email_check(str) {
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   $('#reg_errors').html("Hibás e-mail cím formátum!");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   $('#reg_errors').html("Hibás e-mail cím formátum!");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    $('#reg_errors').html("Hibás e-mail cím formátum!");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    $('#reg_errors').html("Hibás e-mail cím formátum!");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    $('#reg_errors').html("Hibás e-mail cím formátum!");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    $('#reg_errors').html("Hibás e-mail cím formátum!");
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    $('#reg_errors').html("Hibás e-mail cím formátum!");
		    return false;
		 }

 		 return true;					
	}


function do__submit(form_position, element_positions)
{
	if (!form_position) {
		var form_position = 0;
	}

	if (!element_positions) {
		var element_positions = new Array();
	}

	var form_elements = document.forms[form_position].elements.length;
	for (i = 0; i < form_elements; i++) {
		var current_value = document.forms[form_position].elements[i].value;
		if (in_array(i, element_positions) == true && (current_value.match(/^\s+$/) || current_value == '')) {
			$('#error_msg_udm').html('Nincs minden szükséges adat megadva!');
			return false;
		}
	}
			    	
	document.forms[form_position].submit();
	return false;	
}

function in_array(needle, haystack) {
		for (j = 0; j < haystack.length; ++j) {
			if (haystack[j] == needle) {
				return true;
			}
		}
		return false;
}

function limitTextarea(limitField, limitNum) {
    
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
        popupWindow(limitNum+' karakternél többet nem írhat a mezőbe!');
    } 
    
}

function number_format (number, decimals, dec_point, thousands_sep) {
    // Formats a number with grouped thousands
    //
    // version: 906.1806
    // discuss at: http://phpjs.org/functions/number_format
    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://getsprink.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // +    revised by: Luke Smith (http://lucassmith.name)
    // +     bugfix by: Diogo Resende
    // +     bugfix by: Rival
    // +     input by: Kheang Hok Chin (http://www.distantia.ca/)
    // +     improved by: davook
    // +     improved by: Brett Zamir (http://brett-zamir.me)
    // +     input by: Jay Klehr
    // +     improved by: Brett Zamir (http://brett-zamir.me)
    // +     input by: Amir Habibi (http://www.residence-mixte.com/)
    // +     bugfix by: Brett Zamir (http://brett-zamir.me)

    var n = number, prec = decimals;
 
    var toFixedFix = function (n,prec) {
        var k = Math.pow(10,prec);
        return (Math.round(n*k)/k).toString();
    };
 
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);
    var sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep;
    var dec = (typeof dec_point === 'undefined') ? '.' : dec_point;
 
    var s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;
 
    var abs = toFixedFix(Math.abs(n), prec);
    var _, i;
 
    if (abs >= 1000) {
        _ = abs.split(/\D/);
        i = _[0].length % 3 || 3;
 
        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');
        s = _.join(dec);
    } else {
        s = s.replace('.', dec);
    }
 
    var decPos = s.indexOf(dec);
    if (prec >= 1 && decPos !== -1 && (s.length-decPos-1) < prec) {
        s += new Array(prec-(s.length-decPos-1)).join(0)+'0';
    }
    else if (prec >= 1 && decPos === -1) {
        s += dec+new Array(prec).join(0)+'0';
    }
    return s;
}

var timer = 0;

var scrolledX, scrolledY;
var centerX, centerY;
function popupWindow(msg)
{
	var Xwidth = 300;
	var Yheight = 100;
	if( self.pageYOffset ) {
		scrolledX = self.pageXOffset;
		scrolledY = self.pageYOffset;
	} else if( document.documentElement && document.documentElement.scrollTop ) {
		scrolledX = document.documentElement.scrollLeft;
		scrolledY = document.documentElement.scrollTop;
	} else if( document.body ) {
		scrolledX = document.body.scrollLeft;
		scrolledY = document.body.scrollTop;
	}
	
	if( self.innerHeight ) {
		centerX = self.innerWidth;
		centerY = self.innerHeight;
	} else if( document.documentElement && document.documentElement.clientHeight ) {
		centerX = document.documentElement.clientWidth;
		centerY = document.documentElement.clientHeight;
	} else if( document.body ) {
		centerX = document.body.clientWidth;
		centerY = document.body.clientHeight;
	}
	
	var leftOffset = scrolledX + (centerX - Xwidth) / 2;
	var topOffset = scrolledY + (centerY - Yheight) / 2;
	// The initial width and height of the div can be set in the
	// style sheet with display:none; divid is passed as an argument to // the function
	
	var divToOpen = $("<div/>").addClass("cartaction").css("width", Xwidth).css("height", Yheight).css("position", "absolute").css("top", topOffset).css("left", leftOffset).css("backgroundColor", "#000").css("lineHeight", "100px").css("textAlign", "center").css("opacity", 0.8).css("color", "#fff").css("fontWeight", "bold").html(msg);
	$("#body").append(divToOpen);
	/*
	var o=document.getElementById(divid);
	var r=o.style;
	r.position='absolute';
	r.top = topOffset + 'px';
	r.left = leftOffset + 'px';
	r.display = "block";*/
	setTimeout("removeBox()", 1000);
	 
}

function removeBox()
{
	$(".cartaction").remove();
}

function send_offer(product_id){
	var product_options = $('input[name="product_options_' + product_id + '"]:checked').map(function(){ return $(this).val(); }).get().join("-");
	var user_description = $("#offer_description").attr("value");
	$.ajax({
		type: "POST",
		url: "/termekek/ajanlatkeres",
		data: "product_id=" + product_id + "&product_amount=1," + "&user_description=" + user_description + "&product_options=" + product_options,
		async: false,
		dataType: "json",
		success: function(data){
    		if(data.success){
    			$('.ajanlat').toggle();
    			$("#offer_description").val("");
			}
    		popupWindow(data.message);
		}
	});
}

function add_to_cart(id){
	var amount = parseInt($("#product_amount_" + id).attr('value'));
	if(isNaN(amount) || amount < 1){
		popupWindow("Kérem pozitív számot adjon meg!");
	}
	else{
		$.ajax({
			type: "POST",
			url: "/kosar/belerak",
			data: "product_id=" + id + "&product_amount=" + amount,
			async: false,
			dataType: "json",
			success: function(data){
	    		if(data.success){
	    			//$("#cart_box").html(data.number + " tétel - " + number_format(1.27 * data.total) + " Ft");
	    			$("#cart_box").html("<b>" + data.number + " tétel</b>  Összesen: <b>" + number_format(1.27 * data.total) + " Ft</b><a href=\"kosar\" title=\"Kosár\" class=\"plink header_cart_lnk\">Kosár</a>");
				}
	    		popupWindow(data.message);
			}
		});
	}
}

function update_cart(id)
{
	var amount = parseInt($("#product_amount_" + id).attr('value'));
	if(isNaN(amount) || amount < 1){
		popupWindow("Kérem pozitív számot adjon meg!");
	}
	else{
		$.ajax({
			type: "POST",
			url: "/kosar/frissit",
			data: "product_id=" + id + "&product_amount=" + amount,
			async: false,
			dataType: "json",
			success: function(data){
	    		if(data.success){
	    			$("#cart_box").html("<b>" + data.number + " tétel</b>  Összesen: <b>" + number_format(1.27 * data.total) + " Ft</b><a href=\"kosar\" title=\"Kosár\" class=\"plink header_cart_lnk\">Kosár</a>");
		    		$("#cart_total").html(number_format(1.27 * data.total) + " Ft");
	    			$("#product_total_" + id).html(number_format(1.27 * data.product_price * data.product_amount) + " Ft");
				}
				popupWindow(data.message);
			}
		});
	}
}

function delete_from_cart(id)
{
	var conf = confirm('Biztosan törölni akarja a terméket?');
	if(conf){
		$.ajax({
			type: "POST",
			url: "/kosar/torol",
			data: "product_id=" + id,
			async: false,
			dataType: "json",
			success: function(data){
	    		if(data.success){
	    			$("#cart_box").html("<b>" + data.number + " tétel</b>  Összesen: <b>" + number_format(1.27 * data.total) + " Ft</b><a href=\"kosar\" title=\"Kosár\" class=\"plink header_cart_lnk\">Kosár</a>");
		    		$("#cart_total").html(number_format(1.27 * data.total) + " Ft");
	    			$("#product_" + id).remove();
				}
	    		popupWindow(data.message);
			}
		});
	}
}

function login(){
	var user_email = $("#user_email").attr('value');
	var user_password = $("#user_password").attr('value');
	if(user_email && user_password){
		$.ajax({
			type: "POST",
			url: "/belepes",
			data: "user_email=" + user_email + "&user_password=" + user_password,
			async: false,
			dataType: "json",
			success: function(data){
	    		if(data.success){
	    			location.reload();
				}else{
					popupWindow(data.message);
				}
			}
		});
	}
}

function search_product()
{
	var search_text = $("#search_text").attr('value');
	if(search_text.length > 2){
		$('#search_form').submit();
	}else{
		popupWindow('Legalább 3 karaktert adjon meg!');
	}
}

function check_order_accept(){
	is_checked = $('#order_accept').is(':checked');
	if(is_checked)
		return true;
	else
		return false;
}

function save_product(product_id)
{
	//$.cookie('products', null);return;
	var products = $.cookie('products');
	if(products == null){
		products_array = [product_id];
	}
	else{
		var products_array = products.split('-');
		//alert(products_array.indexOf(product_id.toString()));
		if(products_array.indexOf(product_id.toString()) == -1)
			products_array.unshift(product_id);
		if(products_array.length > 10)
			products_array.pop();
	}
	//alert(products_array.join('-'));
	$.cookie('products', products_array.join('-'), {expires: 30, path: '/'})
	popupWindow('A termék sikeresen elmentve!');
}

function delete_saved_product(product_id)
{
	var products = $.cookie('products');
	if(products != null){
	    products = products.split('-');
	    var index = products.indexOf(product_id.toString());
	    if(index>=0) products.splice(index, 1);
	} else {
        products = [];
    }
  	$.cookie('products', products.join('-'), {expires: 30, path: '/'})
	//terméket kivesszük a listából
	$('#action_item_'+product_id).animate({ 
                height: "0px",
                opacity: 0.0
                }, 500, "linear" , function(){
        $(this).remove();
    });
	popupWindow('A termék sikeresen törölve!');
}

function set_same_data()
{
    var fields_1 = new Array('u_billing_name', 'u_billing_zip', 'u_billing_city', 'u_billing_address');
    var fields_2 = new Array('u_shipping_name', 'u_shipping_zip', 'u_shipping_city', 'u_shipping_address');
    
    var checked = $("#same_data").is(':checked');
    
    if (checked == true)
    {
        var cct=fields_1.length;
        while(cct)
        {
            cct--;
            $("input[name='users["+fields_2[cct]+"]']").val($("input[name='users["+fields_1[cct]+"]']").val());
        }
    }
}

function Validate_Reg_Form(formName)
{
    var errors_msg = new Array('El kell fogadnia a Rendelési feltételeket!');
    
    var order_cond_checked = $('#order_condition').is(':checked');
    
    if (order_cond_checked == true)
    {
        return do_submit(formName);
    }
    else
    {
        popupWindow(errors_msg[0]);
        return false;
    }
}

function Validate_Contact_Form(formName)
{
    var errors_msg = new Array('', 'A név kitöltése kötelező!', 'Az email kitöltése kötelező!', 'Az üzenet kitöltése kötelező!', 'Rossz email cím formátum!');
    
    for(x=1;x<=3;x++){
        $('#contact_data_'+x).removeClass('error');
    }
    
    for(x=1;x<=3;x++){
        if ($('#contact_data_'+x).val()==""){
            $('#contact_data_'+x).addClass('error');
            popupWindow(errors_msg[x]);
            return false;
        }
    }
    
    if (email_check($('#contact_data_2').val())==false){
		$('#contact_data_2').addClass('error');
		popupWindow(errors_msg[4]);
        return false;
	}
    
    return do_submit(formName);
}

function Validate_CallBack_Form(formName)
{
    var errors_msg = new Array('', 'A név kitöltése kötelező!', 'A telefonszám kitöltése kötelező!');
    
    for(x=1;x<=2;x++){
        $('#callb_data_'+x).removeClass('error');
    }
    
    for(x=1;x<=2;x++){
        if ($('#callb_data_'+x).val()==""){
            $('#callb_data_'+x).addClass('error');
            popupWindow(errors_msg[x]);
            return false;
        }
    }
    
    return do_submit(formName);
}

function Validate_Question_Form(formName)
{
    var errors_msg = new Array('A kérdés mező kitöltése kötelező!');
    
    if ($('#question_text').val()==""){
        $('#question_text').addClass('error');
        $('#question_form_error').html(errors_msg[0]);
        //popupWindow(errors_msg[0]);
        return false;
    }
    
    return do_submit(formName);
}

function offer_option_checker(id, prod_id)
{
    is_checked = $('#offer_opt_'+id).is(':checked');
    
    $('#popup_offer_opt_'+id).attr('checked', is_checked);
        
    //ár változtatása:
    var type = new Array();
    
    $.each($("input[name='offer_data_options[]']:checked"), function () {
            type.push($(this).val());
    });

	$.ajax({
	type: "POST",
	url: "/termekek/opcios_arvaltoztatas",
	data: {
            "product_id" : prod_id,
            "checked[]" : type
    },
	async: false,
	dataType: "json",
	success: function(data){
		if(data.status == 'ok'){
			$('#offer_price').html('Alapár (irányár): '+number_format(data.product_price)+' Ft');
		}
		else
		{
            $('#offer_price').html('<img src="images/0/ajax-loader.gif" />');

        }
	}
	}); 
}

function offer_amount_changer(id)
{
    var amount = parseInt($("#offer_product_amount_" + id).attr('value'));
	
    if(isNaN(amount) || amount < 1)
    {
		popupWindow("Kérem pozitív számot adjon meg!");
	}
	else
    {
        $('#offer_quantity_text').html(amount);
        $('#offer_quantity').val(amount);
    }
}

function Validate_Offer_Form(formName)
{
    var errors_msg = new Array('A megjegyzés mező kitöltése kötelező!');
    
    if ($('#offer_description').val()==""){
        $('#offer_description').addClass('error');
        $('#offer_form_error').html(errors_msg[0]);
        //popupWindow(errors_msg[0]);
        return false;
    }
    
    return do_submit(formName);
}

function product_main_pic_changer(id)
{
    $('.product_main_picture').css('display', 'none');
	$('#product_picture_'+id).css('display', 'block');
    
    return false;
}
