Новости 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 Гость просматривают эту тему.
  • 24 Ответов
  • 3100 Просмотров
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Доброго всем времени суток
Возник вопрос, который не смог решить. Хотелось бы разобраться как можно сделать без создания разного рода куки и с малыми затратами по времени.
Есть стандартный модуль (mod_search). Хотелось бы настроить, чтобы он мог передавать в компонент некоторые дополнительные параметры. Конечно также желательно чтобы они не отображались в строке браузера. Joomla 1.6
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #1 : 23.04.2012, 12:08:22 »
К сожалению без js этого не сделать.
Тоесть имеем форму method="get" и поле keyword. Значит мы не можем передать какието параметры методом post. Если форме указать method="post" то в адресной строке не будет добавляться keyword (а будет передаваться через post) что тоже неправильно.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #2 : 23.04.2012, 12:45:02 »
К сожалению без js этого не сделать.
Тоесть имеем форму method="get" и поле keyword. Значит мы не можем передать какието параметры методом post. Если форме указать method="post" то в адресной строке не будет добавляться keyword (а будет передаваться через post) что тоже неправильно.

При всём уважении такой вопрос - вы исходное сообщение прочли? Там говориться про изменение стандартного модуля.
В стандартном модуле прописано:
<form action="<?php echo JRoute::_('index.php');?>" method="post">

В конце описания формы прописано:
   <input type="hidden" name="task" value="search" />
   <input type="hidden" name="option" value="com_search" />
   <input type="hidden" name="Itemid" value="<?php echo $mitemid; ?>" />

Добавить еще одну строку вполне можно. Но как из неё считать данные?
Соответственно не всё отображается в адресной строке (что и требуется, чтобы не отображалось). Но как считать данные из input если сделать еще одну?

*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #3 : 23.04.2012, 14:45:29 »
Либо ни у кого не было желания ковыряться в стандартных модулях (для не совсем стандартных решений), либо никто не может дать толкового совета и по делу без лишних нравоучений. Жаль
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #4 : 23.04.2012, 15:20:05 »
Либо ни у кого не было желания ковыряться в стандартных модулях (для не совсем стандартных решений), либо никто не может дать толкового совета и по делу без лишних нравоучений. Жаль
Да с модулем тут как раз все понятно. Добавил input и все. Другое дело, что надо копать компонент com_search, в которые передаются данные. Вам эти данные надо в базу добавить или просто получить? Посмотрите в контроллере компонента, скорее всего там они приходят.
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #5 : 23.04.2012, 17:11:23 »
ок, сообщение я прочитал, а вот в стандартный модуль не глядел. Почемуто думал что там get. Вобще, кейворд должен передаваться ГЕТом, но в условиях cms это становится проблемой, ибо помимо кейворда передаются другие параметры...
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #6 : 25.04.2012, 13:27:50 »
Да с модулем тут как раз все понятно. Добавил input и все. Другое дело, что надо копать компонент com_search, в которые передаются данные. Вам эти данные надо в базу добавить или просто получить? Посмотрите в контроллере компонента, скорее всего там они приходят.

Запись статистику в базу определённо происходит в админке com_search. А вот гдеи как там получаются данные из модуля - понять пока не получается. А требуется потом сделать запись, уникальную для каждой страницы, где производился поиск
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #7 : 25.04.2012, 15:33:10 »
Похоже что в компоненте цепляется только то, что передается через POST.
Блин. Куда копать про переменные?
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #8 : 25.04.2012, 15:36:21 »
Еще одна странная фишка. Лишние запросы из базы можно было бы удалить, но прикол состоит в том, что date() в модуле и в админке - дают разные значения в отношении времени
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #9 : 25.04.2012, 15:39:56 »
Добавить еще одну строку вполне можно. Но как из неё считать данные?

Код: php
$myVar = JRequest::getVar('myvar');

Функция работает с post и с get и еще много с чем - смотри доки.
По сути это удобная обертка для $_REQUEST['myvar'] и еще много для чего.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #10 : 25.04.2012, 15:41:39 »
Еще одна странная фишка. Лишние запросы из базы можно было бы удалить, но прикол состоит в том, что date() в модуле и в админке - дают разные значения в отношении времени

Что такое "лишние запросы" ?
Как их можно удалить из базы? Бред какойто. Задачу опиши - так проще тебя понять будет.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #11 : 25.04.2012, 15:43:58 »
Еще одна странная фишка. Лишние запросы из базы можно было бы удалить, но прикол состоит в том, что date() в модуле и в админке - дают разные значения в отношении времени
возвращаемое функцией date() значение будет разным в каждый момент времени - ведь так и задумано, что удивительного то?
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #12 : 25.04.2012, 15:51:43 »
danik.html - кнопку Изменить вроде никто не отменял.

filoleg - Вы все верно поняли, в компоненте (в контроллере) все переменные из модуля инициализируются через:
Код
$myVar = JRequest::getVar('myvar');

Соответственно добавьте в модуль свою, и получите её в контроллере. А дальше делайте с ней что угодно :)
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #13 : 25.04.2012, 15:54:06 »
возвращаемое функцией date() значение будет разным в каждый момент времени - ведь так и задумано, что удивительного то?

