﻿$(document).ready(function() {

    var rg = /\+/g;
    var q = jQuery.trim(unescape(QS('q')).replace(rg, " "));
    var d = 'Keyword/Title/ISBN/Author/Publisher';
    if (q != '')
        $('#q').val(q);
    else
        $('#q').addClass('default').val(d);

    var c = document.getElementById('c');
    var v = QS('c');
    if (v != undefined) {
        for (var i = 0; i < c.options.length; i++) {
            if (c.options[i].value == v) {
                c.options[i].selected = true;
                break;
            }
        }
    }

    $('#search').submit(function() {
        if (($('#q').val() == d) || ($('#q').val() == ''))
            return false;
    });

    $('#q').focus(function() {
        if (($(this).val() == d) || ($(this).val() == ''))
            $(this).val('').removeClass('default');
    });

    $('#q').blur(function() {
        if (($(this).val() == d) || ($(this).val() == ''))
            $('#q').addClass('default').val(d);
    });

    $('#newsletter').submit(function() {
        var emailAddress = $('#nemail').val();

        var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
        if (!filter.test(emailAddress) || emailAddress == '') {
            alert('Please provide a valid email address.');
            $('#nemail').select();
            return false;
        }

        if (emailAddress != 'Your email address' && emailAddress != '') {
            $.ajax({
                type: "POST",
                cache: false,
                timeout: 10000,
                url: $('#newsletter').attr('action'),
                data: ({ email: emailAddress, ajax: "True" }),
                success: function(msg) {
                    $('#newsletter').css('display', 'none').next().html(msg);
                }
            });
        }
        return false;
    });

    $('#nemail').focus(function() {
        if (($(this).val() == 'Your email address') || ($(this).val() == ''))
            $(this).val('').removeClass('default');
    });

    $('#nemail').blur(function() {
        if (($(this).val() == 'Your email address') || ($(this).val() == ''))
            $('#nemail').addClass('default').val('Your email address');
    });

    $('div.condition').find('a.used').qtip({ content: '<img src="/images/usedBooksDesc.png" alt="" />',
        show: { delay: 0 },
        style: { width: 240, background: '#333333', padding: 0, position: { target: 'mouse' },
            border: { width: 10, radius: 10, color: '#333333' }
        }
    });

    $('div.condition a.new').qtip({ content: '<img src="/images/newBooksDesc.png" alt="" />',
        show: { delay: 0 },
        style: { width: 240, background: '#333333', padding: 0, position: { target: 'mouse' },
            border: { width: 10, radius: 10, color: '#333333' }
        }
    });

    if ($('#ctl00_MainContent_UniqueAuthors').val() != null) {
        $("input#a").autocomplete($('<textarea/>').html($('#ctl00_MainContent_UniqueAuthors').val()).val().split(","));
    }


    $('.tooltip').tipsy({ gravity: 'w' });




    $("ul.topnav li a").click(function() {
        $(this).parent().find("ul.subnav").slideDown('fast').show();
        $(this).parent().find("ul.subnav").hover(function() {
        }, function() {
            $(this).parent().find("ul.subnav").slideUp('slow');
        });

    }).hover(function() {
        $(this).addClass("subhover");
    }, function() {
        $(this).removeClass("subhover");
    });





});

function ValidateWishlistEmail() {
    var bool = true

    if ($("[id$=txtEmailAddress]").val() != "") {
        var emailAddress = $("[id$=txtEmailAddress]").val().split(",");
        for (i = 0; i < emailAddress.length; i++) {
            var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
            if (!filter.test(emailAddress[i]) && bool == true) {
                bool = false
                $("#errEmail").html("<br/>Enter valid email address")
                $("#errEmail").show()
            }
        }
    } else {
        $("#errEmail").html("<br/>Required")
        $("#errEmail").show()
        bool = false;
    }

    if ($("[id$=txtMessage]").val() == "") {
        $("#errMessage").show()
        bool = false;
    }
    return bool;
}

