Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Розробка інформаційного web-сайту

Реферат Розробка інформаційного web-сайту





, висловлюючись в термінах системи, установки значення властивості з кодом MAIN_METAMARK елемента інформаційного блоку «Ігри» при зміну, видалення або додаванні елемента інформаційного блоку «Огляди», в якому в значення властивості з кодом GAME_ID збігається з ідентифікатором елемента інформаційного блоку «Ігри». Але вносити зміни в сценарії роботи панелі управління системи не рекомендується. Таким чином, актуальним стає питання, як можна перехопити подія додавання елемента інформаційного блоку.

Для вирішення такого типу проблем у системі передбачена технологія подій і обробників подій панелі управління. При реалізації зазначеного в попередньому абзаці вимоги необхідно використовувати такі типи подій:

- Подія додавання елемента інформаційного блоку. Нас цікавить подія, що наступає при успішному додаванні елемента. В системі дана подія має код «OnAfterIblockElementAdd»;

- Подія зміни елемента інформаційного блоку. Код - «OnAfterIblockElementUpdate»;

- Подія видалення елемента інформаційного блоку. Код - «OnBeforeIblockElementDelete»;

Маючи можливість перехоплення і обробки зазначених вище подій, можна вибудувати алгоритм реалізації вимоги.

- Отримати дані елемента інформаційного блоку, що бере участь у події;

- Визначити інформаційний блок, якому належить елемент

- Якщо інформаційний блок не відповідає інформаційному блоку «Огляди», припинити обробку події;

- Визначити змінюваний елемент інформаційного блоку «Ігри» (властивість з кодом GAME_ID);

- Провести розрахунок і привласнити отриманий результат властивості за кодом MAIN_METAMARK елемента інформаційного блоку «Ігри».

Щоб зареєструвати обробник, необхідно скористатися вбудованою функцією API системи:

void AddEventHandler (string from_module_id, string event_id, mixed callback, int sort=100, mixed full_path=false)

from_module_id - ідентифікатор модуля, який буде ініціювати подія; _id - ідентифікатор події; - назва функції обробника;

sort - черговість (порядок), в якому виконується даний обробник; _path - повний шлях до файлу для підключення при виникненні події перед викликом callback;

У нашому випадку, реєстрація обробників подій буде виглядати наступним чином:

AddEventHandler («iblock», «OnAfterIblockElementAdd», «add_review_handler»); («iblock», «OnAfterIblockElementUpdate», «add_review_handler»); («iblock», «OnBeforeIblockElementDelete», «delete_review_handler») ;

Для реалізації алгоритму, зазначеного вище, написано дві функції:

void delete_review_handler (int ID)

Функція - обробник події видалення елемента інформаційного блоку з ідентифікатором ID.

void add_review_handler (array & arFields)

Функція - обробник події додавання елемента інформаційного блоку. $ ArFields - передається за посиланням масив з даними доданого елемента. Ця ж функція обробляє і подія зміни елементу.

Таким чином, вимога по автоматичному підрахунку оцінки гри за оцінками оглядів може бути реалізоване без зміни сценаріїв панелі управл...


Назад | сторінка 18 з 26 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Сутність, функції і роль банків, як елемента банківської системи
  • Реферат на тему: Подія в журналістському тексті (на прикладі публікацій про події на Україні ...
  • Реферат на тему: Подія в журналістському тексті (на прикладі публікацій про події на Україні ...
  • Реферат на тему: Синтез блоку управління операції додавання в арифметико-логічному пристрої
  • Реферат на тему: Відновлення справності елемента енергетичної установки