

var tax="1.27";
var currency="Ft";

function mustBeNum(obj) {
    return !isNaN(obj.value);
}


var regLoader, loginLoader;
function showRegBox() {
    if ($("#regExists").length>0) {
        $("#login_box").fadeOut(500);
        $("#registration_box").fadeToggle(500);  
    } else {
        regLoader=setTimeout(function() {
            $("#registration_box").html("Betöltés...");
            $("#login_box").fadeOut(500);
            $("#registration_box").fadeIn(500);
        },750);
        
        $.post("/registration.php",{},function(data) {
            clearTimeout(regLoader);
            $("#login_box").fadeOut(500);
            $("#registration_box").fadeIn(500);
            $("#registration_box").html(data);
            $("input[title]").tooltip({
               offset: [10, 2],
               effect: 'slide'
            });
        });
        
        
    }
}
function showLoginBox() {
    if ($("#loginExists").length>0) {
        $("#registration_box").fadeOut(500);
        $("#login_box").fadeToggle(500);  
    } else {
        loginLoader=setTimeout(function() {
            $("#login_box").html("Betöltés...");
            $("#registration_box").fadeOut(500);
            $("#login_box").fadeIn(500);
        },750);
        
        $.post("/login.php",{'redirectTo':requestData['requestURI']},function(data) {
            clearTimeout(loginLoader);
            $("#registration_box").fadeOut(500);
            $("#login_box").fadeIn(500);
            $("#login_box").html(data);
            
            $("input[title]").tooltip({
               offset: [10, 2],
               effect: 'slide'
            });
        });
        
        
    }
}
    
    
    
function sliderDec(selector,decValue,valueIndex) {
    var $inst=$(selector);
    try {
        alert($inst.slider("values",valueIndex));
        
        $inst.slider("values",valueIndex,$inst.slider("values",valueIndex)-decValue);    
    } catch(ex) {
        alert(ex);    
    }
}

function sliderInc(selector,incValue,valueIndex) {
    var $inst=$(selector);
    try {
        $inst.slider("values",valueIndex,$inst.slider("values",valueIndex)+incValue);    
    } catch(ex) {
        alert(ex);    
    }
}


$(function() {
    $(".first-in-row").each(function() {
        var $this=$(this);
        
    });
    
    
    
    try {
        $("input[title]").tooltip({
           offset: [10, 2],
           effect: 'slide'
        }).dynamic({ bottom: { direction: 'down', bounce: true } });
    } catch(err) {
        
    }
    
    try {
    	$("#adv_search_range").slider({
    		range: true,
    		min: 0,
    		max: 22012829,
            step: 1000,
    		values: [ 0, 22012829 ],
    		stop: function( event, ui ) {
                $("#adv_search_min").val(ui.values[0]);
                $("#adv_search_max").val(ui.values[1]);

                $("#adv_search_amount").html(
                    "<div style='float: left; clear: none;'>Ár intervallum: <strong class='pricetag'>"+ui.values[0]+" Ft</strong> és </div> "+
            		"<div style='float: left; clear: none;'> <strong class='pricetag'>"+ui.values[1]+" Ft</strong> között</div>"+
                    "<div style='clear: both;'></div>"
                );
    		},
            
            slide: function( event, ui ) {
                $("#adv_search_amount").html(
                    "<div style='float: left; clear: none;'>Ár intervallum: <strong class='pricetag'>"+ui.values[0]+" Ft</strong> és </div> "+
            		"<div style='float: left; clear: none;'> <strong class='pricetag'>"+ui.values[1]+" Ft</strong> között</div>"+
                    "<div style='clear: both;'></div>"
                );
    		}
    	});
        
    	$("#adv_search_amount").html(
            "<div style='float: left; clear: none;'>Ár intervallum: <strong class='pricetag'>0 Ft</strong> és </div> "+
    		"<div style='float: left; clear: none;'> <strong class='pricetag'>22012829 Ft</strong> között</div>"+
            "<div style='clear: both;'></div>"
        );
    } catch(e) {
        alert(e);    
    }

    try {
    	$( "#price_range" ).slider({
    		range: true,
    		min: 0,
    		max: 22012829,
            step: 500,
    		values: [ 0, 22012829 ],
    		stop: function( event, ui ) {
                //alert(ui.toSource());
                $(".products_content").html("Töltés...");
                
                $.post("/refresher.php",{ "action":"filterByPrice", "min":ui.values[0], "max":ui.values[1], "mainp":"", "":"" },function(data) {
                    $(".products_content").html(data);
                });
                //$( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
                $("#amount").html(
                    "<div style='float: left; clear: none;'>"+ui.values[0]+" Ft</div>"+
            		"<div style='float: right; clear: none;'>"+ui.values[1]+" Ft</div>"+
                    "<div style='clear: both;'></div>"
                );
    		},
            
            slide: function( event, ui ) {
                $("#amount").html(
                    "<div style='float: left; clear: none;'>"+ui.values[0]+" Ft</div>"+
            		"<div style='float: right; clear: none;'>"+ui.values[1]+" Ft</div>"+
                    "<div style='clear: both;'></div>"
                );
    		}
    	});
        
    	$("#amount").html(
            "<div style='float: left; clear: none;'>"+$("#price_range").slider("values",0)+" Ft</div>"+
    		"<div style='float: right; clear: none;'>"+$("#price_range").slider("values",1)+" Ft</div>"+
            "<div style='clear: both;'></div>"
        );
    } catch(e) {
        alert(e);    
    }
});




