/** ** JS ОБРАБОТКИ КОРЗИНЫ версия 1.0 ** ********************************
*
* 2007, CMS Октопус - РА "Кукумбер" - http://www.cucumber.ru/
*
* Вы можете изменить поведение этих функций, если вам необходимо.
*
*
* Предназначение функций:
* addToBasket - добавление в корзину, вызывайте её при добавлении товара
* introError - вызывается в случае ошибки
* responceMessage - функция вызывается, если пришли сообщение
* updateInformers - функция вызывается, если есть необходимость обновить информаторы корзины
*
* Для того, чтобы инициировать добавление в корзину необходимо вызывать функцию
* octopusAddToBasket(table,id,amount),
* где table - таблиц из которой добавляется товар,
* id - id в этой таблице,
* id - количество добавляемых товаров.
* Фукция возвращает true, если товар успешно добавен.
* false - если товар не добавен и инициируется вызов
* responceMessage() с сообщением об ошибке
*
* НИ ОДНУ ИЗ ЭТИХ ФУКЦИЙ, ДАЖЕ ЕСЛИ ОНА НЕ НУЖНА, НЕЛЬЗЯ УДАЛЯТЬ !
*
* Для правильной работы на страницах сайта должны быть подключен файл JS.
* <script type="text/javascript" src="/basket/script"></script>
*
* А также этот или подобные ему скрипт, например
* <script type="text/javascript" src="/basket/default.js"></script>
*
**/

/**
* Добавление в корзину
* @param string table - таблица
* @param int id 		- id в таблице
* @param int amount 	- количество
*
*/
function addToBasket (table,id,amount) {
	amount = amount || 1;
	if (octopusAddToBasket(table,id,amount)) {
		return true;
	} else {
		introError();
		return false;
	}
}

/**
* При возникновении внутреней ошибки базовых скриптов
*/
function introError() {
	alert('Ошибка. Положить товар в корзину не удалось!');
}


/**
* Обновление сообщений, пришедших после добавления товара
* Вызов фукции происходит с некоторой задержкой.
* Отдаются сообщения об ошибках и о нормальном заверщении,
* эта функция опциональна.
*
* @param string text 	- текст сообщений
* @param int code 		- код сообщения
*					      0 - "товар добавлен", 1 - "корзина не активна",
					      2 - "ошибка при добавлении"
*
*/
function responceMessage (text, code) {
	if (code == 1 || code == 2) {
		alert (text);
	} else {
		//закоментируйте следующую строку, если вы не хотите чтобы
		//при добавлении появлялось сообщение
		//alert(text);
	}
	return true;
}

/** Обновление сообщений, пришедших после добавления товара
*	Вызов фукции происходит с некоторой задержкой.
*	При ошибках функция не вызывается
*	@param string text 	- текст сообщений
*	@param array ids - массив id элементов ВСЕХ информаторов корзины для обновлений
					   будьте аккуратны часть из них может отсутствовать
*
*	@return bool
*/
function updateInformers (ids,inner) {

	var len=0;
	if (typeof(ids) == 'object' && typeof(inner) == 'object' && ids.length == inner.length) {
		for (var i=0;i<ids.length;i++){
			if (document.getElementById(ids[i]) != null) {
				iId = document.getElementById(ids[i]);
				iId.innerHTML = inner[i];
			}
		}
	}
}