function ddlSort_Change() {
    document.getElementById('sorting').submit();
}
function AddToBag() {
    document.getElementById('addtobasket').submit();
}
//function changeBookCondition() {
//    document.getElementById('filter').submit();
//}
function AddToWishList(WishlistID) {
    document.getElementById("wid").value = WishlistID
    document.getElementById('addtowishlist').submit();
}
function SubmitFilter(PreviousKeywords) {

    if (PreviousKeywords != "," && PreviousKeywords != '' && PreviousKeywords != "a") {
        if ($('#keywords').val() == "")
            $('#keywords').val(PreviousKeywords);
        else
            $('#keywords').val(PreviousKeywords + "," + jQuery.trim($('#keywords').val()));
    }
    $('#keywords').val(jQuery.trim($('#keywords').val()));
    //$('#[id$=hdnPreviousFilters]').val(PreviousKeywords);
    document.getElementById('filter').submit();
}

function IsValidNumber(evt) {
    evt = (evt) ? evt : window.event
    var charCode = (evt.which) ? evt.which : evt.keyCode
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        status = "Enter Valid Quantity."
        return false
    }
    status = ""
    return true
}

function IsQuantityValid() {
    var errMessage = '';
    $('#tblShoppingBagID input[type=text]').each(function() {
        if (isNaN($(this).val()) == true) {
            errMessage += "ERROR";
        }
        else {
            if ($(this).val() < 0) {
                errMessage += "ERROR";
            }
        }
    });
    if (errMessage != "") {
        alert("Enter valid quantity");
        return false;
    }
    else {
        return true;
    }
}

function ValidateDiscountCoupon() {
    if ($.trim($('#[id$=txtCouponCode]').val()) == "") {
        alert("Please enter a valid coupon code");
        return false;
    }
    else {
        return true;
    }
}

function QS(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regexS = "[\\?&]" + name + "=([^&#]*)";
    var regex = new RegExp(regexS);
    var results = regex.exec(window.location.href);
    if (results == null)
        return "";
    else
        return results[1];
}


function ShowNewShippingAddress() {

    if ($("[id$=rbtNewShipToAddress]").is(':checked')) {
        $("[id$=NewShippingAddress]").slideDown();
    } else {
        $("[id$=NewShippingAddress]").slideUp();
    }

    if ($("[id$=rbtExistingShipToAddress]").is(':checked')) {
        $("[id$=shippingAddress]").slideDown();
    } else {
        $("[id$=shippingAddress]").slideUp();
    }
}

function AttachWishlistAddress(ShippingAddressID) {
    $("[id^=div]").removeAttr("style")
    if (ShippingAddressID != 0) {
        $('[id$=hdnShippingAddressID]').val(ShippingAddressID)
        $("#div" + ShippingAddressID).css("background-color", "#FFF8C6")
        //$("#div" + ShippingAddressID).css("border", "1px solid #C9C299")
    } else {
        $('[id$=hdnShippingAddressID]').val("")
    }
}

function ValidateUserWishlist() {
    if ($("[id$=txtWishlistName]") != undefined && $("[id$=txtWishlistName]").val() != "") {
        return ValidateWishlist();
    } else {
        $("#errWishlistName").removeAttr("style");
        return false;
    }
}

function ValidateWishlist() {
    //DO THE VALIDATION HERE AND THEN PROCEED


    var errMessage = true;


    if ($("[id$=rbtExistingShipToAddress]").is(':checked')) {
        if ($('[id$=hdnShippingAddressID]').val() == "") {
            alert("Please select shipping address.")
            errMessage = false;
        }
    }


    if ($("[id$=rbtNewShipToAddress]").is(':checked')) {

        if ($.trim($('input[id$=ShippingFullName]').val()) == "") {
            $("#errFullName").show();

            errMessage = false;
        }
        if ($.trim($('input[id$=ShippingAddress1]').val()) == "") {
            $("#errAddress1").show();
            errMessage = false;
        }
        if ($.trim($('input[id$=ShippingCity]').val()) == "") {
            $("#errCity").show();
            errMessage = false;
        }
        if ($.trim($('input[id$=ShippingState]').val()) == "") {
            $("#errState").show();
            errMessage = false;
        }
        if ($.trim($('input[id$=ShippingPostcode]').val()) == "") {
            $("#errPostcode").show();
            errMessage = false;
        }
        if ($('#ShippingCountry option:selected').val() == "0" || $('#ShippingCountry option:selected').val() == "") {
            $("#errCountry").show();
            errMessage = false;
        }

        if ($.trim($('input[id$=ShippingPhone]').val()) != "") {
            var ValidChars = "0123456789()+- ";
            var phonenumber = $.trim($('input[id$=ShippingPhone]').val());
            var loopcount = 0;
            for (i = 0; i < phonenumber.length; i++) {
                Char = phonenumber.charAt(i);
                if (ValidChars.indexOf(Char) == -1) {
                    loopcount += 1;
                    if (loopcount == 1) {
                        $("#errPhone").show();
                        errMessage = false;
                    }
                }

            }
        }
    }

    if (errMessage == false) {
        if ($("[id$=NewShippingAddress]").is(':hidden')) {
            $("[id$=NewShippingAddress]").slideDown();
        }
    }

    return errMessage;


}

