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

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Хочу реализовать удаление всех телефонов из описания и заголовка при добавлении объявления, но не знаю к какой функции это прекрипить
Подскажите пожалуйста и подравте если что не так.
Код
if ($key=='ad_text' or $key=='ad_headline') {
$_POST[$key]=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST[$key]);
}
« Последнее редактирование: 23.10.2013, 18:00:47 от max_1985 »
*

grinat

  • Захожу иногда
  • 356
  • 34 / 2
Хочу реализовать удаление все телефоны из описания и заголовка при добавлении объявления, но не знаю к какой функции это прекрипить
Подскажите пожалуйста и подравте если что не так.
Код
if ($key=='ad_text' or $key=='ad_headline') {
$_POST[$key]=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST[$key]);
}
В controller.php функция save, в самое начало
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
В controller.php функция save, в самое начало
Что-то не так, не удаляет, может что еще дописать надо?
*

grinat

  • Захожу иногда
  • 356
  • 34 / 2
Что-то не так, не удаляет, может что еще дописать надо?
Как выглядит полный код, так?
foreach($_POST as $key=>$value){
<...>$key=='ad_text' or $key=='ad_h<...>
}
Если да, то в регулярке могут быть огрехи
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Как выглядит полный код, так?
foreach($_POST as $key=>$value){
<...>$key=='ad_text' or $key=='ad_h<...>
}
Если да, то в регулярке могут быть огрехи

Код
foreach ( $_POST as $key => $value )
{
$_POST[$key]=ereg_replace('<', '<', $_POST[$key]);
$_POST[$key]=ereg_replace('>', '>', $_POST[$key]);

if ($key=='ad_text' or $key=='ad_headline') {

$_POST[$key]=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST[$key]);

}
}
так

а регулярка вроде правильная, взял здесь http://habrahabr.ru/post/110731/
на другом сайте работает.
« Последнее редактирование: 13.05.2013, 18:06:58 от max_1985 »
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
В controller.php функция save, в самое начало
а может лучше в components/com_adsmanager/views/edit/tmpl/default.php?
там где foreach($this->fields as $field)
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
За помощь подкину немного WMR  ^-^
Пишите в личку!
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
Код
$_POST[$key]=ereg_replace('<', '<', $_POST[$key]);
$_POST[$key]=ereg_replace('>', '>', $_POST[$key]);
"или я тупой, или лыжи не едут", но не понял сути этих строк
Код
if ($key=='ad_text' or $key=='ad_headline') {

$_POST[$key]=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST[$key]);

}
а не проще было изменять переменные вне цикла?
Код
$_POST['ad_text']=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST['ad_text']);
$_POST['ad_headline']=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $_POST['ad_headline']);
В Joomla для безопасности используется свой класс (JRequest) для работы с глобальными массивами ($_GET, $_POST, $_FILES, $_COOKIE и т.д.)

Ну а теперь по делу:
Изменение значений переменных в массиве $_POST ни к чему не приведёт, как ни старайтесь (достаточно глянуть код функции сохранения объявления, чтобы стало всё понятно)
В общем как и говорил ув. grinat, открываете controller.php и в функции save ищете строки
Код
		$content->bindContent(JRequest::get( 'post' ),JRequest::get( 'files' ),
  $conf,$this->getModel("adsmanager"),$plugins);

if (function_exists('bindPaidSystemContent')) {
bindPaidSystemContent($content,
  JRequest::get( 'post' ),JRequest::get( 'files' ),
  $conf,$this->getModel("adsmanager"));
}
после них вставляете
Код
$content->data['fields']['ad_text']=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $content->data['fields']['ad_text']);
$content->data['fields']['ad_headline']=preg_replace("/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d(?!(\W?\d))/x",'', $content->data['fields']['ad_headline']);
теперь работоспособность будет зависеть только от правильности регулярки
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Все четко работает!
Огромное спасибо!

Номер кошелька скиньте, как обещал с меня магар. Или могу поделиться AJAX Search Module или Report This Ad Plugin ^-^

