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

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
Люди есть у кого скрипт сравнения?
в форме делаешь
Код
вес <input name="vec"  id="vec" type="text"  onKeyUp="kw()"/><br/>

и скрытое поле, в которое будет выводится результат сравнения:
Код
<div  style="display:none;"><input name="koef"  id="koef" value="" type="text" /></div>
Перед формой вставляешь скрипт:
Код
<script>
kw=(function (){
var v = document.getElementById("vec").value;
var tW1 = "значение 1";
var tW2 = "значение 2";
var tW3 = "значение 3";
var tW4 = "значение 4";
var tW5 = "значение 5";

var tWes;
if(v<=500)
   document.getElementById("koef").value=tW1;
else if (v<=800)
   document.getElementById("koef").value=tW2;
else if (v<=1500)
   document.getElementById("koef").value=tW3;
else if (v<=3000)
   document.getElementById("koef").value=tW4;
else
   document.getElementById("koef").value=tW5;
document.forms['calcForm'].elements['vec'].fireEvent('change');
});
</script>
Вместо значение подставить значения понижающего/повышающего коэффициента.

Теперь если пользователь введет в поле "vec" значение меньше 500, по в поле "koef" подставится значение 1, 900 - то значение 3 и т.д.
Естественно в формуле учитывай коэффициент
{vec}*{koef}
« Последнее редактирование: 30.07.2013, 13:58:16 от alexj69 »
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
alexj69, хорошо сейчас попробую.Если что с меня +
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
Пробелы убрал, но проблема почему-то так и осталась
А ты в скрипте не копался? У меня FireBug показывает ошибку:
Цитировать
TypeError: $(...).set is not a function
http://строймирпроект.рф/components/com_formcalc/assets/js/formcalc.js
Line 80
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Хм, удивительно, так как файлы компонента вообще не правил...
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
alexj69, выдаёт ошибку Uncaught SyntaxError: Unexpected token > ваш скрипт
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
alexj69, выдаёт ошибку Uncaught SyntaxError: Unexpected token > ваш скрипт
дай ссылку, посмотрю
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
дай ссылку, посмотрю

Вы не сможите посмотреть он ещё на локалке стоят я забыл
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
в форме делаешь
Код
вес <input name="vec"  id="vec" type="text"  onKeyUp="kw()/>

и скрытое поле, в которое будет выводится результат сравнения:
Код
<div  style="display:none;"><input name="koef"  id="koef" value="" type="text" /></div>
Перед формой вставляешь скрипт:
Код
<script>
kw=(function (){
var v = document.getElementById("vec").value;
var tW1 = "значение 1";
var tW2 = "значение 2";
var tW3 = "значение 3";
var tW4 = "значение 4";
var tW5 = "значение 5";

var tWes;
if(v<=500)
   document.getElementById("koef").value=tW1;
else if (v<=800)
   document.getElementById("koef").value=tW2;
else if (v<=1500)
   document.getElementById("koef").value=tW3;
else if (v<=3000)
   document.getElementById("koef").value=tW4;
else
   document.getElementById("koef").value=tW5;
document.forms['calcForm'].elements['vec'].fireEvent('change');
});
</script>
Вместо значение подставить значения понижающего/повышающего коэффициента.

Теперь если пользователь введет в поле "vec" значение меньше 500, по в поле "koef" подставится значение 1, 900 - то значение 3 и т.д.
Естественно в формуле учитывай коэффициент
{vec}*{koef}

Нашёл тут ошибку. После последнего else нет открывающейся фигурной скобки, поэтому не работает
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
В общем даже вот так должно быть, если не ошибаюсь:

