﻿$(initProductRelatedAjax);

function initProductRelatedAjax() {
    A2ZCommerceWebService.set_defaultSucceededCallback(success);
    A2ZCommerceWebService.set_defaultFailedCallback(fail);
}

function rateThis(objID, productID) {
    var obj = document.getElementsByName(objID);
    var value = obj[0].value;
    if (value == "") {
        value = 0;
    }
    A2ZCommerceWebService.RateProduct(productID, value);
}


function success(result, userContext, methodName) {
    if (methodName == "RateProduct") {
        if (result == false) {
            alert("please login first!");
        }
        else {
        }
    }
    if (methodName == "AddToCart") {
        if (result == -1) {
            alert("please login first!");
        }
        else {
            //showMessege("Hi Ahmed");
            alert("you have " + result + " Products in your shopping cart!");
            document.getElementById("cartItems").innerHTML = result;

        }
    }
    if (methodName == "AddProductToCart") {
        if (result == -1) {
            alert("please login first!");
        }
        else {
            //showMessege("Hi Ahmed");
            alert("you have " + result + " Products in your shopping cart!");
            document.getElementById("cartItems").innerHTML = result;
        }
    }
    if (methodName == "RemoveFromCart") {
        if (result == -1) {
            alert("please login first!");
        }
        else {
            processRemoveFromCart(result, userContext);
        }
    }

    if (methodName == "ReOrderProducts") {
        alert("Order has been saved successfully!");
    }


    if (methodName == "ReOrderGroups") {
        alert("Order has been saved successfully!");
    }

    if (methodName == "ReOrderTradeSitePages") {
        alert("Order has been saved successfully!");
    }
    

}

function fail(exception, userContext, methodName) {
    if (exception._timedOut == false) {
        alert(exception.get_message() + "\n\rIn: " + methodName);
    }
    else {
        alert("Method " + methodName + " has timmed out!");
    }
}


function addSelectedToCart() {
    var arr = new Array();
    for (var i = 0; i < document.getElementsByTagName("span").length; i++) {
        var obj = document.getElementsByTagName("span")[i];
        if (obj.className == "p_check") {
            var checkBox = obj.childNodes[0];
            if (checkBox.checked == true) {
                arr.push(obj.attributes["productid"].value);
            }
        }
    }

    A2ZCommerceWebService.AddToCart(arr);
}


function AddProductToCart(id) {
    A2ZCommerceWebService.AddProductToCart(id);
}


function RemoveProductFromCart(id) {
    A2ZCommerceWebService.RemoveFromCart(id, null, null, id);
}


function ToggleProductVisibility(obj, productID) {
    A2ZCommerceWebService.ToggleProductVisibility(obj.checked, productID);
}

function ToggleTradeLeadVisibility(obj, productID) {
    A2ZCommerceWebService.ToggleTradeLeadVisibility(obj.checked, productID);
}


function processRemoveFromCart(result, productID) {
    var s = "#p" + productID;
    $(s).remove();
    document.getElementById("cartItems").innerHTML = result;
}


function saveProductsList() {
    var result = $('#sortProductsList').sortable('toArray');
    A2ZCommerceWebService.ReOrderProducts(result);
    //alert(result);
}


function saveGroupsList() {
    var result = $('#sortGroupsList').sortable('toArray');
    A2ZCommerceWebService.ReOrderGroups(result);
}


function saveTradeSitePagesList() {
    var result = $('#sortTradeSitePages').sortable('toArray');
    A2ZCommerceWebService.ReOrderTradeSitePages(result);
}
