function getCategoriesList(nElementId, oTd)
{
	var sOldClassName = $$('LeftCategoriesTreeIcon_' + nElementId).className;

	if (oTd.parentNode.className == 'ArrowClosed' && sOldClassName != 'LoadingIcon') {

		$$('LeftCategoriesTreeIcon_' + nElementId).className = 'LoadingIcon';

		Rx.ajax({
			Url: Rx.sExecuteActionUrl,
			Params:
			{
				_Module:    'Catalogue',
				_Model:     'Categories',
				_Component: 'ListTree',
				_MainTemplate: 'default',
				_Template:  'ListTree',
				OnlyMain: 1,
				ElementId: nElementId
			},
			OnReady: function (result)
			{
				$$('LeftCategoriesTreeIcon_' + nElementId).className = sOldClassName;
				$$('LeftCategoriesTreeChilds_' + nElementId).innerHTML = '';
				var oBox = Rx.findAjaxScripts(result['html']);
				$$('LeftCategoriesTreeChilds_' + nElementId).appendChild(oBox);
				oTd.parentNode.className = 'ArrowOpen';
				$('#LeftCategoriesTreeChilds_' + nElementId).slideDown("slow");
			}
		});
	} else {

		oTd.parentNode.className = 'ArrowClosed';
		$('#LeftCategoriesTreeChilds_' + nElementId).slideUp("slow", function () {$$('LeftCategoriesTreeChilds_' + nElementId).innerHTML = '';});
	}

	return true;
}

function doLogin(oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Users',
			_Model: 'Users',
			_Component: 'Login',
			_IsSended: 1,
			Data: $$('UsersLoginForm')
		},
		OnReady: function ()
		{
			oButton.disabled = null;
			//location.href = '/';
            window.location.reload();
		}
	});
}

function doLogout(oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Users',
			_Model: 'Users',
			_Component: 'Logout',
			_IsSended: 1,
			Data: $$('UsersLoginForm')
		},
		OnReady: function ()
		{
			oButton.disabled = null;
			location.href = '/';
            //window.location.reload();
		}
	});
}

function addToCart(nItemId, nCountItems, oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'Add',
			ItemId: nItemId,
			CountItems: nCountItems
		},
		OnReady: function (result)
		{
			oButton.disabled = null;
			if (result['simple'] == 1) {
				refreshCartBlock();
				alert('Товар добавлен в корзину');
			} else {
				alert('Неизвестная ошибка');
			}
		}
	});

	return;
}

function addToPayCart(nItemId, nCountItems, oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'Add',
			ItemId: nItemId,
            IsPayLink: 1,
			CountItems: nCountItems
		},
		OnReady: function (result)
		{
			oButton.disabled = null;
			if (result['simple'] == 1) {
				refreshCartBlock();
				alert('Товар добавлен в корзину');
			} else {
				alert('Неизвестная ошибка');
			}
		}
	});

	return;
}


function delFromCart(nItemId)
{
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'Delete',
			ItemId: nItemId
		},
		OnReady: function (result)
		{
			if (result['simple'] == 1) {
				refreshCartBlock();
				refreshCart();
			} else {
				alert('Неизвестная ошибка');
			}
		}
	});

	return;
}

function changeCartItem(nItemId, nNewCount, oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'Edit',
			ItemId: nItemId,
			CountItems: nNewCount
		},
		OnReady: function (result)
		{
			oButton.disabled = null;
			if (result['simple'] == 1) {
				refreshCartBlock();
				refreshCart();
			} else {
				alert('Неизвестная ошибка');
			}
		}
	});

	return;
}

function sendCart()
{
	location.href = '/cart/order/';
	return;
}

function refreshCartBlock()
{
	Rx.ajax({
		Url: Rx.sExecuteActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'List',
			_MainTemplate: 'default',
			_Template: 'simple'
		},
		OnReady: function (result)
		{
			$$('CartBlockBoxId').innerHTML = '';
			var oBox;
			oBox = Rx.findAjaxScripts(result['html']);
			$$('CartBlockBoxId').appendChild(oBox);
		}
	});

	return;
}

function refreshCart()
{
	Rx.ajax({
		Url: Rx.sExecuteActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Cart',
			_Component: 'List',
			_MainTemplate: 'default',
			_Template: 'default'
		},
		OnReady: function (result)
		{
			$$('CartBoxId').innerHTML = '';
			var oBox;
			oBox = Rx.findAjaxScripts(result['html']);
			$$('CartBoxId').appendChild(oBox);
			$("a[rel^='prettyPhoto']").prettyPhoto();
		}
	});

	return;
}

