Zh YandexMap component, new features. Placemark List

Всем привет.

Наконец-то доделал первый вариант списка меток.
Это демо

Появился дополнительный слайдер в свойствах карты “Placemark List”

Есть 3 вида расположения списка
– верстка таблицей. значение поля Position = Left или Right
– верстка div. Значение поля Position = List-Map или Map-List
– Position = external. Тогда Вы сами создаете div с определенным идентификатором
** YMapsMarkerUL – если сам список сформирован li-элементами
** YMapsMarkerTABLEBODY – если список сделан таблицей
То, как сделан список определяется значением поля Placemark List Content
если значение начинается с Table: – значит сформирован таблицей, иначе – li элементами

При табличном расположении списка высота не имеет значения, т.к. вытягивается на всю высоту карты

Внешний вид (поле Appearance) – как выглядит список, это открытый список, кнопка и разные сочетания.
При табличном расположение смысла выводить кнопку нет, список будет открыт всегда.

Да, еще одно – теперь в списках вы сразу можете менять статус Опубликован или нет, как и в других компонентах joomla!

PS
На текущий момент я думаю это последняя правка для версии Yandex Maps API v.1.x

В течение нескольких дней, может быть недели я повторю код в модуле и плагине, после чего начну работу по поддержки Yandex Maps API v.2.x.

PPS
Будет очень замечательно, если вы отпишитесь в комментах к этому посту, или создадите ветку на форуме по вот какому вопросу:
– я придумал как я буду поддерживать новую версию API карт, но мне также требуется тестирование и прочее
– по этой причине у меня есть предложение:
** сначала переводить под вторую версию Front End часть
** я бы хотел частями реализовывать функционал, т.е., например, создание метки, при этом будет работать только ограниченный функционал, и если пока нет поддержки существующего функционала – возможны либо ошибки выполнения, либо игнорирование этих параметров. Иными словами, например, метка может быть отображена, но группы не работают. Или, не работает поиск по народной карте. Или еще как.
** для чего это. Это позволит при каждом релизе получить кучу тестов с вашей стороны, при этом функционирование прежнее останется.
** как я хочу это сделать. Я хочу добавить в опции самого компонента возможность выбора версии АПИ. Соответственно, переключившись на 2-ю версию, вы получите возможность тестануть вашу конфигурацию в этой версии. А потом спокойно переключиться обратно.
** это позволит мне реализовать сразу часть функций, а потом аккуратно допилить до полной поддержки всего функционала. После чего блок работы с версией АПИ 1 я трогать не буду, а все нововведения будут идти в блоке второй версии.