Еще все таки а если с условием, как правильно, я просто еще хочу пару регулярок запихнуть?
« Последнее редактирование: 17.05.2013, 09:22:02 от max_1985 »
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
« Последнее редактирование: 17.05.2013, 10:19:06 от max_1985 »
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
Цитировать
Номер кошелька скиньте, как обещал с меня магар. Или могу поделиться AJAX Search Module или Report This Ad Plugin
скиньте модуль поиска да и хватит
Цитировать
Еще все таки а если с условием, как правильно, я просто еще хочу пару регулярок запихнуть?
Поподробней объясните, "недопетрю" зачем какие-то условия вставлять
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
скиньте модуль поиска да и хватитПоподробней объясните, "недопетрю" зачем какие-то условия вставлять
чтоб по несколько раз не писать одно и тоже
например
if ($content=='ad_text' or $content=='ad_headline') {
$content->data['fields']=preg_replace("регулярка телефона",'', $content->data['fields']);
$content->data['fields']=preg_replace("регулярка e-mail",'', $content->data['fields']);
$content->data['fields']=preg_replace("регулярка веб-сайт",'', $content->data['fields']);
}
поправьте пожалуйста!
Куда кидать модуль?
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
скорость выполнения будет самой высокой как раз если прописывать регулярку для каждого поля, если же всё-таки лень писать, то можно пройтись по массиву также как и Вы хотели сделать с масивом $_POST
Код
foreach($content->data['fields'] as $key=>$value)
if ($key=='ad_text' or $key=='ad_headline')
$content->data['fields'][$key]=...
...
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
скорость выполнения будет самой высокой как раз если прописывать регулярку для каждого поля, если же всё-таки лень писать, то можно пройтись по массиву также как и Вы хотели сделать с масивом $_POST
спасибо за совет!
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
эх не нарадуюсь 50% проблем с администрированием объявлений решено!  :D
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Хочу еще реализовать такую штуку, чтоб при загрузке маленьких картинок (например 150Х150) выводилось сообщение (В выбранных Вами файлах присутствовали картинки маленького размера) и чтоб они не попали в список загружаемых.
На php представляю как это сделать, но в данном случае это не прокатит.
А на java не очень, хотя куда примерно вставить код понимаю:
/components/com_adsmanager/views/edit/tmpl/default.php
где-то здесь
Код
 FilesAdded: function(up, files) {



maxnewimages = max_total_file_count - current_uploaded_files_count;
// Check if the size of the queue is bigger than max_file_count
   if(up.files.length > maxnewimages)
   {
       // Removing the extra files
       while(up.files.length > maxnewimages)
       {
           if(up.files.length > maxnewimages)
            up.removeFile(up.files[maxnewimages]);
       }
       alert('<?php echo JText::_(sprintf("Max %s Files",$this->conf->nb_images))?>');
   }

   if (typeof updatePaidCurrentFileCount != "undefined") {
    updatePaidCurrentFileCount(current_uploaded_files_count+nb_files_in_queue,
      current_uploaded_files_count+up.files.length);
   }
   nb_files_in_queue = up.files.length;
       setCurrentFileCount();
},
Помогите пожалуйста разобраться!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Редактировать все объявления

Автор den_ko

Ответов: 32
Просмотров: 12734
Последний ответ 25.11.2021, 10:43:38
от FlexNL
Заглушки с http://placehold.it вместо картинок в списке объявлений

Автор efimov777

Ответов: 6
Просмотров: 5552
Последний ответ 12.04.2020, 07:25:59
от Pavel
Слетают категории объявления

Автор guardnext

Ответов: 1
Просмотров: 3489
Последний ответ 09.07.2019, 10:10:59
от guardnext
AdsManger не удаляет объявления

Автор kozhenevsky

Ответов: 0
Просмотров: 1525
Последний ответ 15.02.2018, 12:08:29
от kozhenevsky
Лечим кнопку "Delete from favorites" на странице объявления. AdsManager 3.1.11

Автор Mick_20

Ответов: 1
Просмотров: 1751
Последний ответ 24.12.2017, 22:28:14
от vadim73