Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
abills:docs:development:modules:maps [2016/08/01 10:51]
anton [Отображение событий на карте]
abills:docs:development:modules:maps [2018/10/19 14:23] (текущий)
larysa
Строка 1: Строка 1:
 +**''​Страница перенесена в Confluence''​**
 +[[http://​abills.net.ua:​8090/​pages/​viewpage.action?​pageId=9601527]]
 +
 ===== Maps Javascript модули ===== ===== Maps Javascript модули =====
 Скрипты для карт лежат в /js/map/ Скрипты для карт лежат в /js/map/
Строка 74: Строка 77:
 { {
   "​TYPE":​ "​MAP_EVENT",​   "​TYPE":​ "​MAP_EVENT",​
-  "MARKERS": [+  "OBJECTS": [
     {     {
-      "COORDS": ​[ +      "ID" ​   $point->​{id},​ 
-        ​48.5427+      "​MARKER":​ { 
-        ​25.03607 +         "​ID" ​   : $point->​{id}
-      ]+         "​COORDX" ​  : $point->​{coordy},​ 
-      "​INFO" ​ : "Hello, map", +         "​COORDY" ​  : $point->​{coordx}
-      "ICON" ​ : "build_red", +         ​"​INFO"​ : "<​strong>​$lang{TYPE}</​strong>:​ $point->​{type_name} <br> <​strong>​$lang{NAME}</​strong>:​ $point->​{name}", 
-      "COUNT" : 2 +         ​"TYPE" : "nas_green" 
-    }+         }
 +       ​"LAYER_ID" : 6 
 +     ​}
   ]   ]
 } }
 </​code>​ </​code>​
  
-Соответсвует формату,​ которым передаются слои и обьекты на карту.+Соответсвует формату,​ которым передаются ​обьекты на карту. Если обьект не имеет установелнного слоя, нужно указывать ''​6''​ (Слой "​Обьекты"​), ​  
 + 
 +==== События карты ==== 
 +Во время загрузки и настройки карты вызываются определённые события.\\ 
 +Асинхронная обработка реализуется благодаря PubSub модели обьектом ''​Events''​. 
 + 
 +=== Последовательность событий во время загрузки карты === 
 +^ onbeforemapcreate |Перед загрузкой скриптов карты| 
 +^ mapsloaded |Происходит после загрузки внешних скриптов карты| 
 +^ layersready |После формирования слоёв ​карты| 
 +^ controlsready |После формирования панели ​управления (кнопок)| 
 +^ mapsconfigured |После настройки карты и обработки дополнительных условий| 
 +^ controlblockshowed |Показана панель управления| 
 +^ controlblockcached |Ссылки на DOM-элементы кнопок панели управления сохранены в кеш| 
 +^ new_point_rendered_%LAYER_ID% |Происходит каждый раз при рендеринге точки слоя| 
 +^ billingdefinedlayersshowed |После обработки ''​ObjectsArray''​ (обьекты,​ переданные в странице)| 
 +^ layerenabled,​ %LAYER_ID% |После включения слоя, %LAYER_ID% передаётся аргументом функции-обработчику события| 
 +^ layerdisabled,​ %LAYER_ID% || 
 + 
 +=== Дополнительные события,​ возникающие во время работы === 
 +^ mapsclick, (event) | Возникает каждый раз при клике по карте, координаты можно получить как (event.latLng.lat(),​ event.latLng.lng())| 
 +^ savingmapconfig |При закрытии страницы,​ во время сохранения настроек карты| 
 +^ clearmapconfig |Перед очисткой сохранённой конфигурации| 
 +^ realpositionretrieved,​ position |Получены координаты от браузера клиента| 
 +^ realpositionfailed |Произошла ошибка получения координат| 
 + 
 +=== События редактирования пользовательских слоев === 
 +^ currentmapobjectfinished | При готовности слоя отправлять обьекты (Пользователь подтвердил завершение редактирования)| 
 +^ proceedingaddingpoints | (Пользователь не подтвердил завершение редактирования)| 
 +^ point_removed_%LAYER_ID% | Отправлен запрос на удаление точки слоя %LAYER_ID% |