Новости Joomla

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+)

Новый способ добавления и рендера полей в Joomla Form - метод renderControlFields() (Joomla 5.3+). При отображении форм компонента в админке раньше разработчикам нужно было описывать скрытые поля в лейаутах. И выглядело это так:

<?php     // Это файл в /layouts/components/com_component/your_layout.php?><input type="hidden" name="task" value=""><input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"><input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"><?php echo HTMLHelper::_('form.token'); ?>
Начиная с Joomla 5.3 добавлен новый способ добавления таких полей (их называют control fields) - программно. И теперь это можно сделать просто в Controller / View.
// В Controller/View добавляем поля$this->form  ->addControlField('task', '')  ->addControlField('return', $input->getBase64('return', ''))  ->addControlField('forcedLanguage', $forcedLanguage);
А в layout'е просто используем метод
renderControlFields()
// В layout формыecho $this->form->renderControlFields();
Многие компоненты ядра уже используют этот подход. Соответствующий PR был принят в Joomla 5.3 осенью 2024г.Смотреть
Pull Request@joomlafeed#joomla #разработка #php

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

JoomGallery 4.1.0 - компонент галереи изображений для Joomla

Новая итерация компонента продолжает развиваться, ведь с v.4.x компонент был переписан практически с нуля.

v.4.1.0. Что нового?

Редактирование метаданных изображений. Теперь метаданные можно не только читать, но и напрямую редактировать и записывать обратно в изображение JPG. Поддерживаются данные EXIF ​​и IPTC.

Полная совместимость с Joomla! 4.x, 5.x и 6.x. Компонент почистили от устаревших методов в коде.

Заметно ускорили загрузку больших галерей. Списки в админке, особенно для очень больших галерей ( >30 000 изображений), теперь загружаются значительно быстрее.

Несколько сеток lightGallery на одной странице. Будь то плагины контента или модули изображений: теперь вы можете отображать несколько галерей или категорий на одной странице без каких-либо ограничений.

Множество мелких исправлений ошибок и оптимизаций.

Сайт проекта

GitHub расширения

Скачать

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

wr123

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Ситуация такая:

в своём компоненте на каждое поле формы вешаю событие onChange() и в вызываемой функции JavaScript заполняю массив идентификаторами изменённых полей формы. цель: после отправки данных на сервер - вносить в базу только изменённые поля, по данным как раз из формируемого в скрипте массива. никак не могу придумать как отправить сформированный в скрипте массив на сервер вместе с данными формы.

получается необходимо отправить массив из JavaScript средствами post, кто-нибуть знает как это обычно организовывается?

видел идею с созданием hidden поля, но как к нему прицепить не одно а несколько значений просто не представляю. в JavaScript  я не силён, буду рад любым идеям, желательно максимально простым

предполагаю что здесь как-то можно обойтись без AJAX, потому как мне не нужно иметь ответ от сервера в этом же JavaScript, мне нужно просто добавить данные сформированные скриптом в виде массива в данные отправляемые формой
« Последнее редактирование: 17.02.2009, 09:52:05 от wr123 »
*

shprota

  • Давно я тут
  • 770
  • 53 / 1
  • Тружусь, не покладая рук
Re: Отправка данных из JavaScript на сервер
« Ответ #1 : 17.02.2009, 11:32:28 »
Есть два варианта передачи массива через форму:

1. В скрипте насоздавать спрятанных hidden полей типа:
Код
for(i=0; i < n; i++)
{
  document.write('<input type="hidden" name="myarray[]" value="'+myaarr[i]+'"');
}

Соответственно, в php получите в $_REQUEST['myarray']  массив значений.

2. Создать одно hidden поле и записать туда JSON массива, а в PHP воспользоваться json_decode($_REQUEST['myarray'])
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Передача JavaScript средствами AJAX

Автор volod3000

Ответов: 1
Просмотров: 2085
Последний ответ 12.05.2010, 23:43:16
от volod3000
Свои функции, JavaScript в плагине

Автор InveX

Ответов: 0
Просмотров: 1680
Последний ответ 06.08.2009, 10:08:55
от InveX
Не нужная подгрузка mootools'а, когда он не нужен в l

Автор Dutch

Ответов: 2
Просмотров: 2128
Последний ответ 12.05.2009, 22:08:32
от Kuzmitch
Авторизация пользователей для своего ком

Автор vmir

Ответов: 4
Просмотров: 2224
Последний ответ 12.04.2009, 18:23:14
от vmir
Как разобрать на части XML?

Автор inlanger

Ответов: 2
Просмотров: 2284
Последний ответ 05.03.2009, 14:44:38
от inlanger