Новости Joomla

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет

👩‍💻 20 лет Joomla: Ринат Кажетов.В 2025 году Joomla исполнилось 20 лет. Вокруг неё сложилось большое интернациональное русскоязычное сообщество. На сайте нашего сообщества и на Хабре к юбилею были собраны интервью с его видными представителями. Сегодня мы читаем интервью с Ринатом Кажетовым (@rkazhet). Ринат - один из администраторов чата русскоязычного Joomla-сообщества, из Казахстана. Это человек, который всегда знает или найдёт нужную ссылку, пристально следит за новостями в мире Joomla, многое узнаёт первым и просто очень отзывчивый человек. Интервью с Ринатом взял Евгений Сивоконь.Читать интервью@joomlafeed#joomla #community

WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM

👩‍💻 WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM.Плагин умеет отправлять данные заказа из Joomla компонента интернет-магазина RadicalMart в AmoCRM, а так же оставлять примечания к сделке при смене статуса заказа (выберите необходимые статусы заказа RadicalMart в настройках плагина).Возможности плагина - создание сделок в AmoCRM в момент создания заказа в интернет-магазине RadicalMart- выбор воронки AmoCRM, в которой создавать сделки- выбор тега, которым будут помечаться созданные сделки- в комментарий к сделке при создании заказа пишутся:-- точная общая сумма заказа (Amo CRM не принимает дробные значения в поле бюджет, например с копейками)-- статус заказа-- информация о доставке (способ, адрес и комментарий)-- информация о способе оплаты-- контактные данные покупателя (могут отличаться от данных пользователя, создавшего заказ. Например, если доставка для другого человека)-- прямая ссылка на заказ в панели администрирования сайта-- список товаров заказа (опционально)добавление комментария к сделке при изменении статуса заказа в интернет-магазине RadicalMart (выберите необходимые статусы заказа в настройках плагина)-- добавляет в интерфейс просмотра заказа ссылку на сделку в AmoCRM, если таковая обнаружена (соответствие заказов и сделок хранится в базе данных)-- UTM-метки для сделки. Указывает, если на сайте используется комплект плагинов RadicalForm и WT AmoCRM - RadicalForm.
Для работы плагина необходима установка и настройка библиотеки WT Amo CRM library для Joomla версии 1.3.0 и выше.
Плагин бесплатный. Тестировался на Joomla 5.4 и RadicalMart 2.2.4.
Страница расширения и скачатьТак же:- Интернет-магазин RadicalMart- WT Amo CRM библиотека интеграции Joomla и AmoCRM- RadicalForm плагин обратной связи- WT AmoCRM - RadicalForm - плагин отправки сообщений из RadicalForm в AmoCRM@joomlafeed#joomla #crm #amocrm #radicalmart

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

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Пишу свою компоненту. Решил идти методом аналогии, разбираю в отладчике работу компоненты "Категории" и переношу код в свою компоненту.

При создании/редактировании категории открывается форма administrator\components\com_categories\views\category\tmpl\edit.php

Чтобы подключить к стандартным кнопкам редактирования события в Joomla используется такой код