function payWm()
{
	if ($$('DivPayWm').style.display == 'none') {
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Users',
				_Model: 'Money',
				_Component: 'Add',
				_IsSended: 1,
				Name: 'WebMoney',
				Type: 1
			},
			OnReady: function (result)
			{
				$$('OrderInputId').value = result['object']['Id'];
				$$('SummInputId').value = '';
				$('#DivPayRobox').slideUp();
				$('#DivPayUrOrder').slideUp();
				$('#DivPayFizOrder').slideUp();
				$('#DivPayWm').slideDown();
			}
		});
	} else {
		$('#DivPayWm').slideUp();
	}
}

function payRoboxchange()
{
	if ($$('DivPayRobox').style.display == 'none') {
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Users',
				_Model: 'Money',
				_Component: 'Add',
				_IsSended: 1,
				Name: 'Roboxchange',
				Type: 1
			},
			OnReady: function (result)
			{
				$$('RoboxOrderInputId').value = result['object']['Id'];
				$$('RoboxCodeId').value = result['simple']['RoboxCode'];
				$('#DivPayWm').slideUp();
				$('#DivPayUrOrder').slideUp();
				$('#DivPayFizOrder').slideUp();
				$('#DivPayRobox').slideDown();
			}
		});
	} else {
		$('#DivPayRobox').slideUp();
	}
}

function payUrOrder()
{
	if ($$('DivPayUrOrder').style.display == 'none') {		
        $$('SummUrInputId').value = '';
        $('#DivPayWm').slideUp();
        $('#DivPayRobox').slideUp();
        $('#DivPayFizOrder').slideUp();
        $('#DivPayUrOrder').slideDown();
	} else {
		$('#DivPayUrOrder').slideUp();
	}
}

function payFizOrder()
{
	if ($$('DivPayFizOrder').style.display == 'none') {
        $$('SummFizInputId').value = '';
        $('#DivPayWm').slideUp();
        $('#DivPayRobox').slideUp();
        $('#DivPayUrOrder').slideUp();
        $('#DivPayFizOrder').slideDown();
	} else {
		$('#DivPayFizOrder').slideUp();
	}
}

function sendCartOrder(sComment, PaymentId, DeliveryId, ShippingId, oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Shop',
			_Model: 'Orders',
			_Component: 'PublicAdd',
			_IsSended: 1,
			Comment: sComment,
			PaymentId: PaymentId,
			DeliveryId: DeliveryId,
			ShippingId: ShippingId
		},
		OnReady: function ()
		{
			oButton.disabled = null;
			location.href = '/cart/order/done/';
		}
	});
}

function deleteMessage(nItemId, sRedirect, oButton)
{
	if (confirm('Удалить сообщение?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Users',
				_Model: 'Messages',
				_Component: 'PublicDelete',
				Id: nItemId
			},
			OnReady: function ()
			{
				oButton.disabled = null;
				location.href = sRedirect;
			}
		});
	}

	return;
}

function deleteNotepadNotes(nItemId, sRedirect, oButton)
{
	if (confirm('Удалить заметку?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Favorites',
				_Model: 'ItemsNotes',
				_Component: 'PublicDelete',
				Id: nItemId
			},
			OnReady: function ()
			{
				oButton.disabled = null;
				location.href = sRedirect;
			}
		});
	}

	return;
}

function addNotepadGoods(nItemId, oButton)
{
	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Favorites',
			_Model: 'ItemsGoods',
			_Component: 'PublicAdd',
			ItemId: nItemId,
			_IsSended: 1
		},
		OnReady: function (result)
		{
			oButton.disabled = null;

			var errors = result['errors'];
			if (errors.length <= 0) {
				refreshNotepadBlock();
				alert('Товар добавлен в блокнот');
			} else {
				alert('Неизвестная ошибка');
			}
		}
	});

	return;
}

function deleteNotepadGoods(nItemId, sRedirect, oButton)
{
	if (confirm('Удалить товар из блокнота?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Favorites',
				_Model: 'ItemsGoods',
				_Component: 'PublicDelete',
				Id: nItemId
			},
			OnReady: function ()
			{
				oButton.disabled = null;
				location.href = sRedirect;
			}
		});
	}

	return;
}

