﻿//Global 
var RedirectionPages = new Array("accessories.aspx", "rooms.aspx", "products.aspx");
var urlRedirect = "";
var productName = "";

$.fn.infiniteCarousel = function() {
    var $wrapper = $('> div', this).css('overflow', 'hidden'),
       $items = $wrapper.find('> div'),
       visible_css = new Array("small", "middle", "big", "middle", "small", "non_visible");
    moved = 1;
    for (var i = 0; i < $items.length; i++) {
        $items.filter(":eq(" + i + ")").bind("click", function() {
            var currentItem = $(this).get();
            var $cKey = $(currentItem).children(".info").children(".pCategory").text();
            var $pKey = $(currentItem).children(".info").children(".pID").text();
            productName = $(currentItem).children(".info").children(".pTitle").text();
            var $title = $(currentItem).children(".info").children(".pTitle").text();
            var $desc = $(currentItem).children(".info").children(".pDesc").text();
            var titleLinker = "<a href='" + urlRedirect + "?category=" + $cKey + "&product=" + $pKey + "'>" + $title + "</a>";
            $(".product_title").html(titleLinker);
            $(".product_description").text($desc);


            var big_img = $(currentItem).children("img").attr("src");
            big_img = big_img.replace("&w=78", "&w=673");
            big_img = big_img.replace("&h=78", "&h=361");

            //$(".product_pic").children("#pictureLinker").children("img").attr("src", $(currentItem).children("img").attr("src"));
            
            $(".product_pic").children("#pictureLinker").children("img").attr("src", big_img);


            var pictureLinker = urlRedirect + "?category=" + $cKey + "&product=" + $pKey;
            $(".product_pic").children("#pictureLinker").attr("href", pictureLinker);
        });
    }
    if (($(".arrow_left").attr("id") == "toLeft")) {
        $(".arrow_left").remove();
        $(".arrow_rigth").remove();
    }
    $wrapper.before('<a href="" class="arrow_left pngfix" id="toLeft"></a>');
    $wrapper.after('<a href="" class="arrow_rigth pngfix" id="toRight"></a>');
    //Show First
    ChangeDisplay();

    function ChangeDisplay() {
        //debugger; 
        var currentItem = $items.filter(".big");
        var $cKey = $(currentItem).children(".info").children(".pCategory").text();
        var $pKey = $(currentItem).children(".info").children(".pID").text();
        productName = $(currentItem).children(".info").children(".pTitle").text();
        var $title = $(currentItem).children(".info").children(".pTitle").text();
        var $desc = $(currentItem).children(".info").children(".pDesc").text();
        var titleLinker = "<a href='" + urlRedirect + "?category=" + $cKey + "&product=" + $pKey + "'>" + $title + "</a>"
        $(".product_title").html(titleLinker);
        $(".product_text").text($desc);

        var big_img = $(currentItem).children("img").attr("src");
        big_img = big_img.replace("&w=78", "&w=673");
        big_img = big_img.replace("&h=78", "&h=361");

        //$(".product_pic").children("#pictureLinker").children("img").attr("src", $(currentItem).children("img").attr("src"));
        $(".product_pic").children("#pictureLinker").children("img").attr("src", big_img);

        var pictureLinker = urlRedirect + "?category=" + $cKey + "&product=" + $pKey;
        $(".product_pic").children("#pictureLinker").attr("href", pictureLinker);
    }

    //paging function

    function gotoPrev() {
        //debugger;
        var temp = null;
        for (var i = 0; i < $items.length - 1; i++) {
            temp = $items[i];
            $items[i] = $items[i + 1];
            $items[i + 1] = temp;
        }
        for (var reI = 0; reI < $items.length; reI++) {
            if (reI <= 4) {
                $($items[reI]).attr("class", visible_css[reI]);
            }
            else
                $($items[reI]).attr("class", visible_css[5]);
        }
        //reselect scroller on display
        for (var reI = 0; reI < $items.length - 1; reI++) {
            $($items[reI]).after($($items[reI + 1]));
        }
        ChangeDisplay();
        return false;
    }

    function gotoNext() {
        var temp = null;
        for (var i = $items.length - 1; i > 0; i--) {
            var temp = $items[i];
            $items[i] = $items[i - 1];
            $items[i - 1] = temp;
        }
        var i = 0;
        //             for(var reI = $items.length - 1; reI >= 0; reI--)
        //             {
        //                if(reI >= $items.length - 5)
        //                    $($items[reI]).attr("class", visible_css[i++]);
        //                else
        //                    $($items[reI]).attr("class", visible_css[5]);
        //             }
        for (var reI = 0; reI < $items.length; reI++) {
            if (reI <= 4) {
                $($items[reI]).attr("class", visible_css[reI]);
            }
            else
                $($items[reI]).attr("class", visible_css[5]);
        }
        //reselect scroller on display
        for (var reI = 0; reI < $items.length - 1; reI++) {
            $($items[reI]).after($($items[reI + 1]));
        }
        ChangeDisplay();
        return false;
    }

    // 5. Bind to the forward and back buttons        
    $('a.arrow_rigth', this).click(function() {
        return gotoPrev();
    });

    $('a.arrow_left', this).click(function() {
        return gotoNext();
    });
}

