newNumber = function (obj) {
	if (typeof(obj) == 'string') {
		return Number(obj.replace(',','.').replace(/[\s]/g, ''));
	} else {
		return Number(obj);
	}
}

function russianNumFormat(nStr) {
			nStr += '';
			x = nStr.split('.');
			x1 = x[0];
			x2 = (x.length > 1) ? ',' + x[1] : ',00';
			var rgx = /(\d+)(\d{3})/;
			while (rgx.test(x1)) {
				x1 = x1.replace(rgx, '$1' + ' ' + '$2');
			}
			return x1 + x2;
		}
 

function setCount(count, unified_id, price){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
    request.onreadystatechange = __setCount;
    request.open('POST', '/plugins/ajax/cart.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('action=count&count=' + newNumber(count) + '&id=' + unified_id + '&price=' + price);
}

function cartItemChange(unified_id) {
	var cutting = $('cutting_'+unified_id).value;
	var wh = $('width_height_'+unified_id).value;
	var paper = $('paper_'+unified_id).value;
	var count = $('unitCount-'+unified_id).value
	
	window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
        
    request.onreadystatechange = reload;
    request.open('POST', '/plugins/ajax/change.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('&cutting=' + newNumber(cutting) + '&wh=' + wh + '&paper=' + paper+"&unif_id="+unified_id+"&count="+count);		
}

function reload() {
	if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (!response) {
				window.location = window.location;
			} else {
				alert(response);
			}
		}
	}
}