function validateReview() {
    if ($("#txtReview").val() != "" && $("#txtReviewTitle").val() != "") {
        $("#btnSave").attr("disabled", "disabled")
        $.ajax({
            type: "POST",
            url: "/ajax/reviews/default.ashx?a=nr",
            data: "u=" + UserID + "&p=" + ProductID + "&b=" + $("#txtReview").val() + "&r=" + $("#click-score").val() + "&l=" + document.location.href + "&t=" + $("#txtReviewTitle").val(),
            success: function(msg) {
                if (msg = "1") {
                    $("#ReviewMsg").html("<p><strong>Thank you for your review.</strong> Your review will be visible on this as soon as it has been approved by us. This can take upto 72 hours.")
                } else {

                }
            }

        });



    } else {
        if ($("#txtReview").val() == "")
            $("#errReview").show();
        if ($("#txtReviewTitle").val() == "")
            $("#errReviewTitle").show();
    }
}

function checkLogin() {
    //    var Result=0
    //    $.ajax({
    //        type: "GET",
    //        url: "/ajax/reviews/default.ashx?a=cl",
    //        success: function(msg) {
    //        if (msg = "1") {
    //            Result = 1;
    //            } else {
    //                Result = 0;
    //            }
    //        }

    //    });

    //    if (Result == 0) {
    //        window.location.href = '/login/';
    //    }
}


function onBlurUserReview(obj) {
    if (obj.value != "") {
        $("#errReview").hide();
    }
}

function SaveUserFeedback(ans, rid) {
    $.ajax({
        type: "POST",
        url: "/ajax/reviews/default.ashx?a=sr",
        data: "rid=" + rid + "&f=" + ans,
        success: function(msg) {
            if (msg = "1") {
                $("#ReviewFeedback" + rid).html("Thank you for your feedback.")
            } else {
                $("#ReviewFeedback" + rid).html("Could not complete your task. Please try again later.")
            }
        }

    });
}

function ValidateLengh(text, len) {
    var maxlength = len; // Change number to your max length.
    if (text.value.length > maxlength) {
        text.value = text.value.substring(0, maxlength);
        alert(" Only " + len + " chars");
    }
}


function MoveToWishlist(WishlistID, ProductID) {
    $("input[id$=hdnWishlistID]'").val(WishlistID);
    $("input[id$=hdnProductID]'").val(ProductID);

    $("#aspnetForm").submit();
}

function MoveDropDownToWishList(cpid) {

    var strValue = $('#wishlistdrop' + cpid + ' :selected').val().split(',');
    if (strValue[0] == '0' && strValue[1] == '0') {

    }
    else {
        $("input[id$=hdnWishlistID]'").val(strValue[0]);
        $("input[id$=hdnProductID]'").val(strValue[1]);
        $("#aspnetForm").submit();
    }
}

function MoveItemToWishList(elem) {
    $("input[id$=hdnWishListItem]'").val(elem.value);
    $("#aspnetForm").submit();

}

function AddToWishListBookDetail(elem) {
    document.getElementById("wid").value = elem.value;
    document.getElementById('addtowishlist').submit();
}


function AddWpBillingAddress(t, i) {
    var address = $('#' + i).val().replace(/\^\*\^/g, ', ');
    if (address != '') {
        $('#' + t + 'AddressID').val(i);
        $('#WP' + t + 'Address > .header > em').html(address);

        if (t == 'billing') {
            $('#WPbillingAddressContent').slideUp('slow', function() {
                $('#checkoutButtonbottom').css('display', 'block');
                $('#pnlCheckoutInfo').css('display', 'block');
                $('#billingaddresspanel').css('display', 'none');
                $('#billingaddresslink').css('display', 'none');
            }).parent().addClass('done');

        }
    }
}

