кодування, координати точки вирушають до обробника AJAX запитів (рис. 4.2). Дана технологія побудови інтерактивних користувацьких інтерфейсів веб-додатків, полягає в асинхронному (В«фоновомуВ») обміні даними браузера з веб-сервером. Результат обробки даних сервер повертає у форматі JSON. Якщо в ході обробки виникли помилки (заповнені не всі обов'язкові поля, користувач не авторизований, дані не додані в БД), то видається відповідне повідомлення про помилку (мал. 4.4). Якщо дані були успішно додані, то форма введення закривається і проводиться повторна завантаження міток на карту з параметрами за замовчуванням.
В
Малюнок 4.3 - Додавання інформації. Алгоритм
Робота алгоритму детально проілюстрована на UML-діаграмі послідовностей (рис. 4.4).
В
Малюнок 4.4 - Додавання інформації. UML діаграма послідовності
4.3 Реалізація модуля коментування проблеми
На сторінці окремої проблеми незалежно від того - авторизований користувач чи ні - виводиться стрічка коментарів. Однак, якщо користувач не увійшов в систему, то він не має можливості залишати нові коментарі, при цьому замість форми для введення коментаря виводиться текстова пропозиція входу в систему. p align="justify"> Якщо користувач авторизований, то під стрічкою коментарів виводиться форма введення нового повідомлення (мал. 4.5). Крім цього користувач має можливість відповісти на чиєсь повідомлення, натиснувши на кнопку Відповісти навпроти якого-небудь повідомлення стрічки.
В
Малюнок 4.5 - Коментування проблеми. Алгоритм
При натисканні кнопки Відіслати параметри (значення текстового поля, ID користувача, ID проблеми, ID коментаря, до якого призначався відповідь - за замовчуванням 0 ) передаються за допомогою HTTP-запиту на сервер до обробника ajax. php у вигляді JSON-об'єкта (рис. 4.2). Результатом відповіді сервера також буде JSON-об'єкт, який містить статус операції (виконана без помилок/присутні помилки). Якщо запит завершився помилкою, то текст помилки виводиться в спеціальному вікні, інакше, якщо коментар був доданий в базу даних і не присутній інших помилок, то коментар додається в загальну стрічку.
Якщо коментар залишений у відповідь іншим повідомленням, то при наведенні на нього курсора коментар-батько виділяється кольором, за допомогою jQuery.
5. Контрольний приклад
В
Малюнок 5.1 - Домашня сторінка системи
Такою бачить головну сторінку неавторизований користувач. У шапці сайту знаходиться посилання на авторизацію (рис. 5.1). На карті відобра...