Zh YandexMap component and plugin, changed filter settings, action and zoom by click on placemark features

Всем привет.
Наконец переделал ввод меток со стороны пользователя.
Теперь фильтр меток работает чуть-чуть по-другому.
* показывать все метки – выводятся все опубликованные метки
* показыватьтолько пользовательские – ограничение по пользователю для опубликованного
При включенном режиме ввода меток – статус для метки пользователя игнорируется.

Завтра в документацию выложу таблицу органичения выборки меток

Добавлены новые поля:
* на метке можно теперь определить что делать в случае клика на ней (action by click)
* и изменять ли масштаб при нажатии на метке (zoom by click)

25 thoughts on “Zh YandexMap component and plugin, changed filter settings, action and zoom by click on placemark features

  • Здравствуйте, Дмитрий, отличные новости из обновления. Спасибо за ваш замечательный компонент. Я потихоньку его осваиваю, и у меня вопрос. Возможно ли ограничить видимость Групп и Категорий для пользователя при вводе новой метки с фронтенда? Это мне нужно чтобы пользователи на определённой странице сайта могли только ткнуть в нужное место, вбить название и описание и больше не с чем не заморачиваться, т.е. чтобы даже не видеть, что есть возможность выбора категории и группы метки. Возможно для этого нужно будет где-то задать группу и категорию по-умолчанию для выводимой карты.
    Спасибо.

    • Dima

      Спасибо.

      Я хочу Вас также обрадовать, что вышел Модуль (Module).

      И Вы сможете публиковать карту в любое место. И там весь функционал компонента, т.е. даже ввод меток и управление через группы. Например, в выводе контакта можно вывести карту
      Пример на сайте разработки http://www.dodge-caliber.ru/index.php/info-contact

      Он уже выложен в JED, и проходит стадию утверждения.

      Что касается ограничения, думаю это реализовать можно.
      Сейчас ведь есть параметр не выводить иконки.
      Думаю надо также добавить не выводить принадлежность и сделать 2 дефолта для группы и категории.

      Если есть возможность подождать недельку-другую – я реализую в порядке очереди. Если хочется быстрее – стимулирование допускается 🙂

  • На счет модуля, так это просто супер. А на счёт стимулирования – не спорю, такой-то проект на одних “Спасибо” далеко не уедет, ну по крайней мере, не с такой скоростью.

  • Андрей

    Доброго времени суток!
    компонент в общем понравился, вот только не нашел возможности связать метки с материалами (кпримеру, пользователь поставил метку, расписал все там, а снизу выводится список всех материалов) очень полезная штука мне кажется будет…

    • Dima

      Добрый вечер.
      Вы можете создать страницу с ссылками, а к метке указать URL страницы и наименование. И тогда во всплывающем окне получите типа
      “См. также …”

      Как назовете.

      PS постите в новый форум, спасибо

  • Здравствуйте, Дмитрий! Скажите, реализована ли возможность указывать ширину карты в процентах?
    width 100% body(content-block) и hight, например, 50% от ширины?

    Мной нелюбимая “резинка” попалась…
    Спасибо!

    • Dima

      Добрый день, Максим.
      Вы можете сделать это очень легко.
      Указываете ширину равной 0
      Вставляете свой див в нужное место, указываете на нем нужную ширину в процентах.
      Вызываете в диве плагин с картой.

      PS – пишите пожалуйста в новом форуме, т.к. если у кого возникнут вопросы – увидят.
      Я уже отвечал на такой вопрос буквально несколько дней назад 😛

    • Dima

      Ну ради такого открытия можно было просто прочитать документацию 😛 😛 😛

  • Владимир

    Добрый день

    Есть сайт недвижимости работающий на компоненте EZrealty 6.1. в joomla 1.5. (демо http://www.ezrealty.info/).
    На карту используемую компонентом необходимо добавить маркеры, перепробовал “кучу” программ (например эту http://www.gmapfp.org/en/demo-to-view-all-places), но все они создают на сайте свою карту с маркерами. Я хочу купить более мощную программу добавления маркеров, но боюсь, что просто выброшу деньги на ветер.

    Вопрос: Что я делаю не так и насколько трудозатратно связать два таких компонента? Ответ или помощь готов оплатить.

    С ув. Владимир

  • Alex

    Добрый день.

    Я столкнулся с тем, что зум по клику на маркере не работает. Правильно ли я понимаю, что при клике по маркеру карта должна центрироваться по коориднатам маркера и изменять масштаб на указанный, и находящийся в бд?
    Что я делаю не так?

    • Dima

      Добрый день.
      А Вы указали на метке нужный масштаб.
      Да, если указан zoom by click, то должно производиться центрирование и масштабирование.

  • Alex

    Да,указал. У меня есть две разных метки с масштабом 13 и 7. Изначальные масштаб карты 10. Но зума не происходит по клику. Возможно я не указал какие-либо другие параметры?

    • Dima

      Добрый вечер.
      Ничего не понимаю. У меня работает, только что попробовал.
      На демосайте

      http://joomla.zhuk.cc/index.php/zhyandex-demo-basic

      Метка 1-9, на мосту. Изменяет масштаб и центрирует.

      Проверьте, последние версии расширений у Вас установлены.

      • Alex

        Добрый день.
        Установлена последняя версия расширений.
        http://rolich.oxnull.net/
        Заметил, что у меня отсутствует строка кода, которая отвечает за зум.
        YMaps.Events.observe(placemark32, placemark32.Events.Click, function (obj) {
        map.setCenter(latlng32);
        map.setZoom(15);

      • Alex

        Добрый день.

        Стоит последняя версия. Вот мой сайт http://rolich.oxnull.net

        Я заметил, что в моем коде отсутствует :
        YMaps.Events.observe(placemark32, placemark32.Events.Click, function (obj) {
        map.setCenter(latlng32);
        map.setZoom(15);

      • Alex

        Добрый день.

        Я заметил, что в мой код не добавляется
        $scripttext .= 'YMaps.Events.observe('.$markername.', '.$markername.'.Events.Click, function (obj) {' ."\n";
        $scripttext .= ' map.setCenter(latlng'. $currentmarker->id.');' ."\n";
        $scripttext .= ' map.setZoom('.(int)$currentmarker->zoombyclick.');' ."\n";
        $scripttext .= '});' ."\n";

        Следовательно не выполняется условие if (($allowUserMarker == 0)
        || (isset($currentmarker->userprotection) && (int)$currentmarker->userprotection == 1)
        || ($currentUserID == 0)
        || (isset($currentmarker->createdbyuser)
        && (((int)$currentmarker->createdbyuser != $currentUserID )
        || ((int)$currentmarker->createdbyuser == 0)))
        )
        Я правильно понимаю? От чего такое может происходить?

  • Alex

    Добрый день.

    Специально переустановил все расширения, проблема осталась.

    Вот мой сайт

    Я заметил, что в мой конечный код не добавляется такая строка кода, как у Вас :
    YMaps.Events.observe(placemark32, placemark32.Events.Click, function (obj) {
    map.setCenter(latlng32);
    map.setZoom(15);

  • Alex

    При использовании модуля, который Вы выложили, все заработало. Интересно, в чем была проблема?

    • Dima

      Я не знаю, обновите компонент также.
      При клике на метках производится масштабирование и центрирование.

      Сделайте тогда еще одну страницу для вызова компонента в таком же виде.

      Пока я не вижу с чем сравнивать.
      Код в компоненте и модели практически одинаков.
      Выложите настройки карты в плане разрешения ввода меток и фильтрации, чтобы попробовать воспроизвести

      • Alex

        Стоит компонент и плагин последней версии.

        Это мой сайт:http://rolich.oxnull.net/

        Фильтр меток * – Выводить все метки
        Ввод маркеров пользователями * – Нет
        Состояние новой метки * – Не опубликовано
        Состояние нового контакта * – Не опубликовано
        Выводить поле выбора типа иконки при создании новой метки * – Нет

        Кстати, если указать Ввод маркеров пользователями * – Да и зайти на сайт под админом, например, то сайт ыдает ошибку

        500 – JHtmlCategory: :options не найден в файле.

        • Dima

          Честно говоря не понял.
          Я сейчас снес все категории на сайте разработки, и нигде не могу получить то, что Вы указываете.
          Обновите все до последней версии. И проверьте.
          Если есть – дайте доступ на сайт на 1-2 дня.
          И создайте тестовые странички, например, одно – вызов компонента, другая – модуля.
          Ну а третья есть (плагин плюс модуль).
          Давайте локализуем проблему, может мой косяк, может – косяк вашей джумлы, например, установка из супового набора

Leave a Reply

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