function AddBundleBookTextBox() {
    $('#bundleauthor').val($('#a').val());
    $('#bundleresult').html('');
    $.ajax({
        type: "POST",
        url: "/ajax/add-bundle-books/default.ashx",
        data: "author=" + $('#a').val(),
        success: function(msg) {
            $('#bundle').html(msg);
            if ($('#caroselcount').val() > 0) {
                $(document).ready(function() { jQuery('#rb').jcarousel({ scroll: 4 }); });
            }
            else {
                $('#bundle').html('<div class="warning">Bundle sold out.</div>');
            }
        }

    });
}

function AddBundleBook(val, id, type) {
    $('#bundleresult').css('display', 'none');
    $("#id_search_list").css('display', 'none');
    $("#slider").animate({ "left": "-=210px" }, "slow", function() {

        $("#bundle").css('display', 'block');

        $('#bundleauthor').val(val);
        $('#bundleresult').html('');
        $('#bundle').html('<div class="loadinggifbundle"><img src="/images/loading.gif" alt="loading" /></div>');
        $.ajax({
            type: "POST",
            url: "/ajax/add-bundle-books/default.ashx",
            data: "author=" + escape(val) + "&id=" + id + "&type=" + type,
            success: function(msg) {
                $("#slider").css('display', 'none');
                $('#bundle').html(msg);
                if ($('#caroselcount').val() > 0) {
                    //$(document).ready(function() { jQuery('#rb').jcarousel({ scroll: 4 }); });
                }
                else {
                    $('#bundle').html('<div class="warning">Bundle sold out.</div><div class="authorprevious"><a href="#" onclick="ShowAuthor()" id="showauthors" ><img src="/images/previous.jpg" alt="previous" /></a></div>');

                }

            }
        });
    });

}

function ShowAuthor() {
    $('#bundleresult').css('display', 'none');
    $('#bundleresult').html('');
    $("#bundle").animate({ "left": "-=210px" }, "slow");
    $("#bundle").css("display", "none");
    $("#slider").css("right", "420px");
    $("#slider").css("display", "block");
    $("#slider").animate({ "left": "+=210px" }, "slow", function() {
        $("#id_search_list").css('display', 'block');
        $('#divBundleBookDescription').css('display', 'none');
    });


}

function ShowBundle() {
    $('#bundleresult').css('display', 'none');
    $('#bundleresult').html('');
    $('#divBundleBookDescription').slideUp('slow', function() {
        $('#divBundleBookDescription').css('display', 'none');
        $('#bundlebookcontainer').slideUp('slow', function() {
            $('#bundle').css('display', 'block');
            $('#bundlebookcontainer').css('display', 'block');
        });
    });
}
function ShowPopup(val) {
    var stockID;
    stockID = '';
    var child = $("#bundlebooklicontainer div p a[id='" + val + "']")[0];
    $(child).find("img").each(function(i) {
        stockID += $(this).attr('id') + ",";
    });
    $('#stockids').val(stockID);
    $.ajax({
        type: "POST",
        url: "/ajax/bundle-book-details/default.ashx",
        data: "StockID=" + stockID + "&author=" + $('#bundleauthor').val(),
        success: function(msg) {
            $('#divBundleBookDescription').html(msg);
            $('#dialog').jqm({ modal: true });
            $('.jqModal').click();
        }

    });
}

function ShowSlidingContent(val) {
    var stockID;
    stockID = '';
    //$("#bundle").css("display", "none");
    $('#bundleresult').css('display', 'none');
    $('#divBundleBookDescription').css('display', 'none');
    $('#bundlebookcontainer').slideUp('slow', function() {
        $('#divBundleBookDescription').css('display', 'block');
        $("#bundle").css("display", "none");
        $('#divBundleBookDescription').html('<div class="loadinggif"><img src="/images/loading.gif" alt="loading" /></div>');
        var child = $("#bundlebooklicontainer p a[id='" + val + "']")[0];
        $(child).find("img").each(function(i) {
            stockID += $(this).attr('id') + ",";
        });
        $('#stockids').val(stockID);

        $.ajax({
            type: "POST",
            url: "/ajax/bundle-book-details/default.ashx",
            data: "StockID=" + stockID + "&author=" +  escape($('#bundleauthor').val()),
            success: function(msg) {
                $("#bundle").css("display", "none");
                $('#divBundleBookDescription').html(msg);
            }

        });
    });
}

