Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

0 Пользователей и 1 Гость просматривают эту тему.
  • 11 Ответов
  • 2285 Просмотров
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Была вот такая тема: http://joomlaforum.ru/index.php?topic=184803.0

Я не стал ее продолжать, так как она была озаглавлена "...Kunena 1.6"
По вставке карты в сообщение вопросов нет, как и нет вопросов, что прописывать между терами [map].
Но вот даже в свежей версии 3.0.5, вставляемая в сообщение карта носит жуткую ущербность. Во первых - это древняя версия Google мап, где в большей части городов России, не хватает улиц, по сравнению с новыми версиями Гугл-карт. Соответственно, не возможно проставить реальную "адресную" точку на карте.
Но это пол беды.
Основная беда в том, что подгружаемая Куненой карта, патологически криво работает с координатами, вписанными между терами. (Карта понимает координаты формата 44.ххххх 39.ххххх). Точка то ставится, но отображается она не реально, а привязывается к наиболее близкому, "известному" этой карте пункту - городу, селу, трассе. То есть - пшик полный.
Существует масса форумов на базе Kunena, туристических, для путешественников, велосипедистов, джиперов и т.п, где данный вопрос с точностью отображения (и нормальной картой!) очень актуален. Не говоря уже о возможности вставки в сообщения  Гугл-треков.
В сети болтается много аналогичных вопросов, но нет ни одного ответа.
Возможно ли заменить существующую карту, на актуальные, "правильные" версии, прописав ее вместо дефолтной?
« Последнее редактирование: 16.06.2014, 13:49:04 от Lesha_K »
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Нашёл в libraries/ kunena/ bbcode  начиная со стороки 1058 "прописку" дефолтной карты:
Цитировать
   // Display only link in activity streams etc..
      if (!empty($bbcode->parent->forceMinimal) || !($document instanceof JDocumentHTML)) {
         $url = ' ($bbcode->UnHTMLEncode($content));
         return '<a href="'.$url.'" rel="nofollow" target="_blank">'.$content.'</a>';
      }

      if ($id === false) {
         $document->addScript(' '.($sensor == true ? 'true' : 'false'));
         $id = 0;
      }

      $id ++;
      $mapid = 'kgooglemap'.$id;

      $map_type = isset($params ['type'])? strtoupper($params ["type"]): 'ROADMAP';
      $map_typeId = array('HYBRID','ROADMAP','SATELLITE','TERRAIN');
      if ( !in_array($map_type, $map_typeId) ) $map_type = 'ROADMAP';
      $map_zoom = isset($params ['zoom'])? (int) $params ['zoom']: 10;
      $map_control = $params ['control'] ? (int) $params ['control'] : 0;

      $document->addScriptDeclaration("
      // <![CDATA[
         var geocoder;
         var $mapid;

         window.addEvent('domready', function() {
            geocoder = new Google.maps.Geocoder();
         var latlng = new Google.maps.LatLng(37.333586,-121.894684);
         var myOptions = {
            zoom: $map_zoom,
            disableDefaultUI: $map_control,
            center: latlng,
            mapTypeId: Google.maps.MapTypeId.$map_type
         };
         $mapid = new Google.maps.Map(document.id('".$mapid."'), myOptions);

         var address = ".json_encode($content).";
         if (geocoder) {
            geocoder.geocode( { 'address': address}, function(results, status) {
            if (status == Google.maps.GeocoderStatus.OK) {
               $mapid.setCenter(results[0].geometry.location);
               var marker = new Google.maps.Marker({
                  position: results[0].geometry.location,
                   map: $mapid
               });
            } else {
               var contentString = '<p><strong>".JText::_('COM_KUNENA_GOOGLE_MAP_NO_GEOCODE', true)." <i>".json_encode(addslashes($content))."</i></strong></p>';
               var infowindow$mapid = new Google.maps.InfoWindow({ content: contentString });
                  infowindow$mapid.open($mapid);
            }
            });
         }
         });

      // ]]>"
      );

Какие сделать изменения, чтобы загружалась актуальная версия?
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Продолжаю борьбу с кривой картой. Пришёл к выводу, что собака покопалась вот именно в этой строчке:

maps.google.com/maps/api/js?sensor='.($sensor == true ? 'true' : 'false'));

Kunena использует безключевую, версию гугл-мап, от сего и ущербность.
Вот как выглядит эта строка в рекомендациях от картографического сервиса Гугл:
maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE">

Как я понимаю, для использования нормальной карты, надо использовать бесплатный API-ключ от Google.
Подробнее тут: ссылка
Причём, что интересно, при использовании соответствующего ключа, можно вставлять весь спектр приложений Google этого направления - Google энджен, Гугл-трек, и т.п. (см. список ключей на их страничке).
Остается как-то нормально вписать это в файл bbcode.php, где все танцы вокруг карты начинаются с 1058 строчки.
Я совершенно беспомощен в PHP, но буду пробовать. Буду признателен за помощь.

*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Нет, проблема не в этом. Оперируя различными ссылками с API Google, я научился привязывать к  кнопке "Карта" в редакторе, другие карты.
Но проблема осталась. Маркер не точно отображается по заданным координатам, убегая к населенным пунктам или трассам.
Почитав сеть, просмотрев код, обнаружил, что в нём вообще не прописано отображение такой точки. А прописана библиотека геокодера, которая преобразует адрес вписанный между терами map в точку на подгружаемой карте. Но геокодер и играет обратную, злую шутку. При внесении между терами именно координат, он в конечном итоге отображает на карте не реальную метку, а привязывает ее к наиболее близкому, известному библиотеке геокодера объекту.
Так же, в той части кода, которая отвечает за нанесение маркера на подгружаемую в сообщение карту, нет ни строчки об отображении точки с заданными пользователем между терами координатами. Вывод - код надо править и дописывать.
Вообще - не солидно. При всём функционале Kunena, иметь такую карту, на которой можно ставить маркеры только в населенных пунктах.  Да и функционал кнопки "карта" - плачевен. Зачем мучать пользователя вписанием (читай - экспериментами) между терами map? Не ужели нельзя было сделать вполне удобные окошки, как по кнопке "ссылка"?! В одном ввод координат/адреса, во втором - название метки, к примеру.
*

