Subversion Repositories SmartDukaan

Rev

Rev 9355 | Blame | Compare with Previous | Last modification | View Log | RSS feed

function toggle(containerId){
        var divC = document.getElementById(containerId);
        if (divC.style.display == 'none') {
                divC.style.display = 'block';
        } else if (divC.style.display == 'block'){
                divC.style.display = 'none';
        }
        else {
                divC.style.display = 'none';
        }
}

function checkEmiObject (value) {
        if (value==undefined) {
                return "1";
        } else {
                return "2";
        }
}

$(function(){
        function CollapsibleWidget(container)   {

                this.widgetContainer = container;
                this.collapsbiles = $(container).children('.common-widget-control-bar, .common-widget-content-area');
                this.isCollapsed = null;

                this.collapse = function()      {
                        $(this.collapsbiles).each(function()    {
                                $(this).slideUp();
                        });
                        this.isCollapsed = true;
                };

                this.open = function()  {
                        $(this.collapsbiles).each(function()    {
                                $(this).slideDown();
                        });
                        this.isCollapsed = false;
                };

                this.test = function()  {
                };
        }

        ResearchWidget.prototype = new CollapsibleWidget();
        ResearchWidget.prototype.constructor = CollapsibleWidget;

        function ResearchWidget(container)      {
                CollapsibleWidget.call(this, container);
        }

        function updateCompareCount()   {
                $('#research_compare_count').html($('#myresearch input[type="checkbox"]:checked').length);
        }

        /** Sidebar Widgets **/

        $('#otg_know_more,.otg_know_more').click(function(){
                $.colorbox({
                        width: "490px",
                        height: "420px",
                        inline: true,
                        href: "<h3 style='text-align: center; margin: 18px; font-size: 14px;'>On Time Guarantee, We Pay if we Delay</h3>" +
                        "<p style='text-align: justify; margin-left: 12px; margin-right: 12px; margin-bottom: 9px; line-height: 22px;'>Saholic stands for 100% on time delivery. We ensure all your orders reach your doorstep on or "+
                        "before the promised delivery date. In the rare case that we deliver an order later than promised "+
                        "we will compensate you.This Guarantee is Valid on"+
                        "</p>" +
                        "<ul style='list-style: disc none none; margin-left: 25px; text-align: justify; margin-right:12px; line-height: 22px;'><li>All Mobiles, Cameras, Laptops, Tablets and Accessories above Rs. 2000 in value."+
                        "</li>"+
                        "<li>Orders Placed using Credit/Debit Card, Net Banking, EMI, Prepaid Cash Cards."+
                        "</li>"+
                        "</ul>"+
                        "<p style='text-align: justify; line-height: 22px; margin: 12px;'>Compensation for delay is in the form of Gift Vouchers at the rate of Rs. 50 per business day. " +
                        "GV can be applied to ANY product on Saholic.com without limitation.</p>"+
                        "<span class='right'><a target='_blank' href='/static/on-time-guarantee' style='margin-right: 12px; color: #006699';>Detailed Terms & Conditions</a></span>",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'OTG Know More is clicked', '');
                        }
                });
        });

        $('#cod_know_more,.cod_know_more').click(function(){
                $.colorbox({
                        width: "400px",
                        height: "200px",
                        inline: true,
                        href: "<ul style='list-style:inside; margin-left: 25px; margin-right:12px; font-size:15px; line-height: 22px;'>"
                                + "Expected Delivery Date for "
                                +"<li list-style:inside>Prepaid orders is " + $("#shipping_time .red").html() + "</li>"+
                                "<li list-style:inside>" + $("#shipping_time .cod").html() + "</li>"+
                                "</ul>",
                                onComplete: function(){
                                        trackEventWithGA('Widget', 'COD Know More is clicked', '');
                                }
                });
        });


        $('#shoppingExpInfo').click(function(){
                $.colorbox({
                        width: "550px",
                        height: "320px",
                        inline: true,
                        href: "<h3>Shopping with Saholic.com is completely safe</h3><br />" +
                        "<b>1.</b> We are part of Spice Group - India's # 1 Mobile retailer.<br /><br />" +
                        "<b>2.</b> We procure directly from the Manufacturers - Hence we only sell genuine products with full Manufacturer Warranty.<br /><br />" +
                        "<b>3.</b> We provide free Next Day Delivery to most locations - You can check the delivery time to your location by entering your pin code on the product page.<br /><br />" +
                        "<b>4.</b> We use the best Internet Security technology - Your payment is 100% secure.<br />",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'Safe shopping sticky banner is clicked', '');
                        }
                });
        });

        $('#promotion-diwali').click(function(){
                $.colorbox({
                        width: "550px",
                        height: "280px",
                        inline: true,
                        href: "<h3 style='font-size:15px; text-align:center; font-weight:bold; margin-left:15px; margin-top:5px;margin-bottom:10px'>Terms and Conditions</h3>" +
                        "<ul style='text-align: justify; padding-right: 10px; width: 93%; padding-left: 16px; line-height: 25px;'>"+
                        "<li>The offer is valid on all accessories.</li>"+
                        "<li>A discount of 10% (upto a maximum of Rs.500) will be applicable.</li>"+
                        "<li>The discount can be enjoyed upon using the coupon code: <b>saholicdiwali</b></li>"+
                        "<li> The offer is also valid on Cash on Delivery (COD) orders.</li>"+ 
                        "<li>Only one order per person will be accepted.</li>"+
                        "<li>The offer is valid till November 12, 2013 or till stocks last.</li>"+
                        "<li>Saholic reserves the right to end promotion without any notice.</li>"+ 
                        "</ul>",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'Saholic Diwali sticky banner is clicked', '');
                        }
                });
        });



        $('.insuranceInfo').click(function(){
                $.colorbox({
                        width: "520px",
                        height: "280px",
                        inline: true,
                        href: "<h3 style='font-size:15px; text-align:center; font-weight:bold; margin-left:15px; margin-top:5px;margin-bottom:10px'>Exclusively at Saholic</h3>" +
                        "<ul style='text-align: justify; padding-right: 10px; width: 93%; padding-left: 16px; line-height: 25px;'>"+
                        "<li>Only Saholic brings to you an option to protect your smartphone against theft and burglary.</li>"+
                        "<li>While buying your favourite mobile from Saholic, you can opt for 1 year WorldWide theft insurance.</li>"+
                        "<li>Introductory offer - You can opt for insurance by paying an all inclusive nominal fee of 1.5% of price of your mobile.</li>"+
                        "<a target='_blank' href='/static/insurance-terms' style='float: right; text-decoration: none;color:#006699';>Detailed Terms and Conditions</a>"+
                        "</ul>",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'Insurance sticky banner is clicked', '');
                        }
                });
        });
        
        $('.one_assist_know_more').click(function(){
                $.colorbox({
                        width: "520px",
                        height: "320px",
                        inline: true,
                        href: "<h3 style='font-size:15px; text-align:center; font-weight:bold; margin-left:15px; margin-top:5px;margin-bottom:10px'>An exclusive offer from Saholic</h3>" +
                        "<ul style='text-align: justify; padding-right: 10px; width: 93%; padding-left: 16px; line-height: 25px;'>"+
                        "<li>Saholic brings to you a smart solution to protect your smartphone data against theft, loss and other unfortunate incidents.</li>"+
                        "<li>When you buy your favourite android smartphone from Saholic, Saholic also gives you 90 days free SIM-blocking, Temporary Mobile Replacement & Data Backup service from OneAssist.</li>"+
                        "<li>You also get temporary handset for 7 days with all your data backed up.</li>"+
                        "<a target='_blank' href='/static/oneassist-terms' style='float: right; text-decoration: none;color:#006699';>Know More</a>"+
                        "</ul>",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'One assist know more is clicked', '');
                        }
                });
        });

        $('.emiInfo').click(function(){
                jQuery.ajax({
                        type : "GET",
                        url : "/emi-info",
                        cache: false,
                        success : function(json){
                                var emiPopUp = jQuery("#emi_pop_up_upper");
                                var emiPopUpLower = jQuery("#emi_pop_up_lower");
                                var parsedData = JSON.parse(json);
                                var emiPopUpTd=[];
                                var emiPopUpLowerTd=[];
                                jQuery("#emi_pop_up_upper tr.emi_pop_up_emirow").remove();
                                jQuery("#emi_pop_up_lower tr.emi_pop_up_emirow_lower").remove();
                                emiPopUp.find("tr.emi_pop_up_mk_tenure").after('<tr class="emi_pop_up_emirow"></tr>');
                                emiPopUpLower.find("tr.emi_pop_up_mk_tenure_lower").after('<tr class="emi_pop_up_emirow_lower"></tr>');
                                for (var i=0; i<parsedData.Value.length; i++){
                                        emiPopUpTd.push('<tr class="emi_pop_up_emirow"><td><span style="font-size:11px;font-weight:normal;">' +parsedData.Value[i].Bank+ '</span></td>');
                                        if (checkEmiObject(parsedData.Value[i].T3Months)==1){
                                                emiPopUpTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpTd.push('<td><span style="font-size:11px" class="rupee-icon"><b>' +parsedData.Value[i].T3Months+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.Value[i].T6Months)==1){
                                                emiPopUpTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpTd.push('<td><span style="font-size:11px" class="rupee-icon"><b>' +parsedData.Value[i].T6Months+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.Value[i].T9Months)==1){
                                                emiPopUpTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpTd.push('<td><span style="font-size:11px" class="rupee-icon"><b>' +parsedData.Value[i].T9Months+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.Value[i].T12Months)==1){
                                                emiPopUpTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpTd.push('<td><span style="font-size:11px" class="rupee-icon"><b>' +parsedData.Value[i].T12Months+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.Value[i].T18Months)==1){
                                                emiPopUpTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td></tr>');
                                        }
                                        else{
                                                emiPopUpTd.push('<td><span style="font-size:11px" class="rupee-icon"><b>' +parsedData.Value[i].T18Months+ '</b></span></td></tr>');
                                        }

                                }
                                emiPopUp.find("tr.emi_pop_up_emirow").after(emiPopUpTd.join(""));
                                for (var i=0; i<parsedData.BankCharges.length; i++){
                                        emiPopUpLowerTd.push('<tr class="emi_pop_up_emirow_lower"><td><span style="font-size:11px;font-weight:normal;">' +parsedData.BankCharges[i].Bank+ '</span></td>');
                                        if (checkEmiObject(parsedData.BankCharges[i].T3Months)==1){
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +parsedData.BankCharges[i].T3Months+'%'+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.BankCharges[i].T6Months)==1){
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +parsedData.BankCharges[i].T6Months+'%'+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.BankCharges[i].T9Months)==1){
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +parsedData.BankCharges[i].T9Months+'%'+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.BankCharges[i].T12Months)==1){
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td>');
                                        }
                                        else{
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +parsedData.BankCharges[i].T12Months+'%'+ '</b></span></td>');
                                        }
                                        if (checkEmiObject(parsedData.Value[i].T18Months)==1){
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +'-'+ '</b></span></td></tr>');
                                        }
                                        else{
                                                emiPopUpLowerTd.push('<td><span style="font-size:11px"><b>' +parsedData.BankCharges[i].T18Months+'%'+'</b></span></td></tr>');
                                        }
                                }
                                emiPopUpLower.find("tr.emi_pop_up_emirow_lower").after(emiPopUpLowerTd.join(""));
                        }
                });
                $.colorbox({
                        inline:true, 
                        href:"#emiPopUp",
                        width:"600px",
                        height:"410px",

                        onComplete: function(){
                                $('#emiPopUp').show();
                        },
                        onCleanup: function(){
                                $('#emiPopUp').hide();
                        }
                });
                trackEventWithGA('Widget', 'Emi info widget is clicked', '');
        });

        $('a.mk_best_deal_detail').live('click', function(){
                var offerLinkHtml = '';
                if(OFFER_HELP_LINK!='$OFFER_DETAIL_LINK') {
                        offerLinkHtml = '<a target="_blank" href="' +OFFER_HELP_LINK + '" style="z-index: 1; float: right; bottom: 0px; right: 0px; margin: 15px; position: relative;">More</a></span>';
                }
                $.colorbox({
                        width: "550px",
                        height: "300px",
                        inline: true,
                        href: '<h3 style="text-align: left; padding: 10px;">Offer Details</h3>' +
                        '<p style="text-align: justify; line-height: 22px; margin: 12px;">' + OFFER_HELP_TEXT +
                        '</p><span class="right">' + offerLinkHtml 
                });
        });


        $('#pickupstoreInfo').click(function(){
                $.colorbox({
                        width: "550px",
                        height: "370px",
                        inline: true,
                        href: "<h3>Frequently Asked Questions</h3><br />" +
                        "<b style='color: black; cursor: default;'>Q)</b> What is 'Buy Online & Pickup in Store' ?<br /><br />" +
                        "<b style='color: black; cursor: default;'>A)</b> Buy Online from Saholic.Com and pickup your product from the nearest Spice Hotspot Retail Store.<br /><br />" +
                        "<b style='color: black; cursor: default;'>Q)</b> How do i avail this facility ?<br /><br />" +
                        "<b style='color: black; cursor: default;'>A)</b> Simply select Pickup In Store On the Shipping Page and select your nearest store. Please note this facility is available only in Delhi/NCR.</a><br /><br />"+
                        "<b style='color: black; cursor: default;'>Q)</b> When will the product be available for pickup ?<br /><br />" +
                        "<b style='color: black; cursor: default;'>A)</b> You can enter your pin code on the Product Page to find estimated time to deliver. After placing the order we will also give you the estimated date for pickup.</a><br /><br />",

                        onComplete: function(){
                                var ev = "Product Page";
                                var label = window.location.pathname;
                                if (label=="" || label=="#")
                                {
                                        label = "";
                                        ev = "Home Page";
                                }
                                else if (label.indexOf("shipping") != -1){
                                        ev = "Shipping Page";
                                        var blkstr = [];
                                        jQuery("#cartDetail").find("span.cart-item-name").each(function(key,str){
                                                blkstr.push(str);
                                        });
                                        label = blkstr.join(", ");
                                } else if (label.substr(label.lastIndexOf('/') + 1).length==5 && typeof label.substr(label.lastIndexOf('/') + 1) =="number") {
                                        ev = "Category Page";
                                } else if (label.substr(label.lastIndexOf('-') + 1).length==7  && typeof label.substr(label.lastIndexOf('-') + 1) =="number") {
                                        ev = "Product Page";
                                }
                                trackEventWithGA('Pickup in Store LightBox', ev, label);
                        }
                });
        });

        $('.common-widget-top-bar').live('click', function(e, callback){
                var isColapsed = $(this).data('is_colapsed') == true ? true : false;
                var widgetBox = $(this).siblings('.common-widget-content-area');
                var controlBox = $(this).siblings('.common-widget-control-bar');
                var controlBoxArrowImg = $(this).find('img');

                if (isColapsed) {
                        if(controlBox.length > 0)       {
                                $(controlBox).slideDown('fast', function(){
                                        $(widgetBox).slideDown('fast', callback);
                                        $(controlBoxArrowImg).attr('src', '/images/IconDownArrow_UnselectedTab.png');
                                });
                        } else  {
                                $(widgetBox).slideDown();
                                $(controlBoxArrowImg).attr('src', '/images/IconDownArrow_UnselectedTab.png');
                        }
                } else  {
                        $(widgetBox).slideUp(function(){
                                $(controlBox).slideUp('fast');
                                $(controlBoxArrowImg).attr('src', '/images/IconRightArrow_UnselectedTab.png');
                        });
                }
                $(this).data('is_colapsed', !isColapsed);
        });

        /**
         * Update count of products checked for comparison
         **/
        $('#myresearch input[type="checkbox"]').live('click', function(){
                updateCompareCount();
        });

        $("#research_compare").live('click', function(){
                var seldata = "";
                var prodnames = "";
                var tot = 1;
                var saprt = "";
                var par = $('#myresearch').find('input[type=checkbox]:checked');
                var haveSameProductType = true;
                var productType = null;

                $(par).each(function(){

                        if(productType != null && productType != $(this).attr('producttype'))   {
                                haveSameProductType = false;
                        }
                        productType = $(this).attr('producttype');

                        if(tot == 1)    {
                                prodnames += $(this).attr("title").replace(/ +/g, '-').replace(/\/+/g,'-').replace(/-+/g,'-').toLowerCase();
                                seldata += "p" + tot + "=" + $(this).val();
                        } else  {
                                seldata += "&p" + tot + "=" + $(this).val();
                                prodnames += "-vs-" + $(this).attr("title").replace(/ +/g, '-').replace(/\/+/g,'-').replace(/-+/g,'-').toLowerCase();
                        }
                        tot ++;
                });

                if(! haveSameProductType)       {
                        alert("Only products of same category can be compared");
                } else if(tot > 6)      {
                        alert("Can compare upto five products only.");
                } else if(tot > 2)      {
                        window.location = "/compare-" + productType.replace(/ +/g, '-').toLowerCase() + "/" + prodnames + "?" + seldata+"&fromsrc=comparison_widget";
                } else  {
                        alert("Please select atleast two products");
                }
        });

        $("#research_delete").live('click', function(){
                var research_tot = $("#research_total").val();
                var seldata = [];
                var tot = 0;
                var saprt = "";
                var par = $('#myresearch').find('input[type=checkbox]:checked');

                $(par).each(function(){
                        seldata.unshift($(this).val());
                        tot ++;
                });

                if(tot > 0)     {
                        var t = (research_tot * 1) - (tot * 1);
                        $("#research_total").val(t);

                        jQuery.ajax({
                                type: "GET",
                                url: "/deletefromresearch/[" + seldata + "]?_method=delete",
                                success: function(msg)  {
                                        jQuery.each(seldata, function(intIndex, objValue){
                                                delete_from_storage_set("resitems", objValue);
                                                $("#myresearch").find("#" + objValue).fadeOut('slow', function() {
                                                        $(this).remove();
                                                        if(t === 0)     {
                                                                $("#research_default").css("display", "block");
                                                        }
                                                });
                                        });

                                        //Updating the count
                                        $('#research_compare_count').html($('#myresearch input[type="checkbox"]:checked').length - seldata.length);

                                        if ($('#myresearch input[type="checkbox"]').length - seldata.length <= 0)       {
                                                $("#myresearch").children(".common-widget-top-bar").trigger('click');
                                        }
                                }
                        });
                } else  {
                        alert("Please select atleast one product");
                }
        });

        // No uid cookie
        if (!$.cookie("uid"))   {
                // No uid in storage
                if (!$.Storage.get("uid"))      {
                        if (!$.Storage.get("resitems")) {
                                $.Storage.set("resitems", "[]");
                        }
                        if (!$.Storage.get("histitems"))        {
                                $.Storage.set("histitems", "[]");
                        }
                }
                else    {                       // uid in storage : logout
                        $.Storage.remove("uid");
                        $.Storage.set("resitems", "[]");
                        $.Storage.set("histitems", "[]");
                }
                load_research_widget();
                load_history_widget();
        }
        else    {                               // With uid cookie
                var cookie = $.cookie("uid");
                // Just logged in merge storage items
                if (!$.Storage.get("uid"))      {
                        $.Storage.set("uid", cookie);
                        merge_history_items();
                        load_research_items();
                }
                else    {
                        // UID changed
                        if ( cookie != $.Storage.get("uid"))    {
                                $.Storage.set("uid", cookie);
                                $.Storage.set("resitems", "[]");
                                $.Storage.set("histitems", "[]");
                                merge_history_items();
                                load_research_items();
                        }
                        else    {               // Uid is same
                                if (!$.Storage.get("resitems")) {
                                        $.Storage.set("resitems", "[]");
                                        load_research_items();
                                }
                                else    {
                                        load_research_widget();
                                }

                                if (!$.Storage.get("histitems"))        {
                                        $.Storage.set("histitems", "[]");
                                        merge_history_items();
                                }
                                else    {
                                        load_history_widget();
                                }
                        }
                }
        }

        function load_research_items(){
                jQuery.ajax({
                        type: "GET",
                        url: "/myresearch",
                        cache: false,
                        success: function(json) {
                                $.Storage.set("resitems", json);
                                load_research_widget();
                        }
                });
        }

        function load_research_widget(){
                var myResearchWidgetContainer = $("#myresearch");

                if($(myResearchWidgetContainer).length == 0) {
                        return;
                }
                var resitems = $.Storage.get("resitems");

                if (resitems == "[]") {
                        var emptyResWidgetHtml = '<table border="0" width="100%" cellspacing="1" cellpadding="0" id="research_default">\
                                <tbody>\
                                <tr><td align="center"><b>Add items to compare list</b></td></tr>\
                                </tbody>\
                                </table>';
                        $(myResearchWidgetContainer).find(".common-widget-content-area").html(emptyResWidgetHtml);
                        $(myResearchWidgetContainer).children(".common-widget-top-bar").trigger('click');
                        return;
                }
                var params = "/" + resitems;

                jQuery.ajax({
                        type : "GET",
                        url : "/myresearch" + params,
                        cache: true,
                        success : function(html) {
                                $("#myresearch").html(html);
                                updateCompareCount();

                                // Product Title
                                $("#myresearch table td div a.truncate").each(function() {
                                        $(this).truncate({addtitle : true});
                                });

                                // Product Price
                                $("#myresearch table td div div.price").each(function() {
                                        $(this).truncate({addtitle : true});
                                });

                                // Product Details
                                $("#myresearch table td div div.text").each(function() {
                                        $(this).truncate( {addtitle : true});
                                });
                        }
                });
        }
});

function displayCod(item_id)    {
        $.colorbox({
                width: "400px",
                height: "200px",
                inline: true,
                href: "<ul style='list-style:inside; margin-left: 25px; text-align: justify; margin-right:12px; font-size:15px; line-height: 22px;'>"
                        + "Expected Delivery Date for "
                        +"<li list-style:inside>Prepaid orders is " + $('#days_' + item_id).html() + "</li>"+
                        "<li list-style:inside>Cash On Delivery orders is " + $('#coddays_' + item_id).html() + "</li>"+
                        "</ul>",
                        onComplete: function(){
                                trackEventWithGA('Widget', 'COD Know More is clicked', '');
                        }
        });
}