﻿function CalculatePrice(obj, ProductID) {
    var objSpan = obj.parentNode.getElementsByTagName('SPAN')[0];
    if (!/^[123456789]\d*$/.test(obj.value)) obj.value = 1;
    objSpan.innerHTML = 'در حال پردازش ...';
    var objPanel = document.getElementById('ProductPanel');
    var objInputs = objPanel.getElementsByTagName('INPUT');
    var Include = '';

    for (var i = 2; i < objInputs.length - 1; i += 2) {
        Include += objInputs[i].value + '|' + objInputs[i-1].value + ',';
    }
    Include = Include.substring(0, Include.length - 1);
    var Ajax = new XMLHttp();
	if (Ajax.Support) {
		Ajax.ErrHandler = function(err) {
		    alert('مرورگر وب قادر به دریافت اطلاعات از سایت نمی باشد');
		}
		Ajax.ResHandler = function(re) {
		    var Result = re.split('|');
		    objSpan.innerHTML = Result[0] + ' ریال';
		    var objTotalPrice = document.getElementById('TotalPrice');
		    var PriceHolders = objTotalPrice.getElementsByTagName('B');
		    PriceHolders[0].innerHTML = Result[1] + ' ریال';
		    PriceHolders[1].innerHTML = Result[2] + ' ریال';
		    PriceHolders[2].innerHTML = Result[3] + ' ریال';
		}
		Ajax.Create('/Cart.aspx?PID=' + ProductID + '&PQty=' + obj.value + '&include=' + Include + '&rnd=' + Math.random());
		UpdateCart();
	}
}
function UpdateCart() {
    var Content = '';
    var objTable = document.getElementById('ProductPanel');
    var objInputs = objTable.getElementsByTagName('INPUT');
        for (var i = 2; i < objInputs.length - 1; i += 2) {
            Content += objInputs[i].value + '|' + objInputs[i - 1].value + ',';
        }
    if (Content != '') {
        Content = Content.substring(0, Content.length - 1);
        var Ajax = new XMLHttp();
        if (Ajax.Support) {
            Ajax.ErrHandler = function (err) {
                alert('مرورگر وب قادر به دریافت اطلاعات از سایت نمیباشد');
            }
            Ajax.ResHandler = function (re) {
                //alert('تغییرات با موفقیت ثبت شد');
            }
            Ajax.Create('/Cart.aspx?NewCartValue=' + Content + '&rnd=' + Math.random());
        }
    }
}
function SelectItems(obj) {
    var objPanel = document.getElementById('ProductPanel');
    var objInputs = objPanel.getElementsByTagName('INPUT');

    for (var i=2; i<objInputs.length - 1; i+=2) {
        if (obj.checked) objInputs[i].checked = true;
        else objInputs[i].checked = false;
    }
}
function SelectionStatus() {
    var objPanel = document.getElementById('ProductPanel');
    var objInputs = objPanel.getElementsByTagName('INPUT');
    var boolAllChecked = true;

    for (var i=2; i<objInputs.length - 1; i+=2) {
        if (!objInputs[i].checked) {
            boolAllChecked = false;
            break;
        }
    }
    if (boolAllChecked) objInputs[0].checked = true;
    else objInputs[0].checked = false;
}
function RemoveCheckedItems() {
    var objPanel = document.getElementById('ProductPanel');
    var objInputs = objPanel.getElementsByTagName('INPUT');
    var CheckedItems = '';

    for (var i=2; i<objInputs.length - 1; i+=2) {
        if (objInputs[i].checked) CheckedItems += objInputs[i].value + '|';
    } 
    if (CheckedItems != '') {
        if (window.confirm('آیا از حذف کالاهای انتخاب شده از سبد خریدتان اطمینان دارید؟')) {
            CheckedItems = CheckedItems.substring(0, CheckedItems.length - 1);
            RemoveItems(CheckedItems);
        }
    } else {
        alert('کالایی برای حذف انتخاب نشده است');
    }
}
function RemoveItem(Item) {
    if (!window.confirm('آیا از حذف این کالا از سبد خریدتان اطمینان دارید؟')) return false;
    RemoveItems(Item);
    return false;
}
function RemoveItems(Items) {
    var objPanel = document.getElementById('ProductPanel');
    var objInputs = objPanel.getElementsByTagName('INPUT');
    Items = Items.split('|');
    var Include = '';

    for (var i=2; i<objInputs.length - 1; i+=2) {
        var boolInclude = true;
        for (var j=0; j<Items.length; j++) {
            if (objInputs[i].value == Items[j]) {
                boolInclude = false;
                break;
            }
        }
        if (boolInclude) Include += objInputs[i].value + '|' + objInputs[i-1].value + ',';
    }
    if (Include != '') Include = Include.substring(0, Include.length - 1);

    var Ajax = new XMLHttp();
	if (Ajax.Support) {
		Ajax.ErrHandler = function(err) {
		    alert('مرورگر وب قادر به دریافت اطلاعات از سایت نمی باشد');
		}
		Ajax.ResHandler = function (re) {
		    var Result = re.split('|');
		    for (var i = 2; i < objInputs.length - 1; i += 2) {
		        for (var j = 0; j < Items.length; j++) {
		            if (objInputs[i].value == Items[j]) {
		                var objTR1 = objInputs[i].parentNode.parentNode;
		                var objTR2 = objTR1.nextSibling;
		                objTR1.parentNode.removeChild(objTR1);
		                objTR2.parentNode.removeChild(objTR2);
		                i -= 2;
		                break;
		            }
		        }
		    }
		    var objTotalPrice = document.getElementById('TotalPrice');
		    if (Result[3] == '0') {
		        objTotalPrice.innerHTML = '';
		        var objTR = document.createElement('tr');
		        objTR.className = 'EmptyCart';
		        var objTD1 = document.createElement('td');
		        objTD1.className = 'LeftBorder';
		        objTD1.innerHTML = '&nbsp;';
		        objTR.appendChild(objTD1);
		        var objTD2 = document.createElement('td');
		        objTD2.colSpan = 4;
		        objTD2.innerHTML = 'کالایی در سبد خرید شما موجود نمی باشد';
		        objTR.appendChild(objTD2);
		        var objTD3 = document.createElement('td');
		        objTD3.className = 'RightBorder';
		        objTD3.innerHTML = '&nbsp;';
		        objTR.appendChild(objTD3);
		        objPanel.getElementsByTagName('TBODY')[0].appendChild(objTR);
		        var objBtns = objPanel.getElementsByTagName('INPUT');
		        objBtns[0].checked = false;
		        for (i = 0; i < objBtns.length; i++) objBtns[i].disabled = 'disabled';
		        document.getElementById('ctl00_CPH1_ContinueToCheckout').style.display = 'none';
		        document.getElementById('ctl00_CPH1_btn_SaveCart').style.display = 'none';
		    } else {
		        var PriceHolders = objTotalPrice.getElementsByTagName('B');
		        PriceHolders[0].innerHTML = Result[1] + ' ریال';
		        PriceHolders[1].innerHTML = Result[2] + ' ریال';
		        PriceHolders[2].innerHTML = Result[3] + ' ریال';
		    }
		}
		Ajax.Create('/Cart.aspx?remove=' + Items + '&include=' + Include + '&rnd=' + Math.random());
	}
}
function BoxListMotion(Pos, End, Dir) {
    if (Pos == End) return;
    var Step = 100;
    var Right;
    if (Dir > 0) Right = (parseInt(Pos) + Step < End)? parseInt(Pos) + Step: End;
    else Right = (parseInt(Pos) - Step > End)? parseInt(Pos) - Step: End;
    document.getElementById('BoxList').getElementsByTagName('UL')[0].style.right = Right + 'px';
    window.setTimeout('BoxListMotion(' + Right + ',' + End + ',' + Dir + ')', 50);
}
function InitHOfferPanelsMenu() {
    var OfferPanels = document.getElementById('OfferPanels');
    if (!OfferPanels) return;
    var Panels = OfferPanels.childNodes;
    for (var k=0; k<Panels.length; k++) {
        if (Panels[k].nodeName != 'DIV') continue;
        var Div = Panels[k].childNodes;
        for (var m=0; m<Div.length; m++) {
            if (Div[m].nodeName != 'DIV') continue;
            if (Div[m].className != 'Main') continue;
            var objNextBtn, objPreviousBtn;
            var A = Div[m].childNodes;
            for (var n=0; n<A.length; n++) {
                if (A[n].nodeName != 'A') continue;
                if (A[n].className == 'Carousel_Next') objNextBtn = A[n];
                if (A[n].className == 'Carousel_Pre') objPreviousBtn = A[n];
            }
            var UL = Div[m].getElementsByTagName('UL')[0];
            var LIs = Div[m].getElementsByTagName('LI');
            for (var i=0; i<LIs.length; i++) if (i<6) with(LIs[i].getElementsByTagName('IMG')[0]) src = className;
            UL.style.width = (Math.ceil(LIs.length / 6) * 714) + 'px';
            objPreviousBtn.style.backgroundImage = 'url(/Image/Arrow06.jpg)';
            if (LIs.length > 6) objNextBtn.style.backgroundImage = 'url(/Image/Arrow03.jpg)';
            else objNextBtn.style.backgroundImage = 'url(/Image/Arrow05.jpg)';
        }
    }
}
function BoxListMotion2(Pos, End, Dir, UL) {
    if (Pos == End) return;
    var Step = 20;
    var Right;
    if (Dir > 0) Right = (parseInt(Pos) + Step < End)? parseInt(Pos) + Step: End;
    else Right = (parseInt(Pos) - Step > End)? parseInt(Pos) - Step: End;
    UL.style.right = Right + 'px';
    window.setTimeout(function(){
        BoxListMotion2(Right, End, Dir, UL);
    }, 50);
}
function CarouselNext(obj) {
    var objUL = obj.parentNode.getElementsByTagName('UL')[0];
    var Width = objUL.offsetWidth;
    var CurrentRight = parseInt((objUL.style.right == '')? 0: objUL.style.right.replace('px', ''));
    var Right = CurrentRight - 357;
    if (Width != -Right) {
        BoxListMotion2(CurrentRight, Right, -1, objUL);
        var objItems = objUL.getElementsByTagName('IMG');
        var StartIndex = -(Right / 357) * 3
        for (var i=StartIndex; i<StartIndex + 3; i++) {
            if (!objItems[i]) break;
            with(objItems[i]) src = className;
        }
        var Nodes = obj.parentNode.childNodes;
        for (i=0; i<Nodes.length; i++) {
            if (Nodes[i].nodeName != 'A') continue;
            if (Nodes[i].className == 'Carousel_Pre') Nodes[i].style.backgroundImage = 'url(/Image/Arrow04.jpg)';
        }
        if (Width == -(Right - 357)) obj.style.backgroundImage = 'url(/Image/Arrow05.jpg)';
    }
    return false;
} 
function CarouselPrevious(obj) {
    var objUL = obj.parentNode.getElementsByTagName('UL')[0];
    var Width = objUL.offsetWidth;
    var CurrentRight = parseInt((objUL.style.right == '')? 0: objUL.style.right.replace('px', ''));
    var Right = CurrentRight + 357;
    if (Right <= 0) {
        BoxListMotion2(CurrentRight, Right, 1, objUL);
        var Nodes = obj.parentNode.childNodes;
        for (i=0; i<Nodes.length; i++) {
            if (Nodes[i].nodeName != 'A') continue;
            if (Nodes[i].className == 'Carousel_Next') Nodes[i].style.backgroundImage = 'url(/Image/Arrow03.jpg)';
        }
        if (Right < 0) obj.style.backgroundImage = 'url(/Image/Arrow04.jpg)';
        else obj.style.backgroundImage = 'url(/Image/Arrow06.jpg)';
    }
    return false;
}