$.fn.setupMenu = function()
{
    //load collection from page
    var $menu = $('> div', this);
    //setup functionality
    for(var i=0; i < $menu.length; i++)
    {
        $($menu[i]).bind("mouseover", SelectCurrentCategory);
        $($menu[i]).bind("mouseout", UnSelectCurrentCategory);
        $($menu[i]).bind("click", SelectClicked);
    }
    //open first category on setup menu
    $($menu[0]).trigger("mouseover");
    $($menu[0]).trigger("click");
    
    function SelectClicked()
    {
        var $current = $menu.filter("." + $(this).attr("class"));
        $($current).unbind("mouseout", UnSelectCurrentCategory);
        UnSelectAnother($current);
        if(parseInt($(this).attr("id")) == 42/*Rooms Page*/)
            urlRedirect = RedirectionPages[1];
        else if(parseInt($(this).attr("id")) == 47/*Accessories Page*/)
            urlRedirect = RedirectionPages[0];
        else
            urlRedirect = RedirectionPages[2];/*Products Page*/    
        LoadDetails($(this).attr("id"));
        SetupSpecial($current);
    }
    
    function SetupSpecial(menuEl)
    {
        if(parseInt($(menuEl).attr("id")) == 42)
        {
            $(".product_details").css("display", "none");
            $(".product_pic").css("width", "630px");
            $("#imgDisplay").removeClass("standart_picture");
            $("#imgDisplay").addClass("special_picture");
        }
        else
        {
            $(".product_details").css("display", "block");
            $(".product_pic").css("width", "266px");
            $("#imgDisplay").removeClass("special_picture");
            $("#imgDisplay").addClass("standart_picture");
        }
    }
    
    function IsSelected(o)
    {
        var cont = o.split("_");
        return (cont.length > 1) ? true : false;
    }
    
    function SelectCurrentCategory()
    {
        var css = $(this).attr("class");
        if(!IsSelected(css))
        {
            $(this).removeClass(css);
            css += "_hover";
            $(this).addClass(css);
        }
    }
    
    function UnSelectCurrentCategory()
    {
        var css = $(this).attr("class");
        $(this).removeClass(css);
        css = css.split("_")[0];
        $(this).addClass(css);
    }
    
    function UnSelectAnother(o)
    {
        for(var i=0; i < $menu.length; i++)
        {
            if($(o).attr("class") != $($menu[i]).attr("class"))
            {
                $($menu[i]).bind("mouseout", UnSelectCurrentCategory);
                $($menu[i]).trigger("mouseout");
            }
        }   
    }
    
    function LoadDetails(category)
    {
        var witer = "<label id='w' style='font-size:22px;'>אנא המתן...<img src='images/ajax-loader.gif' border='0' style='rigth:10px; top:25px;' /></label>"
        $(".product_details").append(witer);
        new KuchiNet.AjaxLoader("ProductsByCategory.aspx?def=true&category=" + category + "", ChangeContent, "", "GET", "", "text/html");
    }
       
    function ChangeContent(content)
    {
         $(".wrapper").empty();
         $(".wrapper").append(content.responseText);
         $("#w").remove();
         $('.infiniteCarousel').infiniteCarousel();
    }  
}


$(document).ready(function () 
{  
    $('#product_menu').setupMenu();
});

//

function OpenSendToFriendDialog(opener)
{
    var openerPos = $(opener).offset();
    $("#divSendToFriend").css("top", openerPos.top + $(opener).height() - 1);
    $("#divSendToFriend").css("left", openerPos.left - openerPos.left + 400);
    $("#divSendToFriend").slideDown('slow');
    $("#txtLink").val(document.location.href.toString());
}

function CloseMe()
{
    $("#divSendToFriend").slideUp('slow');
    $("#divSendToFriend").find("input").each(function()
    {
        if($(this).attr("type") == "text")
        {
            $(this).val("");
        }
    });
}

function ShowLoader()
{
     var loader = "<label id='loader' style='font-size:22px;'>שולח...<img src='images/ajax-loader.gif' border='0' style='rigth:10px; top:25px;' /></label>"
     $("#btnSendToFriend").before(loader);
}

function SendMailToFriend()
{
    if(ValidateThis())
    {
        var params = "?";
        params += "addressName="+ $("#txtAddressName").val();
        params += "&addressMail="+ $("#txtAddressMail").val();
        params += "&senderName="+ $("#txtSenderName").val();
        params += "&senderMail="+ $("#txtSenderMail").val();
        params += "&linq="+ $("#txtLink").val();
        //alert(params);
        ShowLoader();
        new KuchiNet.AjaxLoader("MailSender.aspx" + params.toString(), OnSender, "", "GET", "", "text/html");
    }
}

function OnSender(content)
{
    $("#loader").remove();
    $("#btnSendToFriend").before(content.responseText);
}

function ValidateThis()
{
    var validator = new FormValidator();
    //Required fields
    validator.AddRequiredFieldToValidate("txtSenderName", "txt", "pSenderNameValidatorContainer", "שדה חובה");
    validator.AddRequiredFieldToValidate("txtSenderMail", "txt", "pSenderMailValidatorContainer", "שדה חובה");
    validator.AddRequiredFieldToValidate("txtAddressName", "txt", "pAddressNameValidatorContainer", "שדה חובה");
    validator.AddRequiredFieldToValidate("txtAddressMail", "txt", "pAddressMailValidatorContainer", "שדה חובה");
    
    //Emails validator
    validator.AddEmailToValidate("txtSenderMail", "pSenderMailValidatorContainer", "דואר לא חוקי");
    validator.AddEmailToValidate("txtAddressMail", "pAddressMailValidatorContainer", "דואר לא חוקי");
    
    return validator.validate();
}

$(document).ready(function()
{
    $("#btnSendToFriend").bind("click", SendMailToFriend);
});

//

  function ToPricingPage()
    {
        var url = "contact.aspx?topic=4&product='" + productName + "'";
        location.href = url;
    }
