Всем привет. Есть скрипт проверки продажи алкогольной продукции после 22-00. но с новыми изменениями пиво пробивается после 22-00. Кто может подсказать что поменять в скрипте что бы он не продавал фасовоное пиво
Цитата: function init()
{
var Count_Alcohol;
//установка обработчика для события, срабатывающего после открытия документа
frontol.addEventListener("openDocument", "afterOpenDocument", false);
//установка обработчика для события, срабатывающего после восстановления документа
frontol.addEventListener("restoreDocument", "afterrestoreDocument", false);
//установка обработчика для события, срабатывающего до закрытия документа
frontol.addEventListener("closeDocument", "BeforeCloseDocument", true);
//установка обработчика для события, срабатывающего после закрытия документа
frontol.addEventListener("closeDocument", "afterCloseDocument", true);
}
// функция afterOpenDocument() добавляет позицию после открытия документа и
//привязывает события, связанные с последующим добавлением/редактированием позиций, к
//обработчикам
function afterOpenDocument()
{
if (frontol.currentDocument.type.code == 1)
{
Count_Alcohol = 0;
//установка обработчика для события, срабатывающего перед добавлением позиции
frontol.addEventListener("addPosition", "beforeAddPosition", true);
//установка обработчика для события, срабатывающего перед изменением позиции
frontol.addEventListener("changePosition", "BeforeChangePosition", true);
}
}
// функция afterrestoreDocument() после восстановления документа
//ищет позиции с признаком алкогольная продукция и восстанавливает значение счетчика
function afterrestoreDocument()
{
Count_Alcohol = 0;
for (
frontol.currentDocument.position.index = 1;
frontol.currentDocument.position.index <=
frontol.currentDocument.position.count;
frontol.currentDocument.position.index++
)
if (frontol.currentDocument.position.ware.type == 1)
Count_Alcohol += 1;
}
// функция beforeAddPosition(position)
function beforeAddPosition(position)
{
if (position.ware.type == 1)
{
data = new Date();
doc_time = data.getHours();
if (10>doc_time || doc_time>=22)
{
frontol.actions.showError("Продажа алкогольной продукции запрещена с 22-00 до 10-00!!!");
}
Count_Alcohol = Count_Alcohol+1;
}
}
// функция beforeChangePosition(position)
function BeforeChangePosition(position)
{
if (position.ware.type == 1)
{
if (position.storno == 1)
{
Count_Alcohol = Count_Alcohol-1;
}
}
}
// функция BeforeCloseDocument() служит для проверки на наличие алкогольной продукции перед закрытием документа
function BeforeCloseDocument()
{
if (Count_Alcohol>0)
{
data = new Date();
doc_time = data.getHours();
if (10>doc_time || doc_time>=22)
{
frontol.actions.showError("В документе присутствует алкогольная продукция. Продажа запрещена в это время. Сторнируйте оплату, затем стронируйте алкоголь или отмените документ!");
frontol.actions.cancel();
}
}
}
// функция afterCloseDocument() служит для отмены привязки событий к обработчикам
function afterCloseDocument()
{
//убираем обработчик для события, срабатывающего после добавления позиции
frontol.removeEventListener("addPosition", "beforeAddPosition", true);
//убираем обработчик для события, срабатывающего после добавления позиции
frontol.removeEventListener("changePosition", "BeforeChangePosition", true);
}