function refreshNotepadBlock()
{
	Rx.ajax({
		Url: Rx.sExecuteActionUrl,
		Params:
		{
			_Module: 'Favorites',
			_Model: 'Items',
			_Component: 'PublicList',
			_MainTemplate: 'default',
			_Template: 'simple'
		},
		OnReady: function (result)
		{
			$$('NotepadBlockBoxId').innerHTML = '';
			var oBox;
			oBox = Rx.findAjaxScripts(result['html']);
			$$('NotepadBlockBoxId').appendChild(oBox);
		}
	});

	return;
}

function doForgetPassword(oButton)
{

	oButton.disabled = "disabled";
	Rx.ajax({
		Url: Rx.sReturnActionUrl,
		Params:
		{
			_Module: 'Users',
			_Model: 'Users',
			_Component: 'ForgetPassword',
			_IsSended: 1,
			_MainTemplate: 'default',
			_Template: 'default',
			Email: $('#ForgetEmail').val()
		},
		OnReady: function (result)
		{
			oButton.disabled = null;
			var errors = result['errors'];
			if (errors.length <= 0) {
				location.href = '/forget_password/done/';
			} else {
				var er = '<div>';
				for (var n in result['errors']) {
					er += '<p>' + result['errors'][n] + '</p>';
				}

				er += '</div>';

				$('#ForgetFormErrors').html(er);
				$('#ForgetFormErrors').show();
				location.hash = '#ForgetFormErrors';
			}
		}
	});
}

function deleteShipping(nItemId, sRedirect, oButton)
{
	if (confirm('Удалить адрес?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Shop',
				_Model: 'Shipping',
				_Component: 'Delete',
				Id: nItemId
			},
			OnReady: function ()
			{
				oButton.disabled = null;
				location.href = sRedirect;
			}
		});
	}

	return;
}

function showAddOrdersItemsDialog(nOffset)
{
	var aParams = {
		_MainTemplate: 'default',
		_Template: 'ajax',
		Offset: nOffset,
		Limit: 10,
		Criteria: {
			IsActive: 1
		}
	};
	Rx.showComponentDialog ('Shop', 'Items', 'PublicList', aParams, 'Выбор товара/услуги', 600, 600);
}

function setOrdersItem(nItemId, sName, sUrl, sPhoto, sPrice)
{
	var nIndex = Math.floor( Math.random( ) * (10000 - 1000 + 1) ) + 1000;
	var sCode = '<tr>'
	+ '<td><img src="' + sPhoto + '" alt="" /></td>'
	+ '<td><a href="' + sUrl + '">' + sName + '</a><input type="hidden" name="Items[' + nIndex + '][ItemId]" value="' + nItemId + '" /><input type="hidden" name="Items[' + nIndex + '][Id]" value="0" /></td>'
	+ '<td><input type="text" name="Items[' + nIndex + '][Quantity]" value="1" style="width: 50px;" /></td>'
	+ '<td>' + sPrice + ' руб.</td>'
	+ '<td>' + sPrice + ' руб.</td>'
	+ '<td><a href="javascript:void(0)" onclick="deleteOrdersItem(this);">Удалить</a></td>'
	+ '</tr>';

	$('#OrdersItemsGoodsTable').find('td.NoGoods').parent().remove();
	$('#OrdersItemsGoodsTable').append(sCode);

	$('#ModalDialogBox').dialog('destroy');

}

function deleteOrdersItem(oTd)
{
	if (confirm('Удаляем?')) {
		$(oTd).parent().parent().remove();
	}
}

function deleteOrder(nItemId, sRedirect, oButton)
{
	if (confirm('Удалить заявку?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Shop',
				_Model: 'Orders',
				_Component: 'PublicDelete',
				Id: nItemId
			},
			OnReady: function ()
			{
				oButton.disabled = null;
				location.href = sRedirect;
			}
		});
	}

	return;
}

function payOrder(nItemId, sRedirect, oButton)
{
	if (confirm('Оплатить счет?')) {
		oButton.disabled = "disabled";
		Rx.ajax({
			Url: Rx.sReturnActionUrl,
			Params:
			{
				_Module: 'Shop',
				_Model: 'Orders',
				_Component: 'PublicPay',
				_MainTemplate: 'default',
				Id: nItemId
			},
			OnReady: function (result)
			{
				oButton.disabled = null;
				var errors = result['errors'];

				if (errors.length <= 0) {
					location.href = sRedirect;
				} else {
					var er = '';
					for (var n in result['errors']) {
						er += result['errors'][n] + "\n";
					}

					alert(er);
				}
			}
		});
	}

	return;
}