function setStatus(status, unified_id){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
    request.onreadystatechange = __setStatus;
    request.open('POST', '/plugins/ajax/cart.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('action=status&status=' + (status.checked?1:0) + '&unified_id=' + unified_id);
}

function setOrder(action, value){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    var sessionId   = $('sessionId').value;
    var sessionType = $('sessionType').value;

    request.onreadystatechange = __setOrder;
    request.open('POST', '/plugins/ajax/order.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('action=' + action + '&value=' + value + '&sessionId=' + sessionId + '&sessionType=' + sessionType);

    if (action == 'cutting'){
        var n = $('paperFormats').getElementsByTagName('INPUT').length + 1;
        for (var i = 1; i < n; i ++){
            $('Recommend-' + i + '-0').style.display = (value == 1) ? 'none' : '';
            $('Recommend-' + i + '-1').style.display = (value == 0) ? 'none' : '';
        }
    }
}

function setFormat(format){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    var sessionId   = $('sessionId').value;
    var sessionType = $('sessionType').value;

    request.onreadystatechange = __setFormat;
    request.open('POST', '/plugins/ajax/format.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('action=set&format=' + format);
}

function removeFrame(){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    var sessionId   = $('sessionId').value;
    var sessionType = $('sessionType').value;

    request.onreadystatechange = __removeFrame;
    request.open('POST', '/plugins/ajax/frame.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('state=remove&sessionId=' + sessionId + '&sessionType=' + sessionType);
}

function sendCustomFrame(){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    showBlockAlert('Подождие, идет процесс сохранения рамки');

    var sessionId   = $('sessionId').value;
    var sessionType = $('sessionType').value;

    var fillet = $('filletUnifiedId').value;
    var filletWidth = $('inpFilletWidth').value;
    var filletDepth = $('inpFilletDepth').value;
    var filletPrice = $('filletPrice').innerHTML;

    var mount1  = $('mountUnifiedId1').value;
    var mount1Width  = $('mountWidth1').innerHTML;
    var mount1Price  = $('mountPrice1').innerHTML;

    var mount2  = $('mountUnifiedId2').value;
    var mount2Width  = $('mountWidth2').innerHTML;
    var mount2Price  = $('mountPrice2').innerHTML;

    var mount3  = $('mountUnifiedId3').value;
    var mount3Width  = $('mountWidth3').innerHTML;
    var mount3Price  = $('mountPrice3').innerHTML;

    var glass  = $('glassUnifiedId').value;
    var glassPrice  = $('glassPrice').innerHTML;

    var framePath  = encodeURIComponent($('framePath').value);

    request.onreadystatechange = __sendCustomFrame;
    request.open('POST', '/plugins/ajax/frame.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('state=custom&fillet=' + fillet + '&filletWidth=' + filletWidth + '&filletDepth=' + filletDepth +
        '&glass=' + glass + '&glassPrice=' + glassPrice +
        '&url=' + framePath +
        '&mount1=' + mount1 + '&mount2=' + mount2 + '&mount3=' + mount3 +
        '&mount1Width=' + mount1Width + '&mount2Width=' + mount2Width + '&mount3Width=' + mount3Width +
        '&sessionId=' + sessionId + '&sessionType=' + sessionType +
        '&filletPrice=' + filletPrice + '&glassPrice=' + glassPrice + '&mount1Price=' + mount1Price + '&mount2Price=' + mount2Price + '&mount3Price=' + mount3Price);
}

function sendFrame(){
    window.request = __xmlHttpRequest();
    if (!request){
        showBlockAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    showBlockAlert('Подождие, идет процесс сохранения рамки');

    var sessionId   = $('sessionId').value;
    var sessionType = $('sessionType').value;
    var frame = $('frameUnifiedId').value;
    var price = $('framePrice').innerHTML;

    request.onreadystatechange = __sendFrame;
    request.open('POST', '/plugins/ajax/frame.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('state=frame&id=' + frame + '&url=' + encodeURIComponent($('framePath').value) + '&sessionId=' + sessionId + '&sessionType=' + sessionType + '&price=' + price);
}

function removeFromCart(sItem){
    if (sItem == undefined){
        showAlert('Не выбран элемент корзины');
        return false;
    }
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    var sType = document.getElementById('cartItemType').value;
    request.onreadystatechange = __removeFromCart;
    request.open('POST', '/plugins/ajax/cart.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('action=remove&id=' + sItem + '&type=' + sType);
    showFullBg();
}

function checkFaq(_this, sName, sEmail, sText){
	sSubject = 'qwe';
    var reEmail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/i;
    if (sName.replace(/\s/, '').length == 0){
        showAlarm(_this, 'Укажите свое имя!');
        return false;
    }
    if (sEmail.replace(/\s/, '').length == 0){
        showAlarm(_this, 'Укажите свой e-mail!');
        return false;
    }
    if (!reEmail.test(sEmail)){
        showAlarm(_this, 'Укажите корректный e-mail!');
        return false;
    }
    if (sSubject.replace(/\s/, '').length == 0){
        showAlarm(_this, 'Укажите тему сообщения!');
        return false;
    }
    if (sText.replace(/\s/, '').length == 0){
        showAlarm(_this, 'Введите текст сообщения!');
        return false;
    }
    return true;
}

function sendFaq(_this, sName, sEmail, sSubject, sText){
    if (!checkFaq(_this, sName, sEmail, sSubject, sText)){ return false; }

    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
    request.onreadystatechange = __sendFaq;
    request.open('POST', '/plugins/ajax/faq.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('name=' + sName + '&email=' + sEmail + '&subject=' + sSubject + '&text=' + sText);
}

function checkLoginEmail(){
    if (!document.getElementById('signupLogin')){ return false; }
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }

    var sLogin = document.getElementById('signupLogin').value;
    var sEmail = document.getElementById('signupEmail').value;

    request.onreadystatechange = __checkLoginEmail;
    request.open('POST', '/plugins/ajax/check_login.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('login=' + sLogin + '&email=' + sEmail);
}

function requestPassword(){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
    request.onreadystatechange = __requestPassword;
    request.open('POST', '/plugins/ajax/password.php', true);
    request.send(promptText);
}

function checkLogin(sLogin, sPassword){
    window.request = __xmlHttpRequest();
    if (!request){
        showAlert('Ваш браузер безнадежно устарел');
        return false;
    }
    request.onreadystatechange = __checkLogin;
    request.open('POST', '/plugins/ajax/login.php', true);
    request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    request.send('login=' + sLogin + '&password=' + sPassword);
}

function __requestPassword(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            showAlert((response == 'success=error') ? 'Вы не зарегистрированы на сайте!' : ('Новый пароль выслан на email ' + response));
        } else { }
    }
}

function __checkLogin(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Неверный логин или пароль!');
            } else {
                document.getElementById('formLogin').submit();
            }
        } else { }
    }
}

function __checkLoginEmail(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Заполните форму!');
                return false;
            } else if (response == 'login') {
                showAlert('Данный логин используется!');
                return false;
            } else if (response == 'email') {
                showAlert('Данный e-mail используется!');
                return false;
            } else if (response == 'success'){
                var res = formsValidate($('formAccount'));
                if (res){
                    $('formAccount').submit();
                }
            } else { showAlert(response); }
        } else {  }
    }
}

