//**************************************************************
// Tradepoint360 Inc.
//
// Document version: 1.0
// Author: 
// Created on: Mar 03 2011
// Last Updated on:
//**************************************************************


//var productMainPrice; // use to store the main price of the product
function btnCloseMoreOptions_Clicked(productId) {
    var divMoreOptionBox = '#moreOptionBox' + productId;
    var divMoreOptionContent = '#moreOptionBoxContent' + productId;
    var divbtnAddToCart = '#btnAddToCart_' + productId;
    var image = $(divbtnAddToCart).find('img');
    // var selectOptions = '#selectOptions' + productId;
    // var select = $(selectOptions).find('select');
   // var divMoreOptionsMainPrice = '#moreOptionBoxMainPrice' + productId;
 //   var divMoreOptionPrice = '#moreOptionBoxPrice' + productId;
  //  var selectOptions = '#selectOptions' + productId;
   // var select = $(selectOptions).find('select');

    if ($(divMoreOptionBox).height() == 362) {
        $(divMoreOptionBox).animate({ 'height': '-=362px' }, "fast");
        $(divMoreOptionContent).hide();

        image.attr('src', '/images/Buttons/productlisting_BuyingOptions.png');
        
        SetProductMainPrice(productId);
        //$(divMoreOptionsMainPrice).text('');
        //$(divMoreOptionsMainPrice).text(productMainPrice);
       // optionChanged(select, productId, divMoreOptionPrice, 'true');
        //productMainPrice = '';
       // alert(productMainPrice);
    }
};

var moreOptionsProductId;  // this will be used to save the productId - 12July2011
function btnMoreOptions_Clicked(productId) {
    moreOptionsProductId = productId; // see above vaiable declaration
    var overlayedIsExpanded = false; 
    var divMoreOptionBox = '#moreOptionBox' + productId;
    var divMoreOptionContent = '#moreOptionBoxContent' + productId;
    var divbtnAddToCart = '#btnAddToCart_' + productId;
    var image = $(divbtnAddToCart).find('img');
    var selectOptions = '#selectOptions' + productId;
    var select = $(selectOptions).find('select');
    var Quantity = '#Qty' + productId;
    var Qty = $(Quantity).find('input');
    var divMoreOptionPrice = '#moreOptionBoxPrice' + productId;
   // alert(productMainPrice);
 //  var divMoreOptionsMainPrice = '#moreOptionBoxMainPrice' + productId;
  //  productMainPrice = $(divMoreOptionsMainPrice).text();

    if ($(divMoreOptionBox).height() == 362)
        overlayedIsExpanded = true;

    if (!overlayedIsExpanded) {//bottom

        $(divMoreOptionBox).animate({ 'height': '+=362px' }, "fast");
        $(divMoreOptionContent).show();
        GetImageSrc(image);
        // alert(imgSrc);
        // image.attr('src', imgSrc);
        // image.attr('src', '/images/Buttons/productlisting_addtocartRed.png');
        populateTypes(productId, select, divMoreOptionPrice);
    }
    else { //top
        var quantity;
        if (Qty.val() == null || Qty.val() == '') quantity = '1';
        else quantity = Qty.val();
        addToCart(productId, select.val(), quantity);
    }

};

function GetImageSrc(image) {

    $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/GetImageUrl",
        data: "{}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        async: false,
        success: function success(result) {
            var objs = result.d;
            image.attr('src', objs); //set the image url/src when window pop up
        },
        error: fail
    });

};

var returnProductName;
function addToCart(productId, typeId, quantity) {
    if (typeId == '-1') {
        alert('Please select a size from drop down.');
        return;
    }

    var jsonText = JSON.stringify({ productId: productId, typeId: typeId, quantity: quantity, returnurl: window.location.href });
    $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/AddToCart",
        data: jsonText,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function success(result) {
            var objs = result.d;
            if (objs.indexOf("/memberservices/login.aspx?") > -1) {//redirect the page
                window.location.href = objs;
            } else { // if product has been added to the cart, then pop ou the cart.
                returnProductName = objs; // return the product, which was currently added to the cart
                btnCloseMoreOptions_Clicked(moreOptionsProductId); //collapse the 'more option' windows
                moreOptionsProductId = ''; //empty previously save productId

                $("#carttab").click();
                CallbackPanelUpdate(); // upadate left shopping cart
            }

            // window.location.href = objs;
        },
        error: fail
    });

};

function populateTypes(productId, select, divMoreOptionPrice) {
    var jsonText = JSON.stringify({ productId: productId });
    $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/GetAllProductTypes",
        data: jsonText,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function success(result) {
            var objs = result.d;
            $(select).find('option').remove();
            // alert(select + ' option');
            $(select).unbind('change');
            $(select).bind('change', function () {
                optionChanged(select, productId, divMoreOptionPrice);
            });
            $(select).append('<option value="-1" > -- Please select size -- </option>');
            $.each(objs, function (index, objs) {
                $(select).append('<option value="' + objs.ID + '" >' + objs.Name + /*'- Cost: $' + objs.Cost +*/ '</option>');
            });
        },
        error: fail
    });
};

function fail(error) {
    alert(error.status);
}

function optionChanged(select, productId, divMoreOptionPrice) { //isLastcheck if panel is closing down
    //  alert(select.val());
    var divMoreOptionsMainPrice = '#moreOptionBoxMainPrice' + productId;

    var isTypeValue = "true";
   // if (isLast == 'true')  select.val() = '-1';
    
    if (select.val() == '-1') isTypeValue = "false";
   
    var jsonParam = JSON.stringify({ typeId: select.val(), productId: productId, isType: isTypeValue });
    //$(divMoreOptionPrice).text('loading...');



    $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/GetTypePrice",
        data: jsonParam,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function success(result) {
            var objs = result.d;

            if (objs.length > 0) {
                $(divMoreOptionPrice).text('');
                $(divMoreOptionPrice).text(objs);

                $(divMoreOptionsMainPrice).text('');
                $(divMoreOptionsMainPrice).text(objs);
                
            }
        },
        error: fail
    });
    GetstockValues(select.val(), productId, isTypeValue);

    //toggale popup link for 'future inventory' on chnaging dropdown values
    var divPopUpLink = '#inventoryPopup' + productId;
    var hyperlink = $(divPopUpLink).find('a');
    TogglePopupLink(select, hyperlink);
};