Код
JFactory::getDocument()->addScriptDeclaration('
Joomla.submitbutton = function(task)
{
if (task == "category.cancel" || document.formvalidator.isValid(document.getElementById("item-form")))
{
jQuery("#permissions-sliders select").attr("disabled", "disabled");
' . $this->form->getField("description")->save(). '
Joomla.submitform(task, document.getElementById("item-form"));

if (task !== "category.apply")
{
window.parent.jQuery("#categoryEdit' . $this->item->id . 'Modal").modal("hide");
}
}
};
');


Разъясните пожалуйста новичку следующее:

$this->form->getField("description")->save()

при чём здесь метод save к полю description? ведь save прописана в models?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Этот код не имеет ничего общего с методом save() в модели, он всего лишь выводит следующий JS-код:
Код: javascript
if (имя_текстового_редактора.get("jform_description").isHidden()) {имя_текстового_редактора.get("jform_description").show()}; имя_текстового_редактора.get("jform_description").save();
, который вызывает метод save() в скрипте текстового редактора.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
понял - спасибо
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
И всё таки как Joomla попадает в save? Всё та же запись категории из админки.

В administrator\components\com_categories\models\category.php поставил точку останова в начале функции save

Стек вызова в отладчике

save    FILE: administrator\components\com_categories\models\category.php    LINE: 478
save    FILE: libraries\legacy\controller\form.php    LINE: 735
execute    FILE: libraries\legacy\controller\legacy.php    LINE: 702
MAIN    FILE: W:administrator\components\com_categories\categories.php    LINE: 27
executeComponent    libraries\cms\component\helper.php    LINE: 405
renderComponent    libraries\cms\component\helper.php    LINE: 380
dispatch    FILE: libraries\cms\application\administrator.php    LINE: 98
doExecute    FILE: libraries\cms\application\administrator.php    LINE: 152
execute    FILE: libraries\cms\application\cms.php    LINE: 261
MAIN    FILE: administrator\index.php    LINE: 51

Получается что сразу после строки

$controller = JControllerLegacy::getInstance('Categories');

в точке входа в компоненту administrator\components\com_categories\categories.php

вызывается save из administrator\components\com_categories\models\category.php

КАК?
« Последнее редактирование: 26.12.2016, 13:13:44 от OnePrg »
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Метод save контроллера вызывает метод save модели. Что вас так удивляет? Если вы отладчиком войдете в метод execute то увидете что никакой особой магии там нету.
интернет-блог: http://websiteprog.ru
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Метод save контроллера вызывает метод save модели. Что вас так удивляет? Если вы отладчиком войдете в метод execute то увидете что никакой особой магии там нету.

Меня удивляет, то что до метода execute не доходит

$controller = JControllerLegacy::getInstance('Categories'); - ПРИ ВЫПОЛНЕНИИ ВОТ ЭТОЙ СТРОКИ Я ПОПАДАЮ В ТОЧКУ ОСТАНОВА В SAVE
$controller->execute($input->get('task'));


А вот когда стою на строке

$controller->execute($input->get('task'));

и нажимаю F11 (использую для отладки CodeLobster), то попадаю в libraries\legacy\controller\legacy.php      function redirect()

, а как мне попасть в саму execute?



Не могу врубиться, как кнопки на форме связываются с методами контроллера?



Не нахожу в administrator\components\com_categories\controllers\category.php метод save
« Последнее редактирование: 26.12.2016, 15:40:15 от OnePrg »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Меня удивляет, то что до метода execute не доходит
А меня удивляет, как вы решили написать компонент, будучи таким неподготовленным.
$controller = JControllerLegacy::getInstance('Categories'); - ПРИ ВЫПОЛНЕНИИ ВОТ ЭТОЙ СТРОКИ Я ПОПАДАЮ В ТОЧКУ ОСТАНОВА В SAVE
Не нахожу в administrator\components\com_categories\controllers\category.php метод save
- Вы подключаете один контроллер, а пытаетесь искать что-то в другом.
- Наследуемый класс может использовать public и protected методы родителей.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
благодарю!

пошёл готовиться :)
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Братья и сестры!

Ну подскажите мне, пожалуйста, направьте на путь истинный советом или ссылкой на мануальчик

Пытаюсь писать свой компонент. Делаю по аналогии с компонентом com_categories

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



Если я не заполнил поле и нажимаю кнопку "Сохранить", выдаёт сообщение, что поле не заполнено



Если поля заполнил и нажимаю кнопку "Сохранить", то ничего не происходит вообще, даже в браузере ничего не крутиться




В той же компоненте com_categories при нажатии на такую кнопку я хоть попадаю в отладчик, а здесь при нажатии даже в administrator\index.php не заходит.

Код кнопки в com_categories:



код кнопки в моей компоненте


*

b2z

  • Глобальный модератор
  • 7287
  • 778 / 0
  • Разраблю понемногу
Есть ли ошибки JS в консоли? Покажите весь код формы. Скорее всего не хватает hidden полей, типа task или option, ну или id формы неверный.

Мануальчики здесь.
*

OnePrg

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Есть ли ошибки JS в консоли? Покажите весь код формы. Скорее всего не хватает hidden полей, типа task или option, ну или id формы неверный.

Мануальчики здесь.

За мануальчик весьма благодарю.

Пока решил всё сделать заново, если опять не получится отпишусь.
« Последнее редактирование: 28.12.2016, 22:34:06 от OnePrg »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как поставить более старое раширение в Joomla 4.8.4?

Автор alexs64

Ответов: 4
Просмотров: 692
Последний ответ 29.10.2025, 15:45:42
от web1
Компонент Search в Joomla 5

Автор hensler

Ответов: 4
Просмотров: 1894
Последний ответ 28.03.2025, 17:27:24
от azm1n
addScript (в админке) к пути файла js добавляет /administrator/. Зачем?

Автор kkmspb

Ответов: 0
Просмотров: 1618
Последний ответ 02.09.2024, 14:42:25
от kkmspb
Не могу разобраться как в админке заставить работать свой плагин

Автор kkmspb

Ответов: 3
Просмотров: 2054
Последний ответ 02.09.2024, 11:35:25
от kkmspb
Расширение od jshopping categories на Joomla 5

Автор ironDiaper

Ответов: 0
Просмотров: 2402
Последний ответ 13.01.2024, 17:54:34
от ironDiaper