function AddBundleBookToCart() {
    $('#bundleresult').css('display', 'block');
    $.ajax({
        type: "POST",
        url: "/ajax/add-to-cart/default.ashx",
        data: "StockID=" + $('#stockids').val() + "&author=" + $('#bundleauthor').val(),
        success: function(msg) {
            if (msg == "") {
                $('#bundleresult').html('<div class="ok">Bundle added to the cart.</div>');
                //$('#closetag').trigger('click');
                $('#divBundleBookDescription').slideUp('slow', function() {
                    $('#divBundleBookDescription').css('display', 'none');
                    $('#bundlebookcontainer').slideUp('slow', function() {
                        $('#bundle').css('display', 'block');
                        $('#bundlebookcontainer').css('display', 'block');
                    });
                });

                $.ajax({
                    type: "POST",
                    url: "/ajax/shopping-bag/default.ashx",
                    data: "a=1",
                    success: function(msg) {
                        $('#shoppingbagcontainer').html(msg);
                    }

                });

            }
            else {
                $('#bundleresult').html('<div class="warning">' + msg + '</div>');
                //$('#closetag').trigger('click');
                $('#divBundleBookDescription').slideUp('slow', function() {
                    $('#divBundleBookDescription').css('display', 'none');
                    $('#bundlebookcontainer').slideUp('slow', function() {
                        $('#bundle').css('display', 'block');
                        $('#bundlebookcontainer').css('display', 'block');
                    });
                });

            }

        }

    });
}


function Toggle(val) {
    
    $('#ltrAuthorSlider').html('<img src="/images/loading.gif" alt="loading" />');
    $('#categorychooser').slideUp('slow', function() {
        if (val == "A") {
            $.ajax({
                type: "POST",
                url: "/ajax/generate-links/default.ashx",
                data: "Index=A",
                success: function(msg) {
                $('#ltrAuthorSlider').html(msg);
                var qs = $('input#id_search_list').quicksearch('ul#list_example li');
                $.ajax({
                    'url': 'example.json',
                    'type': 'GET',
                    'dataType': 'json',
                    'success': function(data) {
                        for (i in data['list_items']) {
                            $('ul#list_example').append('&lt;li>' + data['list_items'][i] + '&lt;/li>');
                        }
                        qs.cache();
                    }
                });
                }

            });
        }
        else {
            $.ajax({
                type: "POST",
                url: "/ajax/generate-links/default.ashx",
                data: "Index=C",
                success: function(msg) {
                $('#ltrAuthorSlider').html(msg);
                var qs = $('input#id_search_list').quicksearch('ul#list_example li');
                $.ajax({
                    'url': 'example.json',
                    'type': 'GET',
                    'dataType': 'json',
                    'success': function(data) {
                        for (i in data['list_items']) {
                            $('ul#list_example').append('&lt;li>' + data['list_items'][i] + '&lt;/li>');
                        }
                        qs.cache();
                    }
                });
                }

            });
        }
    });
    
    $('#slider').css('display', 'block');
    $('#quicksearchquerybox').css('display', 'block');
    $('#categoryclear').css('display', 'block');
    $("#id_search_list").css('display', 'block');
    $('#bundleresult').css('display', 'none');
}

function StartOver() {
    $('#slider').css('display', 'none');
    $('#quicksearchquerybox').css('display', 'none');
    $('#divBundleBookDescription').css('display', 'none');
    $('#bundle').css('display', 'none');
    if ($('#slider').css('left') == '-420px') {
        $('#slider').css('left', '-210px');
    }
    else if($('#slider').css('left') == '-210px') {
        $('#slider').css('left', '0px');
    }
    $('#bundleresult').css('display', 'none');
    $('#categoryclear').css('display', 'none');
    $('#categorychooser').css('display', 'block');
    $("#id_search_list").val('');
    $('#bundleresult').css('display', 'none');
}