function __sendFaq(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Неопознанная ошибка!');
                return false;
            } else if (response == 'name') {
                showAlert('Укажите свое имя!');
                return false;
            } else if (response == 'email') {
                showAlert('Укажите свой e-mail!');
                return false;
            } else if (response == 'subject') {
                showAlert('Укажите тему вопроса!');
                return false;
            } else if (response == 'text') {
                showAlert('Напишите текст вопроса!');
                return false;
            } else {
                showAlert('Сообщение отправлено администратору');
                $('faqSubject').value = '';
                $('faqText').value = '';
                return true;
            }
        } else {  }
    }
}

function __removeFromCart(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else if (response == 'not found'){
                showAlert('Катринка не найдена!');
                return false;
            } else {
                if (document.getElementById('add-cart-' + response).checked){
                    $('topOrderItems').innerHTML = newNumber($('topOrderItems').innerHTML.replace(' ','').replace(',','.')) - 1;
                    $('topOrderSubtotal').innerHTML = newNumber(newNumber($('topOrderSubtotal').innerHTML.replace(' ','').replace(',','.')) - newNumber($('priceTotal-' + response).innerHTML.replace(' ','').replace(',','.'))).toFixed(2);

                    $('pageCategorySubtotal').innerHTML = newNumber(newNumber($('pageCategorySubtotal').innerHTML.replace(' ','').replace(',','.')) - newNumber($('priceTotal-' + response).innerHTML.replace(' ','').replace(',','.'))).toFixed(2);
                    $('pageOrderSubtotal').innerHTML = newNumber(newNumber($('pageOrderSubtotal').innerHTML.replace(' ','').replace(',','.')) - newNumber($('priceTotal-' + response).innerHTML.replace(' ','').replace(',','.'))).toFixed(2);
                }

                var item = document.getElementById('cartItem-' + response);
                item.parentNode.removeChild(item);
                return true;
            }
        } else {  }
        removeFullBg();
    }
}

function __sendFrame(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else {
                window.opener.document.getElementById('Cutting1').click();
                window.opener.imageFrame.src   = response;
                window.opener.document.getElementById('glassMagnify').style.display = 'block';
                window.opener.document.getElementById('imgFrameCorner').src =
                    document.getElementById('imgFrameCorner').src;

                window.opener.document.getElementById('frameLinksRemove').style.display = '';
                window.opener.document.getElementById('frameLinksAdd').style.display = 'none';

                if (window.opener.document.getElementById('fieldsetCutting')){
                    disableElements(window.opener.document.getElementById('fieldsetCutting'));
                }
                if (window.opener.document.getElementById('paperFormats')){
                    disableElements(window.opener.document.getElementById('paperFormats'));
                }
                if (window.opener.document.getElementById('calendarType')){
                    window.opener.document.getElementById('calendarType').disabled = true;
                }
                if (window.opener.document.getElementById('calendarFormatmonth')){
                    window.opener.document.getElementById('calendarFormatmonth').disabled = true;
                }
                if (window.opener.document.getElementById('calendarFormatyear')){
                    window.opener.document.getElementById('calendarFormatyear').disabled  = true;
                }

                var framePrice = newNumber($('framePrice').innerHTML).toFixed(2);
                if (window.opener.document.getElementById('tblItems')){
                    var n = window.opener.document.getElementById('tblItems').getElementsByTagName('TR').length - 2;
                    for (var i = 1; i <= n; i ++){
                        window.opener.document.getElementById('priceFrame_' + i).innerHTML = framePrice;
                        window.opener.document.getElementById('framePrice_' + i).value = framePrice;
                    }
                } else {
                    window.opener.document.getElementById('priceFramePerUnit').innerHTML = framePrice;
                    window.opener.document.getElementById('priceTotalFrame').value   = framePrice;
                    if ($('framePrice').innerHTML  != 0){ window.opener.document.getElementById('rowFrame').style.display = ''; }
                }

                //window.opener.$('imgFrame').style.display = 'inline';
                window.opener.calcPrice();
                window.opener.focus();
                window.close();
            }
        } else {  }
    }
}

