var scriptActive;
/* добавление товара в корзину */
function catalogPost(id) {
	scriptActive = 1;
	var ajax = new Ajax();
	ajax.onDone = catalogPosted;
	ajax.onFail = catalogFailed;
	ge('forcomment').style.display = 'none';
	//ge('progress').style.display = 'block';
	ajax.post('/modules/catalog/action.php', {'action': 'addItem', 'id': id});
}

function catalogPosted(ajaxObj, responseText) {
	scriptActive = 0;
	var msg;
	switch(responseText) {
		case '101':
			msg = 'Товар добавлен в корзину! <br /><br />Для изменения количества нажмите «Оформить заказ».';
			ge('basketNumItems').innerHTML++;
			//ge('orderButton').style.display = 'block';
			//alert(ge('orderButton').style.display);
			ge('orderButton').style.visibility = 'visible';
			break;
		case '001':
			msg = 'Товар уже находится в корзине!';
			break;
		default:
			msg = 'Во время отправки заявки произошла ошибка. Пожалуйста, повторите попытку.';
	}
	ge('forcomment').style.display = "block";
	ge('progress').style.display = 'none';
	ge('comments').innerHTML = msg;
};

function catalogFailed(ajaxObj, responseText) {
	scriptActive = 0;
	ge('forcomment').style.display = "block";
	ge('progress').style.display = 'none';
	ge('comments').innerHTML = 'Во время отправки сообщения произошла ошибка. Пожалуйста, повторите попытку.';
}


/* оформление заказа */
var active;
function basketPost() {
	if (active) {
		return false;
	} else {
		active = 1;
	}
	scriptActive = 1;
	ge('forcomment').style.display = 'none';
	ge('progress').style.display = 'block';
	var ajax = new Ajax();
	ajax.onDone = basketPosted;
	ajax.onFail = basketFailed;
	//ge('comments').innerHTML = '<div style="text-align:center"><img src="/styles/default/imgs/progress.gif"></div>';
	ajax.post('/modules/catalog/action.php', {'action': 'orderBasket', 'name': ge('name').value, 'phone': ge('phone').value});
}

function basketPosted(ajaxObj, responseText) {
	scriptActive = 0;
	var msg;
	switch(responseText) {
		case '101':
			ge('basketContent').innerHTML  = '<p>Заявка успешно отправлена!</p><p>Как только заявка будет получена, с вами свяжется один из наших менеджеров для оформления заказа.</p>';
			ge('basketNumItems').innerHTML = 0;
			break;
		case '001':
			msg = 'Пожалуйста, заполните все поля.';
			ge('name').style.background = "#FEA39A";
			ge('phone').style.background = "#FEA39A";
			ge('name').focus();
			break;
		case '002':
			msg = 'Представьтесь, пожалуйста.';
			ge('name').style.background = "#FEA39A";
			ge('name').focus();
			break;
		case '003':
			msg = 'Пожалуйста, укажите ваш контактный телефон.';
			ge('phone').style.background = "#FEA39A";
			ge('phone').focus();
			break;
		default:
			ge('comments').innerHTML = responseText;
	}
	if (msg) {
		ge('comments').innerHTML = msg;
		ge('forcomment').style.display = "block";
	}
	ge('progress').style.display = 'none';
	active = 0;
}

function basketFailed(ajaxObj, responseText) {
	scriptActive = 0;
	ge('comments').innerHTML = 'Во время отправки заявки произошла ошибка. Пожалуйста, повторите попытку.';
	ge('forcomment').style.display = "block";
	ge('progress').style.display = 'none';
	active = 0;
}


/* сохранение корзины */
var id;
function saveBasketPost(idIn) {
	id = idIn;
	scriptActive = 1;
	var ajax = new Ajax();
	ajax.onDone = saveBasketPosted;
	ajax.onFail = saveBasketFailed;
	ge('forcomment').style.display = 'none';
	ge('progress').style.display = 'block';
	ajax.post('/modules/catalog/action.php', {'action': 'editBasket', 'item': id, 'quantity': ge('quantity[' + id + ']').value});
}

function saveBasketPosted(ajaxObj, responseText) {
	scriptActive = 0;
	var msg;
	switch(responseText) {
		case '001':
			ge('comments').innerHTML = 'Пожалуйста, введите положительные числа во всех полях.';
			ge('forcomment').style.display = "block";
			break;
		default:
	}
	ge('progress').style.display = 'none';
	if (ge('quantity[' + id + ']').value == 0) {
		ge('item[' + id + ']').style.display = 'none';
		ge('basketNumItems').innerHTML--;
	}
	if (ge('basketNumItems').innerHTML == 0) {
		basketEmpty();
	}
};

function saveBasketFailed(ajaxObj, responseText) {
	scriptActive = 0;
	ge('forcomment').style.display = "block";
	ge('progress').style.display = 'none';
	ge('comments').innerHTML = 'Во время отправки сообщения произошла ошибка. Пожалуйста, повторите попытку.';
}

/* удаление из корзины */
function delFromBasketPost(idIn) {
	id = idIn;
	scriptActive = 1;
	var ajax = new Ajax();
	ajax.onDone = delFromBasketPosted;
	ajax.onFail = delFromBasketFailed;
	ge('forcomment').style.display = 'none';
	ge('progress').style.display = 'block';
	ajax.post('/modules/catalog/action.php', {'action': 'deleteFromBasket', 'id': id });
}

function delFromBasketPosted(ajaxObj, responseText) {
	scriptActive = 0;
	switch(responseText) {
		case '001':
			ge('comments').innerHTML = 'Пожалуйста, введите положительные числа во всех полях.';
			ge('forcomment').style.display = "block";
			break;
		default:
	}
	ge('progress').style.display = 'none';
	ge('basketNumItems').innerHTML = ge('basketNumItems').innerHTML-1;
	ge('item[' + id + ']').style.display = 'none';
	if (ge('basketNumItems').innerHTML == 0) {
		basketEmpty();
	}
};

function delFromBasketFailed(ajaxObj, responseText) {
	scriptActive = 0;
	ge('forcomment').style.display = "block";
	ge('progress').style.display = 'none';
	ge('comments').innerHTML = 'Во время отправки сообщения произошла ошибка. Пожалуйста, повторите попытку.';
}


function basketEmpty() {
	ge('basketContent').innerHTML = 'Ваша корзина пуста.';
}



window.onbeforeunload = unload;
function unload() {
	if (scriptActive == 1) {
		mess = "Форма находится в процессе отправки. Закрытие этой страницы может привести к потере данных."
		return mess;
	}	
}
