Новости Joomla

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

7 января 2026 года греческому разработчику Тассосу Мариносу сообщили об уязвимости в системном плагине Tassos Framework, который входит в состав его расширений для Joomla.

⚠️ Проблема затрагивает следующие расширения:
- Convert Forms - конструктор форм обратной связи для Joomla
- EngageBox - конструктор всплывающих окон для Joomla
- Google Structured Data - пакет плагинов микроразметки для Joomla
- Advanced Custom Fields - пакет плагинов пользовательских полей (видео-сервисы, карты и иже с ними)
- Smile Pack - пакет расширений
- MailChimp Auto-Subscribe

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

👉 Суть уязвимости.
Уязвимость заключалась в том, как плагин Tassos Framework обрабатывал определенные AJAX-запросы через com_ajaxточку входа Joomla. При определенных условиях внутренняя функциональность фреймворка могла быть вызвана без надлежащих ограничений.

В худшем случае это могло позволить неавторизованному злоумышленнику читать файлы, доступные веб-серверу. Это также могло позволить удалять файлы с сервера при выполнении определенных условий.

При определенных обстоятельствах запросы к базе данных могли быть изменены для извлечения данных из базы данных Joomla. В совокупности эти возможности потенциально могли быть использованы для повышения уровня доступа и выполнения несанкционированного кода.

В настоящее время нет никаких доказательств того, что эта уязвимость была использована в реальных условиях.

Немедленно обновите расширения до безопасных версий (Joomla 4/5/6 | Joomla 3):
- Convert Forms - v5.1.1 / v.4.1.1
- EngageBox - v.7.1.1 / v,6,3,9
- Google Structured Data - v.6.1.1 / v.5.6.9
- Advanced Custom Fields - v.3.1.1 / v.2.8.10
- Smile Pack - v.2.1.1 / v.1.2.4.
- MailChimp Auto-Subscribe - v.5.1.1+ / v.5.0.4

Все указанные версии включают в себя релиз безопасности плагина Tassos Framework System Plugin v6.0.62.

Если у вас установлено несколько расширений Tassos, достаточно обновить только одно, чтобы применить патч. Однако всегда рекомендуется обновлять все расширения.

@joomlafeed

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

Проект IV: Обучение с подкреплением на основе отзывов переводчиков.
Joomla собирается использовать автоматический перевод документации. В каждом языке есть свои специфические слова, характерные для Joomla. Предполагается обучать языковые модели, используя обратную связь от переводчиков, чтобы постоянно улучшать качество переводов и учитывать специфические языковые особенности Joomla.

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество Joomla)

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

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

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Всем привет! Как вы знаете стандартная сортировка в JoomShopping сделана select'ом, что не совсем удобно, как мне кажется. Есть конечно варианты сделать на js с дополнительными div'ами и span'ами и еще кучей всего.

Так вот, предлагаю аналогичное решение, но, стандартными средствами Joomla. При этом можно будет отметить активный пункт и пр.

Первым делом надо создать наши radio кнопки с label'ами.
идем в сайт\libraries\cms\html\select.php и находим функцию public static function radiolist 700 строка примерно
и после нее вставляем практически такую же функцию, но, уже сдругим названием, radio кнопками и нужными нам классами (кто не понял вставлять перед самым самым последним знаком "}" ):
Спойлер
[свернуть]
Если хотите свою картинку для каждого пункта то можно сделать так: вместо class="sorting_order_name" напишите class="sorting_order_name image_for_btn_'.$id.'"
В принципе можно было бы использовать стандартную функцию, и изменить ее, но, мало-ли где нам еще пригодятся стандартные radio кнопки.
Итак, мы подготовили radio кнопки для сортировки.

Дальше идем в сайт\components\com_jshopping\controllers\category.php и находим строчку $sorting_sel = JHTML::_ 100 строка примерно.
В строке меняем select.radiolist на select.radiolistorder, сохраняем и смотрим что получилось на данном этапе.
Не помню как выглядит, но ничего хорошего.

Теперь оформление.
Спойлер
[свернуть]

Ну вот вроде бы и все на этом... Разница очевидна.. Сравнение на картинке.


Кто увидел минусы или плюсы, пишем.

Где то читал, что такая конструкция не поддерживается apple'ами и андроидами, или это было в прошлом веке.. Но, в итоге нашел небольшой костыль.
Кто что знает по этому поводу, говорим. А то меня бесит данный кусочек кода. (код не тестировал, нет возможности)
Спойлер
[свернуть]
« Последнее редактирование: 21.08.2014, 07:22:57 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Cerber

  • Захожу иногда
  • 266
  • 34 / 0
  • Богиня Иштар и ее пес Пи..ц
Вариант без правки контроллера По поиску
:) тем не менее (+)
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Вариант без правки контроллера По поиску
Здесь не то чтобы никто подобное не делал, а именно сам вариант решения, т.е. можно на будущее использовать.. Про количество, не понял..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
чтобы можно было дальше использовать - забывайте про хаки ядра. а то получается что это можно дальше использовать, а вот Joomla обновлять уже нельзя...

ну и второй момент - так и не понял, в чем принципиальная разница между label для радиокнопок и потом поиском рабочего решения на js для иос, и просто дивов/спанов/прочего, нажатие на которые будет выполнять схожую функцию отправки формы скриптом? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Цитировать
чтобы можно было дальше использовать - забывайте про хаки ядра. а то получается что это можно дальше использовать, а вот Joomla обновлять уже нельзя...
Как умеем.. Как получается..)

Цитировать
ну и второй момент - так и не понял, в чем принципиальная разница между label для радио кнопок и потом поиском рабочего решения на js для иос..
Опять таки, захотелось попробовать еще варианты решения, все таки заниматься этим, не гвозди забивать..)
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