function __sendCustomFrame(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else {
                if ($('filletPrice').innerHTML == 0) {
                    window.opener.focus();
                    window.close();
                    return false;
                }

                window.opener.document.getElementById('Cutting1').click();
                window.opener.imageFrame.src   = response;

                window.opener.document.getElementById('glassMagnify').style.display = 'block';
                window.opener.document.getElementById('imgFrameCorner').src =
                    document.getElementById('imgFrameCorner').src;

                window.opener.document.getElementById('frameLinksRemove').style.display = '';
                window.opener.document.getElementById('frameLinksAdd').style.display = 'none';

                if (window.opener.document.getElementById('fieldsetCutting')){
                    disableElements(window.opener.document.getElementById('fieldsetCutting'));
                }
                if (window.opener.document.getElementById('paperFormats')){
                    disableElements(window.opener.document.getElementById('paperFormats'));
                }
                if (window.opener.document.getElementById('calendarType')){
                    window.opener.document.getElementById('calendarType').disabled = true;
                }
                if (window.opener.document.getElementById('calendarFormatmonth')){
                    window.opener.document.getElementById('calendarFormatmonth').disabled = true;
                }
                if (window.opener.document.getElementById('calendarFormatyear')){
                    window.opener.document.getElementById('calendarFormatyear').disabled  = true;
                }

                if (window.opener.document.getElementById('tblItems')){
                    var framePrice =
                        newNumber($('filletPrice').innerHTML) +
                        newNumber($('glassPrice' ).innerHTML) +
                        newNumber($('mountPrice1').innerHTML) +
                        newNumber($('mountPrice2').innerHTML) +
                        newNumber($('mountPrice3').innerHTML);

                    framePrice.toFixed(2);

                    var n = window.opener.document.getElementById('tblItems').getElementsByTagName('TR').length - 2;
                    for (var i = 1; i <= n; i ++){
                        window.opener.document.getElementById('priceFrame_' + i).innerHTML = framePrice;
                        window.opener.document.getElementById('framePrice_' + i).value = framePrice;
                    }
                } else {

                    if ($('filletPrice').innerHTML != 0){ window.opener.document.getElementById('rowFillet').style.display = ''; }
                    if ($('glassPrice').innerHTML  != 0){ window.opener.document.getElementById('rowGlass').style.display  = ''; }
                    if ($('mountPrice1').innerHTML != 0){ window.opener.document.getElementById('rowMount1').style.display = ''; }
                    if ($('mountPrice2').innerHTML != 0){ window.opener.document.getElementById('rowMount2').style.display = ''; }
                    if ($('mountPrice3').innerHTML != 0){ window.opener.document.getElementById('rowMount3').style.display = ''; }

                    window.opener.document.getElementById('priceFilletPerUnit').innerHTML  = $('filletPrice').innerHTML;
                    window.opener.document.getElementById('priceGlassPerUnit').innerHTML   = $('glassPrice').innerHTML;
                    window.opener.document.getElementById('priceMountPerUnit_1').innerHTML = $('mountPrice1').innerHTML;
                    window.opener.document.getElementById('priceMountPerUnit_2').innerHTML = $('mountPrice2').innerHTML;
                    window.opener.document.getElementById('priceMountPerUnit_3').innerHTML = $('mountPrice3').innerHTML;

                    window.opener.document.getElementById('priceFilletSubTotal').innerHTML = ($('filletPrice').innerHTML * window.opener.document.getElementById('copyQuantity').value).toFixed(2);
                    window.opener.document.getElementById('priceGlassSubTotal').innerHTML  = ($('glassPrice').innerHTML  * window.opener.document.getElementById('copyQuantity').value).toFixed(2);
                    window.opener.document.getElementById('priceMount1SubTotal').innerHTML = ($('mountPrice1').innerHTML * window.opener.document.getElementById('copyQuantity').value).toFixed(2);
                    window.opener.document.getElementById('priceMount2SubTotal').innerHTML = ($('mountPrice2').innerHTML * window.opener.document.getElementById('copyQuantity').value).toFixed(2);
                    window.opener.document.getElementById('priceMount3SubTotal').innerHTML = ($('mountPrice3').innerHTML * window.opener.document.getElementById('copyQuantity').value).toFixed(2);

                    window.opener.document.getElementById('inpPriceFillet').value = $('filletPrice').innerHTML;
                    window.opener.document.getElementById('inpPriceGlass').value  = $('glassPrice').innerHTML;
                    window.opener.document.getElementById('inpPriceMount1').value = $('mountPrice1').innerHTML;
                    window.opener.document.getElementById('inpPriceMount2').value = $('mountPrice2').innerHTML;
                    window.opener.document.getElementById('inpPriceMount3').value = $('mountPrice3').innerHTML;

                }

                window.opener.calcPrice();
                window.opener.focus();
                window.close();
            }
        } else {  }
    }
}