35 thoughts on “Zh YandexMap component, new features. Placemark List

  • Dima

    Да, должен работать.
    Только с оверлеем не стал разбираться (чтобы сразу над картой). Сделаю это уже на новом АПИ. А в существующей конфигурации думаю через стили и div-верстку как-нибудь сами, если получится 😛

  • Спасибо, как раз недавно мечтал о такой функции. Только вот обновил компонент, а русский не обновился, выдает COM_ZHYANDEXMAP_MAP_DETAIL_PLACEMARKLIST и в таком духе внутри.

  • Дима

    Приветствую!
    Стоит у меня Джумла 2.5 поставил Ваш компонет модуль и плагин.
    Зашел в компонент ввел ключ… и …. при попытке создания карты пишет сообщение неправильный ключ. Все проверил все верно у меня и ключ в том числе.
    С чем такое может быть связано?
    Выручайте, отличный у Вас компонент!

  • Дима

    Разобрался… Почему-то при сохранении пропадали знаки равно … перегрузился все стало нормально…
    Кстати в настройках у Вас все еще есть языковые константы без русского текста

    • Dima

      Добрый день.
      Установлена ли у Вас последняя версия компонента.
      2.4.12
      Если да – то указывайте место, исправлю

  • Дима

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

    • Dima

      Ок, подправил. Выложил новую версию в JED
      Через Extension Manager не возьмется, поэтому скачайте из JED и установите.
      Я не стал из-за одного слова делать новый релиз

  • Дима

    Спасибо.
    Кстати можно ли вообще выключить кнопки маштабирования на карте? “+” и “-“, шкалу убрать можно а кнопки остаются.
    И еще в модуле нет возможности добавлять суфикс класса модуля… 🙁 Есть ли возможность это добавить?

    И по поводу версии API 2 от Яндекса.
    При появлении новой версии Вашего компонента будет ли предусмотрен апгрейд уже существующих карт и всего контента компонента при переходе на новый API?
    Или прийдется все создавать с нуля?

    Заранее благодарен.

    • dima

      Добрый вечер.
      Про суффикс, правильно ли я понимаю, что при его указании просто меняется наименование класса, например у карты.
      Или я ошибаюсь. Можно по подробнее.

      Про версию 2. Я вроде бы подробно описал. Заново ничего не надо будет.
      Я буду подгружать другой код (если получится), и использовать введенные данные только вызывая методы второго АПИ. При этом выбор АПИ будет на уровне опций компонента.

        • Dima

          Добрый день.
          Сегодня вечером, если успею, будут новые релизы по Zh YandexMap: компонент, плагин и модуль.

          • Дима

            В модуле поле появилось для суфикса, но в class не добавилось

            http://www.gocity63.ru/
            Справа два модуля фаербагом посмотрите… внимание на redbg
            Ваш модуль class=”ja-moduletable moduletable clearfix”
            Модуль погоды class=”ja-moduletable moduletable redbg clearfix”

          • Дима

            Да появился, но не там где должен был бы появиться…
            Стиль нужен не карте, а всему модулю…

  • dima

    Да, и для удобства пользоваться форумом, чтобы все в куче не было.

  • Pazys

    Идея!
    В настройках компонента есть пункт: Ключ для API Яндекс.Карты.
    Сразу после него сделать ссылку: Получить ключ http://api.yandex.ru/maps/form.xml – ну и в новом окне открыть.

    Будет очень удобно для пользователей.

    • Dima

      Ну, это просто бантики.
      У меня пока есть что дорабатывать, создавать. Это же просто отнимет время, при учете того, что во второй версии API он не нужен 🙂

      • Pazys

        … ну так мелочи и делают любой продукт гораздо привлекательней.

  • Dobrogo vremeni sutok !

    Nepodskazhesh kak etu hren’ vilechit’


    Notice: Undefined property: stdClass::$nztopomaps in /mnt/data/vhosts/canaryislands.lv/httpdocs/components/com_zhgooglemap/views/zhgooglemap/tmpl/default.php on line 1972

    • Dima

      Привет, Roberts.
      Проверьте, последняя ли версия компонента установлена.

      В версии 2.6.12 было добавлено это поле (nztopomaps) в таблицу конфигурации карты

  • Roberts

    Privet Dim!
    u menja stojala versija 2.10.12,
    potom djatli hosteri chegoto pomenjali v baze i nachelas eto fignja.
    hosteri bjut v grud’ govarjat chto eto neoni eto vsjo “levie coderi” :).
    proboval perestavit zanovo totzhe kompot.

    • Dima

      Roberts, у тебя 2 пути
      Поскольку установка компонента поверх установки (upgrade) устанавливает только новый структуры и обновляет код, то.
      Скорее всего хостеры откатили базу, и у тебя съехала структуры.
      Вариант 1 – если нет критических данных и можно быстро вручную восстановить карты – делается uninstall и установка компонента заново. Т.к. таблицы только в нем создаются.

      Вариант 2 – найти так сказать точку отката, а именно – в phpAdmin посмотреть структуру таблиц, лучше всех, т.к. изменения таблиц хаотические, но идут в порядке наростания версий. Сравнить то, что в install.sql со своей структурой. Найти те столбцы, которые у тебя отсутствуют. А дальше найти sql скрипты в update папке, и прогнать начиная с наименьшего потерянного. Таким образом структуры восстановятся и все будет ок

      • Roberts

        ja zdelal 1 variant i perezalil tablicu s kartami i markerami.
        nepomoglo schas porasil “orlov” chtobi vostanavili vcherashniju rezervnuju kopiju.

        • Roberts

          tolko vot nepoimu kakoe otnoshenie vot eto “Undefined property: stdClass::$nztopomaps” imeet k sql. eto vrode zhe php pribluda ?

          • Dima

            Нет, на этой строке идет проверка значения поля, а поскольку получается, что этого поля нет в таблице, то и нет в структуре. Вот и ругается.
            Посмотрите таблицу #__zhgooglemap_maps, ведь там не все столбцы, что в install.

          • Dima

            Кстати, если backup проходил через akeeba, то у кого-то уже были проблемы – он не бекапит структуры таблиц, и получается, если снесли, то пролетаете. Хотя могу ошибаться, т.к. это было только со слов

  • Roberts

    ja bekapil s phpmyAdmin
    CREATE TABLE IF NOT EXISTS `asa_zhgooglemaps_maps` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `catid` int(11) NOT NULL DEFAULT ‘0’,
    `title` varchar(255) NOT NULL DEFAULT ”,
    `width` int(5) NOT NULL DEFAULT ‘0’,
    `height` int(5) NOT NULL DEFAULT ‘0’,
    `latitude` varchar(20) NOT NULL DEFAULT ”,
    `longitude` varchar(20) NOT NULL DEFAULT ”,
    `zoom` int(3) NOT NULL DEFAULT ‘0’,
    `doubleclickzoom` tinyint(1) NOT NULL DEFAULT ‘0’,
    `scrollwheelzoom` tinyint(1) NOT NULL DEFAULT ‘0’,
    `zoomcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `scalecontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `maptype` tinyint(1) NOT NULL DEFAULT ‘0’,
    `maptypecontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `overviewmapcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `rotatecontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `pancontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `trafficcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `streetviewcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `bikecontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `balloon` tinyint(1) NOT NULL DEFAULT ‘0’,
    `openballoon` tinyint(1) NOT NULL DEFAULT ‘0’,
    `pospan` tinyint(1) NOT NULL DEFAULT ‘0’,
    `posmaptype` tinyint(1) NOT NULL DEFAULT ‘0’,
    `poszoom` tinyint(1) NOT NULL DEFAULT ‘0’,
    `posscale` tinyint(1) NOT NULL DEFAULT ‘0’,
    `posstreet` tinyint(1) NOT NULL DEFAULT ‘0’,
    `description` text NOT NULL,
    `markermanager` tinyint(1) NOT NULL DEFAULT ‘0’,
    `published` tinyint(1) NOT NULL DEFAULT ‘0’,
    `earth` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markercluster` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markerclustergroup` tinyint(1) NOT NULL DEFAULT ‘0’,
    `clusterzoom` int(3) NOT NULL DEFAULT ‘0’,
    `kmllayer` text NOT NULL,
    `markergroupcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markergroupwidth` int(5) NOT NULL DEFAULT ’20’,
    `markergroupshowicon` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markergroupcss` int(5) NOT NULL DEFAULT ‘0’,
    `markergroupdesc1` text NOT NULL,
    `markergroupdesc2` text NOT NULL,
    `markergrouptitle` varchar(255) NOT NULL DEFAULT ”,
    `markergroupsep1` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markergroupsep2` tinyint(1) NOT NULL DEFAULT ‘0’,
    `headerhtml` text NOT NULL,
    `footerhtml` text NOT NULL,
    `headersep` tinyint(1) NOT NULL DEFAULT ‘0’,
    `footersep` tinyint(1) NOT NULL DEFAULT ‘0’,
    `openstreet` tinyint(1) NOT NULL DEFAULT ‘0’,
    `placesenable` tinyint(1) NOT NULL DEFAULT ‘0’,
    `placesautocomplete` tinyint(1) NOT NULL DEFAULT ‘0’,
    `placesacwidth` int(5) NOT NULL DEFAULT ’70’,
    `placestypeac` text NOT NULL,
    `placestype` text NOT NULL,
    `placesradius` int(10) NOT NULL DEFAULT ‘0’,
    `placesdirection` tinyint(1) NOT NULL DEFAULT ‘0’,
    `panoramioenable` tinyint(1) NOT NULL DEFAULT ‘0’,
    `panoramiofiltercontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `panoramiofiltercontrolpos` tinyint(1) NOT NULL DEFAULT ‘2’,
    `panoramiotag` varchar(250) NOT NULL DEFAULT ”,
    `panoramiouser` varchar(250) NOT NULL DEFAULT ”,
    `findcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `findwidth` int(5) NOT NULL DEFAULT ‘0’,
    `findpos` tinyint(1) NOT NULL DEFAULT ‘2’,
    `findroute` tinyint(1) NOT NULL DEFAULT ‘0’,
    `elevation` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usercontact` tinyint(1) NOT NULL DEFAULT ‘0’,
    `useruser` tinyint(1) NOT NULL DEFAULT ‘0’,
    `routedraggable` tinyint(1) NOT NULL DEFAULT ‘0’,
    `routeshowpanel` tinyint(1) NOT NULL DEFAULT ‘0’,
    `params` text NOT NULL,
    `autoposition` tinyint(1) NOT NULL DEFAULT ‘0’,
    `geolocationcontrol` tinyint(1) NOT NULL DEFAULT ‘0’,
    `geolocationpos` tinyint(1) NOT NULL DEFAULT ‘2’,
    `geolocationbutton` tinyint(1) NOT NULL DEFAULT ‘1’,
    `lang` varchar(20) NOT NULL DEFAULT ”,
    `custommaptype` tinyint(1) NOT NULL DEFAULT ‘0’,
    `custommaptypelist` text NOT NULL,
    `mapstyles` text NOT NULL,
    `routeaddress` text NOT NULL,
    `markerlist` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markerlistpos` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markerlistwidth` int(5) NOT NULL DEFAULT ‘0’,
    `markerlistheight` int(5) NOT NULL DEFAULT ‘0’,
    `markerlistbgcolor` text NOT NULL,
    `markerlistaction` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markerlistcontent` tinyint(1) NOT NULL DEFAULT ‘0’,
    `markerlistbuttonpos` tinyint(1) NOT NULL DEFAULT ‘3’,
    `markerlistbuttontype` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usermarkers` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usermarkersfilter` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usermarkerspublished` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usermarkersicon` tinyint(1) NOT NULL DEFAULT ‘1’,
    `usercontactpublished` tinyint(1) NOT NULL DEFAULT ‘0’,
    `usercontactattributes` text NOT NULL,
    `minzoom` int(3) NOT NULL DEFAULT ‘0’,
    `maxzoom` int(3) NOT NULL DEFAULT ‘0’,
    `draggable` tinyint(1) NOT NULL DEFAULT ‘1’,
    `streetview` tinyint(1) NOT NULL DEFAULT ‘0’,
    `streetviewstyleid` int(11) NOT NULL DEFAULT ‘0’,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

    • Dima

      Roberts, я посмотрел.
      Получается, что у тебя не прошла нормальная установка версии компонента 2.6.12
      Сделай следующее – выполни под phpAdmin скрипт создания столбца
      com_zhgooglemap\admin\sql\updates\mysql\2.6.12.sql

  • Дима

    Тут надо

    как в

    Мне надо стиль модуля задать а не самой карте…

  • Дима

    div class=”ja-moduletable moduletable redbg clearfix” id=”Mod106″
    div class=”ja-moduletable moduletable ????? clearfix” id=”Mod108″

    • Dima

      Не понял 🙁
      Я ведь спросил, Вы ответили.
      Ведь модуль – это просто место, в которое выводится то, что мы хотим.
      Или я не понимаю чего-то.

  • Дима

    Оно так конечно, но в этом варианте суфикс класса модуля для изменения стиля всего модуля … к примеру название модуля на синем фоне или не карасном… цвет белый или черный… далее уже в стале я могу задать и содержимоу там где карта свои нюансы форматирования и стлизирования…

Leave a Reply

Your email address will not be published. Required fields are marked *