Linfuby

  • Завсегдатай
  • 1242
  • 176 / 0
  • Всё просто...
Респектую Шуракане, только за тот факт что человек не идёт шаблонно, а ищет решения.
И пусть решения не идеальны, но они имеют место быть. У него пока мало опыта, поэтому его решения кажутся абсурдными. Но именно на таких людях держится развитие ЖШ в Европе и России.
P.S. Попытки найти упоминание ЖШ на востоке не обвенчались успехом (а зря, ведь рынок там хороший)
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Спасибо, Linfuby, как то не заметил сообщения.
Немного доработал выше сделанное. Сделал кнопку смены направления сортировки прямо в label, т.е. если нажать на активный пункт направление сортировки изменится.
В select.radiolistorder (упомянуто выше) добавляем параметр $orderby, у меня третий в списке.

Далее идем в select.php в самое начало нашей функции (public static function radiolistorder ), туда тоже добавляем параметр, причем можно называть переменную хоть как будь то $orderby или $eretetete, параметры из category.php похоже передаются по очереди, поэтому внимательнее.(select.radiolistorder не параметр, не считается)

Остановимся на $orderby.
После foreach ($data as $obj) {
добавляем проверку. (вместо img рекомендую добавлять class="order_up" ну или down, и добавлять картинку через css)
Код
			if ($order_by == 0)
{$path = "<img src='http://localhost/im/components/com_jshopping/images/arrow_up.gif'>";}
else
{$path = "<img src='http://localhost/im/components/com_jshopping/images/arrow_down.gif'>";}

После $extra = ' '; добавляем $label_active = ' '; это мы делаем доппеременную активности для label.

Ниже, после $extra .= ' selected="selected" '; добавляем еще пару строчек
Код
			$order_change .= ' onclick="submitListProductFilterSortDirection()" '; // только для активного label, по клику смена order_by
$label_active.= ''.$path.''; // только для активного label, указание пути картинки

И еще чуть ниже после $extra .= ((string) $k == (string) $selected ? ' checked="checked" ' : ''); так же вставляем
Код
			$order_change .= ((string) $k == (string) $selected ? ' onclick="submitListProductFilterSortDirection()" ' : '');
$label_active .= ((string) $k == (string) $selected ? $path : '');

Теперь к самим чекбоксам и label, код должен выглядеть так:
Код
			$html .= '<input class="d_none" type="radio" name="'.$name.'" id="'.$id.'" value="'.$k.'" '.$extra.$attribs.'>';
$html .= '<label '.$order_change.' class="ch_order" for="'.$id.'">'.$t.$label_active.'</label>';

Теперь у активного label есть своя стрелочка с нужным направлением, а при нажатии на активный label, происходит мена сортировки и картинки. Вот..)

Соответственно теперь из сайт\components\com_jshopping\templates\default\list_products\form_filters.php можно удалять <img src...
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Отсюда понял http://stackoverflow.com/questions/5421659/html-label-command-doesnt-work-in-iphone-browser, что проблема наблюдается только в ios4, и нужно добавить к label пустой элемент onclick.

Поэтому вместо
    
Код
 $order_change .= ' onclick="submitListProductFilterSortDirection()" ';
Делаем
    
Код
$order_change .= ' submitListProductFilterSortDirection() ';

И вместо
   
Код
$html .= '<label '.$order_change.' class="ch_order" for="'.$id.'">'.$t.$label_active.'</label>';
делаем
   
Код
$html .= '<label onclick="'.$order_change.'" class="ch_order" for="'.$id.'">'.$t.$label_active.'</label>';

И убираем эти костыли
Код
<script>
    var deviceAgent = navigator.userAgent.toLowerCase();
    var iOS = deviceAgent.match(/(iphone|ipod|ipad)/);
    if (iOS) {
        $('label').click(function (event) {
            $('#' + $(event.target).attr('for')).attr('checked', true).change();
        });
    }
</script>
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а что в итоге поменялось? :) итоговый HTML же одинаковый
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Как не изменился? Теперь у label, атрибут onclick="" есть всегда(вместо костылей), а у активного label, onckilck="submitListProductFilterSortDirection()" для смены сортировки..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ясно. вы ж цикл не рисуете, не понял сразу что это в цикле :)

т.е. это получается твик такой для ios4? чтобы label менял состояние радиокнопки, то просто нужен обязательный пустой onclick для label?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Да, именно так, думаю в иос5 и более поздних версиях уже поправили, но кто его знает..)

Думал ios4 только на третьем ифоне, но нет, на четвертом тоже.. (Вспоминаю у кого есть.. ;D)

Хотя там же обновление было, думаю в любом случае все обновились..
« Последнее редактирование: 24.08.2014, 23:42:40 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод списка товаров с учетом значения связанного атрибута

Автор newalex

Ответов: 2
Просмотров: 1919
Последний ответ 17.10.2024, 08:51:19
от newalex
Вместо стоимость 0 руб. вывести БЕСПЛАТНО в карточке товаров (Каталоге)

Автор IgorGeneralov

Ответов: 0
Просмотров: 2847
Последний ответ 13.04.2023, 21:06:09
от IgorGeneralov
Функционал сравнение товаров в JoomShopping

Автор falur

Ответов: 53
Просмотров: 16686
Последний ответ 22.08.2022, 09:54:16
от kit2m2
В списке товаров вывести названия категорий каждого товара

Автор shop-user

Ответов: 5
Просмотров: 3619
Последний ответ 25.01.2022, 06:05:12
от kit2m2
Плагин - Инфоблок товара в списке товаров [Скачать]

Автор kit2m2

Ответов: 13
Просмотров: 3568
Последний ответ 20.10.2021, 14:51:08
от kit2m2