function __setFormat(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else {
            }
        } else {  }
    }
}

function __setOrder(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else if (response != 'success'){
                window.imageCutting.src = response;
            }
        } else { }
    }
}

function __setStatus(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else {
                if (document.getElementById('add-cart-' + response).checked){
                    $('topOrderItems').innerHTML = newNumber($('topOrderItems').innerHTML) + 1;
                    $('topOrderSubtotal').innerHTML = (newNumber($('topOrderSubtotal').innerHTML) + newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);

                    $('pageOrderSubtotal').innerHTML = (newNumber($('pageOrderSubtotal').innerHTML) + newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);
                    $('pageCategorySubtotal').innerHTML = (newNumber($('pageCategorySubtotal').innerHTML) + newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);
                } else {
                    $('topOrderItems').innerHTML = newNumber($('topOrderItems').innerHTML) - 1;
                    $('topOrderSubtotal').innerHTML = (newNumber($('topOrderSubtotal').innerHTML) - newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);

                    $('pageOrderSubtotal').innerHTML = (newNumber($('pageOrderSubtotal').innerHTML) - newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);
                    $('pageCategorySubtotal').innerHTML = (newNumber($('pageCategorySubtotal').innerHTML) - newNumber($('priceTotal-' + response).innerHTML)).toFixed(2);
                }
            }
        } else { }
    }
}

