Новости Joomla

WT Yandex map items v.2.1.0 модуль для Joomla.Выводит материалы Joomla в виде меток на Яндекс.Карты

WT Yandex map items v.2.1.0 модуль для Joomla.Выводит материалы Joomla в виде меток на Яндекс.Карты

👩‍💻 WT Yandex map items v.2.1.0 модуль для Joomla.Выводит материалы Joomla в виде меток на Яндекс.Карты.v.2.1.0. Что нового?Сохранение последнего вида карты. Добавлены новые опции, позволяющие как для одного экземпляра модуля, так и для всех сохранять на устройстве пользователя последний использованный центр (координаты) и масштаб (zoom) карты. Это позволит открыть карту в том же месте после обновления страницы или при повторном открытии браузера.Определение местоположения пользователя.Модуль может определять местоположение пользователя и центрировать карту на нём. При одновременном использовании с функцией сохранения последнего вида карты определение геопозиции будет срабатывать только в первый раз. В дальнейшем, если обнаружены сохранённые данные центра и масштаба - будут использоваться они.CSS классы для маркеров карты.Всем маркерам карты добавлен CSS-класс wt-yandex-map-items-marker. Для просмотренных маркеров (по которым кликали) добавляется CSS-класс wt-yandex-map-items-marker-viewed, что позволит выделять просмотренные маркеры с помощью стилей в CSS-файлах вашего шаблона. Также для контейнеров маркеров ymaps на карте добавлены data-атрибуты: data-module-id - id модуля и data-marker-id - id маркера.Обработка GET-параметров в URL.Карта может реагировать на GET-параметры в url:- map[zoom] - устанавливает параметр масштаба.- map[center_latitude] и map[center_longitude] - широта и долгота центра карты.- map[marker_id] - id маркера, на котором центрируется карта.Таким образом вы можете создавать ссылку на карту с указанием конкретного маркера, на котором карта сфокусируется после загрузки маркеров. Например, https://site .ru/map?map[marker_id]=18465. Или же ссылку с указанием конкретных координат: https://site .ru/map?map[zoom]=16&map[center_latitude]=51.529706&map[center_longitude]=46.033922Страница расширенияGitHub расширенияВидео-обзор на YoutubeВидео-обзор на VK ВидеоВидео-обзор на Rutube@joomlafeed#joomla #yandex

Вышел Quantum Manager ver.3.2.1 и ver.2.0.5 — Релиз безопасности

Вышел Quantum Manager ver.3.2.1 и  ver.2.0.5 — Релиз безопасности

Вышел Quantum Manager ver.3.2.1 и ver.2.0.5 — Релиз безопасности.В последних версиях Quantum Manager устранены две уязвимости безопасности и исправлено несколько ошибок. Всем пользователям настоятельно рекомендуется обновиться до версии 3.2.1, чтобы обеспечить безопасность и актуальность установки.👩‍💻 Исправлены:1. XSS в SVG-файле. Запрещено выполнение встроенных в SVG скриптов.2. XSS по имени вредоносного файла. Больше никакого выполнения кода через имя файла.Поскольку эти проблемы влияют на безопасность сайта, мы подготовили две версии: одну для Joomla 5 и Joomla 4, а также дополнительную версию для Joomla 3 (предназначенную для устаревшего релиза Quantum Manager 2.0.4, для тех, кто все еще поддерживает сайты на Joomla 3).⚠️ Примечание: обновите Quantum Manager до версии 3.2.1 для Joomla 5 / Joomla 4 и установите Quantum Manager версии 2.0.5 для Joomla 3 (только исправления проблем безопасности).Команда NorrNext благодарит Joomla Security Strike Team и Joomla VEL Team за помощь в обнаружении и исправлении уязвимостей.Читать новостьСкачать@joomlafeed#joomla #расширения

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

CTPZ

  • Захожу иногда
  • 305
  • 24 / 5
Обьясните что к чему
« : 18.04.2011, 23:33:39 »
Вот код без комментариев вначале
Код
<?php

/** ensure this file is being included by a parent file */
defined( '_JEXEC' ) or die( 'Restricted access' );

$mainframe->registerEvent( 'onPrepareContent', 'pluginAddPhp' );


function pluginAddPhp( &$row, &$params, $page=0  )
{
  // expression to search for
  $regex = '/{(rdaddphp)\s*(.*?)}/i';

  $plugin =& JPluginHelper::getPlugin('content', 'rd_addphp');

  if (!JPluginHelper::isEnabled('content', 'rd_addphp')  ) {
$row->text = preg_replace( $regex, '', $row->text );
return;
}

// find all instances of plugin and put in $matches
$matches = array();
preg_match_all( $regex, $row->text, $matches, PREG_SET_ORDER );

foreach ($matches as $elm) {

parse_str( $elm[2], $args );
$phpfile=@$args['file'];
$output = "";
if ( $phpfile ) {
$phpfile = JPATH_ROOT . DS . $phpfile;
if (file_exists($phpfile)) {
ob_start();
include($phpfile);
$output .= ob_get_contents();
ob_end_clean();
} else {
$output = "File: $phpfile don't exists";
}
}
$row->text = preg_replace($regex, $output, $row->text, 1);

}
return true;
}
/* EOF */
?>

Это код плагина. Работает он просто.
В редакторе пишут
Код
{rdaddphp file=file.php}
и в статью вставляется содержимое файла file.php
Какие строки отвечают за параметр file?
« Последнее редактирование: 18.04.2011, 23:37:14 от CTPZ »
*

moskitos80

  • Осваиваюсь на форуме
  • 21
  • 3 / 0
Re: Обьясните что к чему
« Ответ #1 : 25.04.2011, 11:51:19 »
Здесь тупо из строки : {rdaddphp file=file.php} - при помощи регулярки отлавливают "file=file.php" :

Код
preg_match_all( $regex, $row->text, $matches, PREG_SET_ORDER );

А потом при помощи ф-ции:
Код
parse_str( $elm[2], $args );

получают $args['file']; - его значением будет строка: "file.php".

 Далее проверки на существование файла,
чтение его в буфер, и замена его содержимым строк "{rdaddphp file=file.php}":

Код
$row->text = preg_replace($regex, $output, $row->text, 1);

Всё очевидно :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

чему принадлежит $this

Автор voland

Ответов: 2
Просмотров: 1740
Последний ответ 09.04.2009, 23:53:07
от voland