var map;
var infowindow;
var marker;
function showShop(which) {
    map.setCenter(shopCoords[which]);
    map.setZoom(12);
    infowindow.setPosition(shopCoords[which]);
    infowindow.setContent(shopLabels[which]);
}

var shopCoords={
    "hatvan": new google.maps.LatLng(47.667035,19.68529),
    "gyongyos": new google.maps.LatLng(47.785361, 19.927896),
    "default":new google.maps.LatLng(47.722235,19.80217)
};

var shopLabels={
    "hatvan":"Hatvan, Kossuth tér 10.",
    "gyongyos":"Gyöngyös, Kossuth Lajos utca 3.",
    "default":"Válasszon üzleteink közül."
};


function HomeControl(controlDiv, map, text, shop) {
    controlDiv.style.padding = '5px';
    
    var controlUI = document.createElement('DIV');
    controlUI.style.backgroundColor = 'white';
    controlUI.style.borderStyle = 'solid';
    controlUI.style.borderWidth = '2px';
    controlUI.style.cursor = 'pointer';
    controlUI.style.textAlign = 'center';
    controlUI.title = 'Boltunk helyzetének mutatása';
    controlDiv.appendChild(controlUI);
    
    var controlText = document.createElement('DIV');
    controlText.style.fontFamily = 'Arial,sans-serif';
    controlText.style.fontSize = '12px';
    controlText.style.paddingLeft = '4px';
    controlText.style.paddingRight = '4px';
    controlText.innerHTML = text;
    controlUI.appendChild(controlText);
    
    google.maps.event.addDomListener(controlUI, 'click', function() {
        showShop(shop);
    });
}

function initialize() {
    var myOptions = {
        zoom: 9,
        center: shopCoords["default"],
        mapTypeId: google.maps.MapTypeId.ROADMAP,
        disableDefaultUI: true
    }
    map = new google.maps.Map(document.getElementById("gmap"), myOptions);
    
    placeMarker(shopCoords["hatvan"]);
    placeMarker(shopCoords["gyongyos"]);
    
    var homeControlDiv = document.createElement('DIV');
    var homeControl = new HomeControl(homeControlDiv, map, "gyöngyös","gyongyos");
    
    homeControlDiv.index = 1;
    map.controls[google.maps.ControlPosition.TOP_RIGHT].push(homeControlDiv);
    
    var homeControlDiv = document.createElement('DIV');
    var homeControl = new HomeControl(homeControlDiv, map, "hatvan","hatvan");
    homeControlDiv.index = 2;
    map.controls[google.maps.ControlPosition.TOP_RIGHT].push(homeControlDiv);
    
    infowindow = new google.maps.InfoWindow({
        content: shopLabels["default"],
        position: shopCoords["default"]
    });
    
    infowindow.open(map);
}
 