Удивительно что разница на четыре часа. :)
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #14 : 25.04.2012, 15:57:10 »
И почему тут обсуждается несколько вопросов сразу? Давайте про date() в новой теме поговорим!
Правила форума - один вопрос = одна тема.
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #15 : 25.04.2012, 16:00:53 »
Ок. Тогда вопрос как нормально использовать $myVar = JRequest::getVar('myvar');?
скажем переменная обзывается $proba
В модуле написано $proba="йцукцукцукцуке". Так понимаю, что надо что-то сделать ещё, чтобы компонент мог увидеть её? Что?
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #16 : 25.04.2012, 16:04:51 »
Модуль
<input type="hidden" name="proba" value="йцукцукцукцуке" />

Контроллер
$proba= JRequest::getVar('proba');
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #17 : 25.04.2012, 16:14:55 »
Хорошо. Тогда дальше. Пусть переменная попала в контролёр компонента. Каким образом её передать в админку этого же компонента, где собственно и происходит запись в базу?
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #18 : 25.04.2012, 16:23:13 »
Зачем в админку, можно сразу в таблицу. Как-то так:

Код: php
$db = JFactory::getDbo();
$query = 'INSERT INTO `my_table` VALUES (' . $proba . ')';
$db->setQuery($query);
$db->query();

Код примерный, сами подставьте свои данные.
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #19 : 25.04.2012, 16:25:55 »
Большое спасибо. Хоть немного стало понятно - как работают некоторые вещи.
Решил удалить формирование статистики из админки и прописать всё в самом компоненте.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #20 : 25.04.2012, 16:28:01 »
Большое спасибо. Хоть немного стало понятно - как работают некоторые вещи.
Решил удалить формирование статистики из админки и прописать всё в самом компоненте.

Я бы конечно ещё отфильтровал бы переменну $proba, а то всякую гадость могут в базу передать таким образом. Лучше вот тут:
Код: php
$proba= JRequest::getVar('proba');

сделать так:
Код: php
$proba= JRequest::getString('proba');

Вот тута есть неплохая документация.
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #21 : 25.04.2012, 16:29:37 »
Да уж.. а причем тут модуль поиска и передача переменной в компонент тогда? Хотя...тебе виднее...
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

danik.html

  • Живу я здесь
  • 2650
  • 353 / 4
Re: Передача переменной в компонент
« Ответ #22 : 25.04.2012, 16:31:11 »
Я бы конечно ещё отфильтровал бы переменну $proba, а то всякую гадость могут в базу передать таким образом. Лучше вот тут:
Код: php
$proba= JRequest::getVar('proba');

сделать так:
Код: php
$proba= JRequest::getString('proba');
Насколько мне известно - sql-иньекцию как раз можно сделать тупо передав нужную строку, так что не поможет...
Но тс вобще человек странный, не понятно че он хочет. он и сам видимо не знает.
【Мегапак Virtuemart:
 • метатеги (description,keywords)
 • заголовки (title)
 • красивые алиасы (чпу) без тормозов и дублей!
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Передача переменной в компонент
« Ответ #23 : 25.04.2012, 16:32:40 »
Насколько мне известно - sql-иньекцию как раз можно сделать тупо передав нужную строку, так что не поможет...
Но тс вобще человек странный, не понятно че он хочет. он и сам видимо не знает.
Ну... Надо бы ещё обезопасить конечно с помощью $db->quote, хотя это же INSERT - какая тут инъекция?

Вот полезный туториал на эту тему - Безопасные SQL запросы
*

filoleg

  • Захожу иногда
  • 90
  • 0 / 0
Re: Передача переменной в компонент
« Ответ #24 : 25.04.2012, 16:43:39 »
Но тс вобще человек странный, не понятно че он хочет. он и сам видимо не знает.

Да не. Я знаю что хочу. В основном вопрос и стоял - как передать в компонент переменную из модуля. Это разрешилось. Стало понятно. Было еще непонятно как передать в админку эти данные, поскольку в стандартном компоненте статистика прописывалась как раз в админке, а не контролёре компонента. Это также разрешилось удалением из админки блока статистики.

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

Убрать уровни подкатегорий в меню

Автор desaund1

Ответов: 0
Просмотров: 1376
Последний ответ 10.08.2017, 22:34:06
от desaund1
Изменить форму на главной ?

Автор warlocksp

Ответов: 2
Просмотров: 1231
Последний ответ 19.02.2017, 15:44:11
от warlocksp
Дублирование на сайте

Автор derenikp

Ответов: 3
Просмотров: 1355
Последний ответ 08.01.2017, 17:30:00
от derenikp
Переменная в ссылках.Не выполняется задаm

Автор ghostcom

Ответов: 25
Просмотров: 1639
Последний ответ 06.09.2016, 17:13:20
от ghostcom
ошибка "File for Model inventory not found"

Автор polgrig

Ответов: 0
Просмотров: 1392
Последний ответ 05.08.2016, 14:36:02
от polgrig