function GetstockValues(typeId, productId, isTypeValue) {

    var divStockValue = '#stockValue' + productId;

    var jsonParam = JSON.stringify({ typeId: typeId, productId: productId, isType: isTypeValue });

        $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/GetInventoryStockValue",
        data: jsonParam,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function success(result) {
            var objs = result.d;
            if (objs.length > 0) {
                $(divStockValue).text('');
                $(divStockValue).append(objs);
            }
        },
        error: fail
    });

};


function SetProductMainPrice(productId) { //isLastcheck if panel is closing down
    var divMoreOptionsMainPrice = '#moreOptionBoxMainPrice' + productId;
    var divMoreOptionPrice = '#moreOptionBoxPrice' + productId;
    var isTypeValue = "false";
    //if (select.val() == '-1') isTypeValue = "false";

    var jsonParam = JSON.stringify({ typeId: '-1', productId: productId, isType: isTypeValue });

    $.ajax({
        type: "POST",
        url: "/cardiservice.aspx/GetTypePrice",
        data: jsonParam,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function success(result) {
            var objs = result.d;
            if (objs.length > 0) {
                $(divMoreOptionPrice).text('');
                $(divMoreOptionPrice).text(objs);

                $(divMoreOptionsMainPrice).text('');
                $(divMoreOptionsMainPrice).text(objs);
            }
        },
        error: fail
    });

};

function InventoryLookupCall(_ProductID) {
    var ProductID = _ProductID;
    var PackageID = '';
    var selectOptions = '#selectOptions' + ProductID;
    var select = $(selectOptions).find('select');
    if (select.val() != '' && select.val() != '-1') PackageID = select.val();
    InventoryLookupPopup(ProductID, PackageID);
};

function InventoryLookupPopup(productID, PackageID) {
    window.open("/InventoryLookup.aspx?ID=" + productID + '&Type=' + PackageID, "Cardi", "scrollbars=no,resizable=no,width=400,height=250,left=100,top=50,location=no");
    return false;
};

function TogglePopupLink(dropdown, hyperlink) {
    if (dropdown != null) {
        if (dropdown.val() != null && dropdown.val() != '-1') {
            $(hyperlink).removeClass('hidepopup').addClass('showpopup');
        } else {
            $(hyperlink).removeClass('showpopup').addClass('hidepopup');
        }
    } //else {
      //  $('a#inventorylookup').removeClass('hidepopup').addClass('showpopup');
    //}
};

/*
function generateHtml() {
    var htmlContent =
    '<div id="moreOptionBoxContent" style="width:100%; height:100%; z-index:999; display:none;">' +
                '<div style="float:right;">' +
                    '<img alt="" style="padding-top:5px; padding-right:5px; cursor:pointer;" src="/images/Buttons/moreOptionsClose.png">' +
                '</div>' +
                '<div  class="clear"> </div>' +

                '<div style="float:left; width:198px; height:62px; margin-left:7px; margin-top:5px;">' +
                    '<div style="float:left; width:62px; height:62px;  border:1px solid #1e539b; ">' +
                     '<img alt="" style="width:62px; height:62px;" src="<%#GetRouteUrl("ProductThumbnailImage", new { Model = Eval("Model") }) %>">' +
                    '</div>' +
                    '<div style="float:left; text-align:left; margin-left:8px; margin-top:0px; margin-right:9px; width:115px; height:62px; ">' +
                        '<div style="float:left; color:#535353; margin-top:12px; font-weight:bold; font-size:10px;">' +
                        'product name will be here' +
                        '</div>' +
                        '<div class="clear"></div>' +
                        '<div style="float:left; color:#680303; font-weight:bold; font-size:10px; margin-top:5px;">' +
                        '$199.99' +
                        '</div>' +
                        '<div class="clear" ></div>' +
                    '</div>' +
                '</div>' +
                '<div  class="clear"> </div>' +

                '<div style=" margin-top:25px; margin-left:25px; float: left; text-align:left;" >' +
                '<span style=" color:#006199; font-weight:bold; font-size:12px;">Type: </span><br />' +

               'dropdown' +

                '/dropdown' +
               '</div>' +
            '</div>';

    return htmlContent;

};
*/
/*
$('#boxclose').click(function () {
$('#box').animate({ 'top': '-=160px' }, "slow"); // function () {
//  $('#overlay').fadeOut('fast');
// });
*/
// });

//  });
/*
var openedAcc1 = false;
$(document).ready(function () {
// var openedAcc = false;
$(".minicartAccessories1").click(function () { 
if (openedAcc1) {
$("#miniCartAccessoriesContainer1").animate({ "height": "-=493px" }, "slow");  
} else {
$("#miniCartAccessoriesContainer1").animate({ "height": "+=493px" }, "slow"); 
}

            
$(".accessoriesCloseBox").click(function () { 
$("#miniCartAccessoriesContainer").animate({ "width": "-=493px" }, "slow");
openedAcc = true;
}
            
// $("#cartcontent1").slideToggle("slow");
// $("#cartcontent1 accessoriesCloseBox").toggle();
//    $("#carttab .carttext").toggle();
openedAcc1 = openedAcc1 ? false : true;
});
});
*/