function placeMarker(location) {
  marker = new google.maps.Marker({
      position: location,
      map: map
  });
}

var mouseholdtimer;
    
function typingListWithImg(senderObj,senderEvt) {
    var $sender=$(senderObj);
    $.post("/refresher.php",{"action":"typingList","keyword":$sender.val(),"whitelist":$sender.attr("data-whitelist"),"withImage":"1"},function(data) {
        $sender.closest("ul").find(".typing-list-item").remove();
        //$sender.after(data);    
        $sender.closest("ul").find(".typing-list-item-holder").html(data);
        
        $(".hold-to-show-product").mousedown(function() { 
            var $this=$(this);

            mouseholdtimer=setTimeout(function() {
                showProductInline($this.attr("data-product-simplename"));
                return false;
            },550);
        }).mouseout(function() {
            clearTimeout(mouseholdtimer);
            return false;
        }).mouseup(function() {
            clearTimeout(mouseholdtimer);
            return false;
        });
    });
    
    return true;
}

function selectTypingListItem(senderObj,theID,theValue) {
    var $sender=$(senderObj);
    var $parentUl=$sender.closest("ul");
    var $rootUl=$sender.closest("ul.typing-list-item-holder-parent");
    
    $rootUl.find(".product-id-holder:first").val(theID);
    $parentUl.find(".typing-list-item").remove();
    $rootUl.find(".typing-list-input").val(theValue);
}

function showProductInline(urlName) {
    $.fancybox({
        "ajax" : {
            "type"	: "POST",
            "data"	: '/'+urlName
        },
        "width": "80%",
        "height": "80%",
        "href":"/"+urlName,
        "type":"ajax",
        "scrolling":"yes",
        
        "overlayColor":"#00ADEF",
        "overlayOpacity":"0.95"
    });    
}
    
    
    
$(document).ready(function(){
    jQuery.expr[':'].Contains = function(a,i,m){
         return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0;
    };

    /*try {
    	$("#myController").jFlow({
    		slides: "#slides",
    		controller: ".jFlowControl",
    		slideWrapper : "#jFlowSlide",
    		selectedWrapper: "jFlowSelected",
    		auto: true,
    		width: "554px",
    		height: "228px",
    		duration: 800,
            interval: 24000,
    		prev: ".jFlowPrev",
    		next: ".jFlowNext"
    	});
    } catch(e) {
        alert(e);    
    }*/
    $("#myController").jFlow({
		slides: "#slides",
		controller: ".jFlowControl",
		slideWrapper : "#jFlowSlide",
		selectedWrapper: "jFlowSelected",
		auto: true,
		width: "554px",
		height: "228px",
		duration: 800,
        interval: 5000,
		prev: ".jFlowPrev",
		next: ".jFlowNext"
	});
    
    
    if ($("#prodImageGalleryController").length>0) {
        $("#prodImageGalleryController").jFlow({
    		slides: "#big_image_container",
    		controller: ".jFlowControl",
    		slideWrapper : "#product_images_wrapper",
    		selectedWrapper: "jFlowSelected",
    		auto: true,
    		width: "364px",
    		height: "364px",
    		duration: 800,
            interval: 6500,
    		prev: ".jFlowPrev",
    		next: ".jFlowNext"
    	}); 
    }
    
    
    //$("table tr:odd").addClass("odd");

    
    $(".tabs a").not(".not-ordinary-tab").bind("click",function() {
        switchContent($(this).attr("rel"),$(this));    
    });
    
});



function copyBillDataToTransportData() {
    $("input[name=transport_name]").val($("input[name=bill_name]").val());
    $("input[name=transport_postal]").val($("input[name=bill_postal]").val());
    $("input[name=transport_city]").val($("input[name=bill_city]").val());
    $("input[name=transport_address]").val($("input[name=bill_address]").val());   
}

var wasCoD=false;

