MapBBCode: встраивание карт в форумы и блоги. А также MapBBCode Share

Я только что зарелизил JavaScript-библиотеку для встраивания карты в форумы. В начале недели её установили на «Проекты Петербурга», так что пора вести ченджлог и не ломать совместимость. Задача библиотеки столь же проста, сколь грандиозна: встроить карты во все движки форумов, блогов, вики и всего остального. Как основа, придуман формат кода в форумном формате bbcode, но его теги легко превращаются в xml или json. На официальном сайте проекта уже выложены модули для phpBB 2 и 3. Там же можно посмотреть, как выглядит код, карта и её редактирование.

Также достаточно стабилен сайт MapBBCode Share. Он предназначен для лёгкого обмена картами: зашёл, сразу нарисовал, нажал «Save» и отправил код. Никакого логина, никаких параметров. В процессе он развился, теперь там есть импорт-экспорт из десятка форматов, JSON API и библиотека: если залогиниться (OpenID: подходят гугль, яндекс, вконтакте, жж), все коды с доступом на редактирование сохраняются.

В общем, всё описано в штосме, суть же проста: если есть время, интегрируйте модуль во что-нибудь. В этот форум, в wordpress, в mediawiki — с чем умеете работать, туда и. Ну и пользуйтесь Share: он очень хорош в сравнении с альтернативами, и по умолчанию там отличный слой карты. Все исходники, разумеется, на гитхабе.

Ну, теперь заживём!
Zverik, ты сработал в не свойственном для OSM стиле - поставил задачу и довёл её решение до конца. Ну, может и не до конца, конечно, но как минимум до важного этапа. Zverikои поздравления :slight_smile:

Хм, наверное нужна статья-новость на Хабре?

+1. Постараюсь продвинуть на сайт “Новый Краснодар”.

Блин, посеял логин от гитхаба, так что багрепорт тут: когда выбираю инструмент для рисования, сразу после щелчка тултип появляется в верхнем левом углу окна, встает он на свое место справа от курсора только после того, как курсор двинется хоть на пиксель.

FF 25 win 32 1024x600

отлично, надо на гислаб прикрутить будет

Хм. На этот самый форум это прикрутят?

Если кто-нибудь разберется как писать плагины для него на примере https://github.com/fluxbb/plugins то да.

UPD: Похоже там нельзя из плагина переписать viewforum.php так что надо

  1. добавить либы на viewforum.php
  2. вот тут https://github.com/fluxbb/fluxbb/blob/master/include/parser.php отловить все [map]…[/map] и обернуть их в дивы и вызовы яваскрипта

Сгенерить патчь, попросить админа http://forum.openstreetmap.org его накатать. Кто знает php?

Можно ссылку на какую-нибудь тему в Проектах Петербурга, в которой вставлена карта с помощью MapBBCode ?

Для примера:
Реконструкция а/д А-181 “Скандинавия”
Ход несостоявшегося наводнения в Петербурге

На http://share.mapbbcode.org/vzgvu/vfxwu не сохраняется тип подложки (ОСМ хочу). Дефолтный Мапсёрфер не отображается при этом.

Zverik Если пользователь уже нарисовал линию/полигон/точку , то надо выводить сообщение о том, что переключение типа удалит его не сохраненную линию и точку. :wink:

Спасибо, не заметил такой фигни. Вечером отправлю пул-реквест в Leaflet.draw и обновлю плагин на сайте.

Если вы напишете плагин для WordPress (или MediaWiki, смотря куда хочешь прикрутить), это будет великолепно. Можно его сделать проектом NextGIS, как угодно — главное, чтобы 1) бесплатно, 2) в режиме просмотра (в блоге) не должно быть никакого принудительного брендирования. Я готов консультировать по любым связанным с библиотекой вопросам.

Поправка: не плагины, а модификации. Их формат не сильно отличается от модификаций phpBB.

Во-первых, ссылки на редактирование нужно распространять осторожно :slight_smile: А подложка не сохраняется, потому что она не часть кода mapbbcode. Я уже много раз объяснял причину, в последний — в этом FAQ (на английском).

Ну это уже перегиб — по-моему, достаточно очевидно, что не сохранит :slight_smile:

Дмитрий, а не мог бы ты сделать некий анонс на http://www.skyscrapercity.com/showthread.php?t=1477842&page=3 или какой-нибудь другой ветке у них? Могу это сделать и я, но я не отношусь к начинателям/первопроходцам этого дела …

Дак может сразу в корень анонс пилить, или на scyscrapercity у разных веток разные версии движка?

Там vBulletin, для него (пока) нет плагина.

Zverik может подключение ресурсов обернуть в js библиотечку с ленивой загрузкой? Или “Do whatever you want and send pull requests”

Это вопрос для форумных модификаций, а не для библиотеки (т.е. даже не ко мне). Я пробовал делать ленивую загрузку — не понравилось. Сложно, проблемы с отслеживанием загрузки, задержки всякие.

Ок, кстати вроде в первом приближении - получилось для FluxBB запилить.

Zverik, огромное спасибо!