ChaosHead

  • Moderator
  • 5242
  • 451 / 13
Немного поясню. Функционал карт таков, что написав [map]moscow[/map] пользователь получает карту Москвы. Без всяких ключей и лишних действий. Вот и весь функционал.
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Ну что вы, не соглашусь. На карте можно ставить адресные точки. К примеру, написав [map] Краснодар ул. Северная 210[/map] Мы получим карту Краснодара, с маркером на доме №210 по ул. Северной. Причем не важно, на каком языке. Хоть арабской вязью.
Тоже самое произойдет, если мы введем координаты этого дома, например, из навигатора [map]44.ххххх 39.ххххх[/map].



Для этого в файле bbcode и прописано обращение к библиотеке Google Геокодер.
« Последнее редактирование: 19.06.2014, 00:39:42 от Lesha_K »
*

ChaosHead

  • Moderator
  • 5242
  • 451 / 13
Нужен конкретный пример координат где карта уезжает.
Я не знаком с этим API, но меня смущает.
center: latlng
скорее всего там возможно указывать центр карты.
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
center: latlng
Это строчка определяет центр отображаемой в сообщении карты, его координаты по умолчанию:
var latlng = new Google.maps.LatLng(37.333586,-121.894684); (Команда открыть новую карту Google с координатами центра ....)
Latitude Longitude (latlng) это принятое обозначение широты/долготы, выражаемое в цифровых значениях разных форматов.
В данном случае это Сан-Хосе. Такая карта в сообщении отображается, если между терами [map] ничего не вписано (нужно же задать понятие, что отображать в данном случае).
Теперь о примерах.
Вот фрагмент интерактивной карты мест падений самолётов ВОВ в Краснодарском крае,  на базе модуля Phoca Maps, который загружает стандартную карту Google, и позволяет размещать на ней маркеры с описанием.



Пардон, под руку попался немецкий самолёт, ну да бог с ним.



В окошке, вверху, есть выделенные зеленым координаты. Именно и они введены в характеристики точки для этой карты и модуля.
Как видим в двух скринах выше, точка находится на крутом склоне горы, выше села Красное, в абсолютно реальном месте.

Теперь вводим эти же координаты в сообщение форума Kunena, кнопкой "Карта", в том же формате [map]44.14772 39.15444[/map]
И вот что получаем в отправленном сообщении:



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

Для сравнения, открываем разобычный Google мапс, вводим в поиске те же координаты: 44.14772 39.15444



Получаем точку и маркер, совершенно на правильном месте.

Вывод однозначен. В Куненовской карте, что-то не дописано. Об этом я писал выше.



« Последнее редактирование: 19.06.2014, 14:43:44 от Lesha_K »
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
О! Мысль. Сейчас я просмотрю php модуля Phoca Maps.  Допустим, даже по последнему скрину-примеру видно, что на стандартной Google мапс, идет преобразование вводимых координат формата DDD (49.хххххх) в формат DMS (ddd°mm'ss.ss"), что отображается рядом с маркером. Но никак не в адрес. (Что делает вписанная в кунена-карту библиотека Геокодера).
*

ChaosHead

  • Moderator
  • 5242
  • 451 / 13
Я создал тему на офф форуме www.kunena.org/forum/kunena-3-0-support/131003-maps-problem
*

Lesha_K

  • Захожу иногда
  • 135
  • 8 / 0
Спасибо, мысли читаете. Я и хотел вас об этом попросить, зная, что вы там работаете.
Со своей стороны, продолжаю борьбу именно с php. Потому что совершенно ясно, что в таком отображении точки "виноваты" именно несколько строк прописки и обращению к библиотеке гугл-геокодера.
К примеру, вставьте координаты из постов выше (44.14772 39.15444) в "идеальный" геокодер от Гугла:
http://gmaps-samples.googlecode.com/svn/trunk/geocoder/singlegeocode.html
И получим ту же самую точку на трассе, вместо точки на горе.
*

XaNoy

  • Новичок
  • 1
  • 0 / 0
Решение проблемы нашлось?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не подхватывается файл локализации компонента Kunena v6.0.3

Автор Александр Кардаш

Ответов: 1
Просмотров: 3498
Последний ответ 02.04.2023, 18:12:09
от Александр Кардаш
Нужна помощь в переносе форума с Kunena на wordpress и любой плагин форума

Автор Zoltar22

Ответов: 0
Просмотров: 3204
Последний ответ 19.10.2022, 04:32:49
от Zoltar22
Форум Kunena. нет поля для ввода текста

Автор sarvasvova

Ответов: 2
Просмотров: 3730
Последний ответ 02.08.2022, 09:32:31
от crimeafrend
Kunena при создании новой темы не выводит поле для ввода текста

Автор sarvasvova

Ответов: 0
Просмотров: 6187
Последний ответ 18.11.2021, 00:31:10
от sarvasvova
Консультация по настройке форума

Автор wiwit

Ответов: 7
Просмотров: 3588
Последний ответ 11.11.2021, 14:16:12
от wiwit