function refreshPriceSum() {
    var basketCost=$("#totalbasketcost").val();
    var transportOptionCost=$("#transportoptioncost").val();    
    
    var $isCashOnDelivery=$("input[name=isCashOnDelivery]:checked").val()=="yes";
    var cashOnDeliveryCost=460;
    
    
    basketCost=isNaN(basketCost) ? 0 : basketCost;
    transportOptionCost=isNaN(transportOptionCost) ? 0 : transportOptionCost;
    
    var sum=new Number((Number)(basketCost)+(Number)(transportOptionCost));
    
    if ($isCashOnDelivery) { //.length>0
        $("#transportoptioncost").val((Number)($("#transportoptioncost").val())+(Number)(cashOnDeliveryCost));
        $("#transportcost").html((Number)(transportOptionCost)+(Number)(cashOnDeliveryCost));
        //$("#transportcost").html((Number)($("#transportoptioncost").val())+(Number)(cashOnDeliveryCost));
        wasCoD=true;
    } else if (wasCoD) {
        $("#transportoptioncost").val((Number)($("#transportoptioncost").val())-(Number)(cashOnDeliveryCost));
        $("#transportcost").html((Number)(transportOptionCost)-(Number)(cashOnDeliveryCost));
        //$("#transportcost").html((Number)($("#transportoptioncost").val())-(Number)(cashOnDeliveryCost));
        wasCoD=false;
    }
    
    $(".total-cost").html(sum);
}
    
function cashOnDeliveryChosen() {
    var ok=false;
    $("input[name=isCashOnDelivery]").each(function() {
        if ($(this).filter(":checked").length>0) {
            ok=true;    
        } else {
            if ($(this).attr("type")=="hidden")
                ok=true;        
        }
        
    });
    
    if (ok) {
        return true;
    } else {
        alert("Válassza ki a fizetési módot!");
        if ($("input[name=isCashOnDelivery]").next("span.err-msg").length==0) {
            $("input[name=isCashOnDelivery]").after(" <span class='err-msg' style='color: red; font-weight: bold; font-size: 11px;'> Kérem válasszon!</span>");
        }
        return false;    
    }
}

//----------------------------------- //----------------------------------- //----------------------------------- //
//----------------------------------- //----------------------------------- //----------------------------------- //

   
var captchaIsOk=false;