function __setCount(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else {
                var count = $('unitCount-' + response).value;
                var oldCount = newNumber($('printCount' + response).innerHTML);
                var total = 0;

                $('printCount' + response).innerHTML = count;
                $('priceSubTotal-' + response).innerHTML = (newNumber($('pricePerUnit-' + response).innerHTML) * count).toFixed(2);
                total += newNumber($('priceSubTotal-' + response).innerHTML);

                if ($('frameCount' + response)){
                    $('frameCount' + response).innerHTML = count;
                    $('priceFrameSubTotal-' + response).innerHTML = (newNumber($('priceFramePerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceFrameSubTotal-' + response).innerHTML);
                }
                if ($('filletCount' + response)){
                    $('filletCount' + response).innerHTML = count;
                    $('priceFilletSubTotal-' + response).innerHTML = (newNumber($('priceFilletPerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceFilletSubTotal-' + response).innerHTML);
                }
                if ($('glassCount' + response)){
                    $('glassCount' + response).innerHTML = count;
                    $('priceGlassSubTotal-' + response).innerHTML = (newNumber($('priceGlassPerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceGlassSubTotal-' + response).innerHTML);
                }
                if ($('priceWorkCount' + response)){
                    $('priceWorkCount' + response).innerHTML = count;
                    $('priceWorkSubTotal-' + response).innerHTML = (newNumber($('priceWork' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceWorkSubTotal-' + response).innerHTML);
                }
                if ($('mount1Count' + response)){
                    $('mount1Count' + response).innerHTML = count;
                    $('priceMount1SubTotal-' + response).innerHTML = (newNumber($('priceMount1PerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceMount1SubTotal-' + response).innerHTML);
                }
                if ($('mount2Count' + response)){
                    $('mount2Count' + response).innerHTML = count;
                    $('priceMount2SubTotal-' + response).innerHTML = (newNumber($('priceMount2PerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceMount2SubTotal-' + response).innerHTML);
                }
                if ($('mount3Count' + response)){
                    $('mount3Count' + response).innerHTML = count;
                    $('priceMount3SubTotal-' + response).innerHTML = (newNumber($('priceMount3PerUnit-' + response).innerHTML) * count).toFixed(2);
                    total += newNumber($('priceMount3SubTotal-' + response).innerHTML);
                }

                $('priceTotal-' + response).innerHTML = total.toFixed(2);
                if (document.getElementById('add-cart-' + response).checked){
                    var priceDiff = (count - oldCount) * newNumber($('summPricePerUnit-' + response).innerHTML);

                    $('topOrderSubtotal').innerHTML     = (newNumber($('topOrderSubtotal').innerHTML)     + priceDiff).toFixed(2);
                    $('pageOrderSubtotal').innerHTML    = (newNumber($('pageOrderSubtotal').innerHTML)    + priceDiff).toFixed(2);
                    $('pageCategorySubtotal').innerHTML = (newNumber($('pageCategorySubtotal').innerHTML) + priceDiff).toFixed(2);
                }
            }
        } else { }
    }
}


/**
 *
 * @access public
 * @return void
 **/
function __removeFrame(){
    if (request.readyState == 4){
        if (request.status == 200){
            var response = request.responseText;
            if (response == 'error'){
                showAlert('Произошла ошибка!');
                return false;
            } else if (response == 'success'){
                document.getElementById('glassMagnify').style.display = 'none';
                window.imageFrame = new Image();
                $('imgFrame').style.display = 'none';
                $('frameLinksRemove').style.display = 'none';
                $('frameLinksAdd').style.display = '';
                document.getElementById('imgCutting').style.display = 'inline';

                if ($('fieldsetCutting')){
                    enableElements($('fieldsetCutting'));
                    if ($('Cutting1').checked){$('Cutting1').click();}
                    else { $('Cutting2').click(); }
                } else { $('Cutting1').click(); }
                if ($('paperFormats'   )){ enableElements($('paperFormats'));    }
                if ($('calendarType'   )){ $('calendarType').disabled = false;   }
                if ($('calendarFormatmonth')){ $('calendarFormatmonth').disabled = false; }
                if ($('calendarFormatyear')){ $('calendarFormatyear').disabled  = false; }

                if ($('tblItems')){
                    var framePrice = 0;
                    var n = $('tblItems').getElementsByTagName('TR').length - 2;
                    for (var i = 1; i <= n; i ++){
                        $('priceFrame_' + i).innerHTML = framePrice;
                        $('framePrice_' + i).value = framePrice;
                    }
                } else {
                    $('rowFrame').style.display  = 'none';
                    $('rowFillet').style.display = 'none';
                    $('rowGlass').style.display  = 'none';
                    $('rowMount1').style.display = 'none';
                    $('rowMount2').style.display = 'none';
                    $('rowMount3').style.display = 'none';
                }

                var arrRadioPaperFormats = document.getElementById('paperFormats').getElementsByTagName('INPUT');

                for (var i = 1, n = arrRadioPaperFormats.length; i < n; i ++){
                    if (arrRadioPaperFormats[i].checked){
                        arrRadioPaperFormats[i].click();
                        break;
                    }
                }

                calcPrice();
            }
        } else { }
    }
}

function __xmlHttpRequest(){
    var req = false;
    try { req = new window.XMLHttpRequest(); } catch (e){
    try { req = new window.ActiveXObject('Msxml2.XMLHTTP'); } catch (e){
    try { req = new window.ActiveXObject('Microsoft.XMLHTTP'); } catch (e){}}}

    return req;
}