Код
<script>
kw=(function (){
var v = document.getElementById("vec").value;
var tW1 = "значение 1";
var tW2 = "значение 2";
var tW3 = "значение 3";
var tW4 = "значение 4";
var tW5 = "значение 5";

var tWes;
if(v<=500) {
   document.getElementById("koef").value=tW1;
}
else if (v<=800) {
   document.getElementById("koef").value=tW2;
}
else if (v<=1500) {
   document.getElementById("koef").value=tW3;
}
else if (v<=3000) {
   document.getElementById("koef").value=tW4;
}
else {
   document.getElementById("koef").value=tW5;
document.forms['calcForm'].elements['vec'].fireEvent('change');
});
</script>
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
В общем даже вот так должно быть, если не ошибаюсь:

Код
<script>
kw=(function (){
var v = document.getElementById("vec").value;
var tW1 = "значение 1";
var tW2 = "значение 2";
var tW3 = "значение 3";
var tW4 = "значение 4";
var tW5 = "значение 5";

var tWes;
if(v<=500) {
   document.getElementById("koef").value=tW1;
}
else if (v<=800) {
   document.getElementById("koef").value=tW2;
}
else if (v<=1500) {
   document.getElementById("koef").value=tW3;
}
else if (v<=3000) {
   document.getElementById("koef").value=tW4;
}
else {
   document.getElementById("koef").value=tW5;
document.forms['calcForm'].elements['vec'].fireEvent('change');
});
</script>

Вставил серавно ругаеться на строку <div style="display:none;"><input name="koef"  id="koef" value="" type="text" /></div>
Uncaught SyntaxError: Unexpected token > (repeated 1 times)
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Нашёл 1 косяк, исправил, но серавно не считает Uncaught TypeError: Cannot set property 'value' of null ошибка уже пишет что в formcalc.js:79
« Последнее редактирование: 21.07.2013, 17:10:02 от sashahz »
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
В спешке пропустил закрывающие кавычки. Вот рабочий вариант:
скрипт
Спойлер
[свернуть]
код:
Спойлер
[свернуть]
формула rez={vec}*{sale1}
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
В спешке пропустил закрывающие кавычки. Вот рабочий вариант:
скрипт
Спойлер
[свернуть]
код:
Спойлер
[свернуть]
формула rez={vec}*{sale1}

Спасибо огромное! + в репу поставлю, только сейчас сделаю. А если будет много таких значений конфликта не будет?
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
если правильно сделаете, то не будет
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
По моему вопросу есть какие-то мысли? А то впервые с таким сталкиваюсь...
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Однако не всё так гладко добавил свой элемент и тут вот что
document.forms['calcForm'].elements['sale1'].fireEvent('change');
Uncaught TypeError: Object #<HTMLInputElement> has no method 'fireEvent' (repeated 3 times)
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
По моему вопросу есть какие-то мысли? А то впервые с таким сталкиваюсь...
попробуй переустановить компонент.
Однако не всё так гладко добавил свой элемент и тут вот что
document.forms['calcForm'].elements['sale1'].fireEvent('change');
Uncaught TypeError: Object #<HTMLInputElement> has no method 'fireEvent' (repeated 3 times)
что именно Вы хотите добавить?
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Так кое в чём разобрался, ошибок нету! Если что отпишусь:)
« Последнее редактирование: 21.07.2013, 17:44:37 от sashahz »
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Хм, переустановил, и такая же проблема
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Хм, переустановил, и такая же проблема

Проверь хорошо код, потому что если ты не вывел хоть 1 значение на экран то будет эта ошибка!
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Проверь хорошо код, потому что если ты не вывел хоть 1 значение на экран то будет эта ошибка!
Не, у меня значение выведено, просто во время подсчёта калькулятор не реагирует на введённые значения, вот это удивительно
*

sashahz

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
А есть ещё один вопрос, как вставлять значение в зависимости от выбраного radio ?
*

rmfalx

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
А-а-а, ну я чтот совсем запарился(((

Помогите пожалуйста.

Вообщем смысл в том, что в зависимости от метража (чем он выше) уборка будет стоить дешевле, время увеличиваться и кол-во людей тоже будет увеличиваться. Но уборки есть 3 вида (в зависимости от услуг которые входят). То есть получается, что для радиобатона надо сразу 5 значение прикручивать.

Т.е. Есть 4 радиобатона

При нажатии от 0 до 49 - "Эконом" м2 стоит 33руб. 4 часа, 1 человек, "Стандарт" м2 стоит 65руб. 6 часов, 1 человек, "Идеал" м2 стоит 95руб. 8 часов, 1 человек.
При нажатии от 50 до 74 - "Эконом" м2 стоит 28руб. 4.5 часов 1 человек, "Стандарт" м2 стоит 48руб. 7 часов, 1 человек, "Идеал" м2 стоит 81руб, 6 часов, 2 человека.
При нажатии от 45 до 99 - "Эконом" м2 стоит 25руб. 5 часов, 1 человек, "Стандарт" м2 стоит 39руб. 8 часов, 1 человек, "Идеал" м2 стоит 91руб, 7 часов, 2 человека.
При нажатии от 100 до 120 - "Эконом" м2 стоит 24руб. 5.5 часов, 1 человек, "Стандарт" м2 стоит 37руб. 9 часов, 1 человек, "Идеал" м2 стоит 70руб. 8 часов, 2 человека.

А вот если больше 120, то пользователь сам вводит в текстовое поле значение, которое умножается на 21руб, нажимает кнопку расчитать и расчитывает. Тут для этого поля так же нужна проверка, что число введенное не ниже 120 и не выше 10 000.

Шаблон сам сделан http://cleanqueen.ru/prajslist
*

27NataRUS

  • Захожу иногда
  • 116
  • 0 / 0
Здравствуйте. Никто не подскажет, почему калькулятор перестал корректно давать информацию о заказе после оформления и высылает письма с пустыми строками о количестве выбранного товара и итоговой стоимостью? Полгода все нормально работало. Код шаблона письма и шаблон сообщения при отправке формы нормальный.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
В общем решил свою проблему. Как оказалось, проблема была в том, что скрипт formcalc.js подключался раньше, чем jQuery.
*

alexj69

  • Захожу иногда
  • 244
  • 28 / 0
  • Думать надо!!!
А-а-а, ну я чтот совсем запарился(((

Помогите пожалуйста.

Вообщем смысл в том, что в зависимости от метража (чем он выше) уборка будет стоить дешевле, время увеличиваться и кол-во людей тоже будет увеличиваться. Но уборки есть 3 вида (в зависимости от услуг которые входят). То есть получается, что для радиобатона надо сразу 5 значение прикручивать.

Т.е. Есть 4 радиобатона

При нажатии от 0 до 49 - "Эконом" м2 стоит 33руб. 4 часа, 1 человек, "Стандарт" м2 стоит 65руб. 6 часов, 1 человек, "Идеал" м2 стоит 95руб. 8 часов, 1 человек.
При нажатии от 50 до 74 - "Эконом" м2 стоит 28руб. 4.5 часов 1 человек, "Стандарт" м2 стоит 48руб. 7 часов, 1 человек, "Идеал" м2 стоит 81руб, 6 часов, 2 человека.
При нажатии от 45 до 99 - "Эконом" м2 стоит 25руб. 5 часов, 1 человек, "Стандарт" м2 стоит 39руб. 8 часов, 1 человек, "Идеал" м2 стоит 91руб, 7 часов, 2 человека.
При нажатии от 100 до 120 - "Эконом" м2 стоит 24руб. 5.5 часов, 1 человек, "Стандарт" м2 стоит 37руб. 9 часов, 1 человек, "Идеал" м2 стоит 70руб. 8 часов, 2 человека.

А вот если больше 120, то пользователь сам вводит в текстовое поле значение, которое умножается на 21руб, нажимает кнопку расчитать и расчитывает. Тут для этого поля так же нужна проверка, что число введенное не ниже 120 и не выше 10 000.

Шаблон сам сделан http://cleanqueen.ru/prajslist
Можно все гораздо проще сделать. Пусть будет поле, в которое пользователь вводит метраж своей квартиры и уже в зависимости от введенного значения будут выводится нужные значения и автоматически рассчитываться стоимость.
*

nik-ita

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Можно все гораздо проще сделать. Пусть будет поле, в которое пользователь вводит метраж своей квартиры и уже в зависимости от введенного значения будут выводится нужные значения и автоматически рассчитываться стоимость.

и как такое сделать?... мой ранее вопрос аналогичен этому решению..:)
натолкните на мысль.. а?
*

rmfalx

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Можно все гораздо проще сделать. Пусть будет поле, в которое пользователь вводит метраж своей квартиры и уже в зависимости от введенного значения будут выводится нужные значения и автоматически рассчитываться стоимость.


Ну впринципе да, даже и проще. Тогда можно сделать и статическую стоимость, если пользователь вводит от 0 до 49 = Эконом-1650, Стандарт-3200, Идеал-4700. Если вводит от 50 до 74, то = Эконом-2100, Стандарт-3600, Идеал-6000. Если 75-99 то 2500, 3900, 700. Если 100-120 то 2900, 4500, 8500. Если больше 120 то введенная цифра умножается на 21. Плюс еще прикрутить время и кол-во человек.

НО КАК дать множественное значение одному только полю?
*

other62

  • Новичок
  • 3
  • 0 / 0
Люди очень нужна помощь! Какой скрипт должен быть на калькулятор с двумя селектами и радиобаттоном. Примерно такого вида. Формула = (селект 1+ селект 2)*радиобаттон.

Делаю по примеру - не работает. 3 дня мучаюсь...
<td>Класс автомобиля:</td><td>

<select name=”auto”>

<option value=”36″>Эконом</option>

<option value=”40″>Комфорт</option>

<option value=”45″>Универсал</option>

<option value=”50″>Бизнес</option>

</select>

</td>

</tr>

<tr>

<td>Вы заплатите:</td><td>{rez} руб.</td>

</tr>

</table>


*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Люди очень нужна помощь! Какой скрипт должен быть на калькулятор с двумя селектами и радиобаттоном. Примерно такого вида. Формула = (селект 1+ селект 2)*радиобаттон.

Делаю по примеру - не работает. 3 дня мучаюсь...
<td>Класс автомобиля:</td><td>

<select name=”auto”>

<option value=”36″>Эконом</option>

<option value=”40″>Комфорт</option>

<option value=”45″>Универсал</option>

<option value=”50″>Бизнес</option>

</select>

</td>

</tr>

<tr>

<td>Вы заплатите:</td><td>{rez} руб.</td>

</tr>

</table>



Могу помочь. Разрабатывал подобный калькулятор : http://bmw97.ru/poschitat-stoimost-avto
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонент Web Plan интерактивная карта для Joomla 1.5 (построение сайтов плановых объектов)

Автор DelaShop

Ответов: 39
Просмотров: 33433
Последний ответ 21.01.2018, 14:50:57
от Dinamitt
Калькулятор форм - продолжение

Автор osobist

Ответов: 2
Просмотров: 5820
Последний ответ 25.01.2015, 18:00:18
от dj_serg
Отрывной календарь Joomla, календарь событий.

Автор DelaShop

Ответов: 35
Просмотров: 34064
Последний ответ 17.12.2014, 06:20:05
от EndVal
Компонент " Просто каталог Joomla + Mixmarket Joomla "

Автор DelaShop

Ответов: 16
Просмотров: 19064
Последний ответ 10.07.2013, 11:06:13
от konservator