function validateReg(formObj) {
    var formIsOk=true; 
    
    $.post("/refresher.php",{ "action":"captchaIsOk","cV":$("#cV").val() },function(data) {
        //alert(data);
        captchaIsOk=Boolean(data);
       
        if (!captchaIsOk) {
            if ($("#cV").next().filter("span").length>0)
                $("#cV").next().filter("span").html(" Hibás számok.");
            else
                $("#cV").after(" <span style='color: #D00; font-size: 10px;'> Rosszul beírt számsorozat.</span>");    
        } else
            $("#cV").next().filter("span").remove();
        
        //***  egyéb ellenőrzések
        var $password=$(formObj).find("input[name=password]");
        var $password2=$(formObj).find("input[name=password2]");
        var $username=$(formObj).find("input[name=username]");
        var $email=$(formObj).find("input[name=email]");
        var $realname=$(formObj).find("input[name=realname]");
        var $telephone=$(formObj).find("input[name=telephone]");
        
        if (!$password.val()) {
            $password.attr("title"," Jelszó megadása kötelező.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
            var pwerror=true;
        } else {
            $password.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
            var pwerror=false;    
        }            
            
        if ($password.val()!=$password2.val()) {
            $password.attr("title"," A jelszavaknak egyezni kell.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
        } else if (!pwerror)
            $password.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
            
            
        if (!$username.val()) {
            $username.attr("title"," Felhasználónév megadása kötelező.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
        } else
            $username.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
            
        
        if (!$email.val().match(/.+\@.+\..+/)) {
            $email.attr("title"," A megadott e-mail cím helytelen.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
            var emailerror=true;
        } else {
            $email.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
            var emailerror=false;
        }
            
        if (!$realname.val()) {
            $realname.attr("title"," Név megadása kötelező.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
        } else
            $realname.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
        
        
        if (!$email.val()) {
            $email.attr("title"," E-mail cím megadása kötelező.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
        } else if(!emailerror)
            $email.attr("title","").css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
            
        
        if ($telephone.val() && $telephone.val().match(/\D+/)) {
            $telephone.attr("title"," Telefon megadása kötelező.").css({"background":"#F66","border":"solid 2px red","color":"white"});
            formIsOk=false;
        } else
            $telephone.css({"background":"white","border":"inset 1px #F0F0F0","color":"black"});
        //*** /egyéb ellenőrzések
            
        if (captchaIsOk && formIsOk)
            formObj.submit();
    });
    
    $("input[title]").tooltip({
       offset: [10, 2],
       effect: 'slide'
    });
    //.dynamic({ bottom: { direction: 'down', bounce: true } });
}


function switchContent(id,$caller) {
    $("ul.tabs li").each(function() { $(this).removeClass("active"); });
    $caller.closest("li").addClass("active");
    
    $(".tab_container .tab_content").each(function() { $(this).hide(200); });
    
    $("#"+id).show(200);
}

function addNewSubCategoryOption(caller) {
    $(caller).nextAll(".addAfterMe:first").after("<span>töltés...</span>");
    $.post("refresher.php", { "action":"getNewSubtypeSelecter", "subtype":$(caller).val() } , function(data) {
        $(caller).nextAll(".addAfterMe:first").nextAll("span:first").html(data); 
    });
    
    $(caller).find("option:first").attr("selected","selected");
}



function getImageDesc(title, currentArray, currentIndex, currentOpts) {
    alert("getimagedesc");
    var imgTitle;
    $.post("/refresher.php",{action:"getImageDesc",id:title},function(data) {
        imgTitle=data;    
    });
    return imgTitle;
}

function addToBasket(productID) {
    $.post("/refresher.php",{"action":"addToBasket","productID":productID},function(data) {
        $(".basket").html(data);
        refreshPriceSum(); 
        addResponseBox("Sikeres kosárhoz adás.");
    });
}

function removeItemFromBasket(productID,inFancy) {
    $.post("/refresher.php",{"action":"removeItemFromBasket","productID":productID,"inFancy":inFancy},function(data) {
        $(".table-basket").parent().html(data);
        //$(".basket").html(data[1]);
        refreshPriceSum(); 
        addResponseBox("Sikeres kosárból kivétel.");
    });
}

function addResponseBox(_text) {
    var kopied=$("#kopimi").clone().show(500).html(_text).appendTo("#responseBoxHolder");
    setTimeout(function() { kopied.hide(500); }, 3500);    
}

function showBasketContents() {
    $.fancybox({
        "ajax" : {
            "type"	: "POST",
            "data"	: 'action=showBasketContent'
        },
        "width": "80%",
        "height": "80%",
        "href":"/refresher.php",
        "type":"ajax",
        "scrolling":"no",
        
        "overlayColor":"#00ADEF",
        "overlayOpacity":"0.95",
        "onClosed":function() {
            //alert("onclosed event");
            $.post("/refresher.php",{"action":"refreshBasket"},function(data) {
                $(".basket").html(data);
            });
        }
    });
}



function rateProduct(productID,parentStarHolder,rating) {
    //productID,rate
    //action->rateProduct
    $.post("/refresher.php",{"action":"rateProduct","productID":productID,"rate":rating},function(data) {
        parentStarHolder.removeClass("starts0").removeClass("starts1").removeClass("starts2").removeClass("starts3").removeClass("starts4").removeClass("starts5").addClass("starts"+data);
        parentStarHolder.unbind("click");
        parentStarHolder.unbind("mouseout");
        
        parentStarHolder.html("Köszönjük!");
        
        addResponseBox("Sikeres értékelés.");
    });
}

function doVote(vid) {
	$.post("/refresher.php",{"vid":vid, "vote":$("input[name=v"+vid+"]:checked").val(), action:"dovote"},function(data) { 
	   $("#v"+vid).html(data); 
       setTimeout(function() {
            $('.vote-line-holder .vote-line').each(function() {
                $(this).animate({"width":$(this).attr("data-full-width")+"%"},{"duration":2200,"easing":"swing"});
            });
       },200);
       addResponseBox("Sikeres szavazás."); 
    });
}

function clickCounter(bannerBlock) {
    $.post("/refresher.php",{"action":"clickCounter","bannerBlock":bannerBlock},function(data) {
            
    });
}

