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

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #90 : 13.03.2012, 23:46:18 »
Все-таки про FrontEnd можно чуть подробнее? Не всё понятно.
1. Про вывод форм
Как лучше?
Код
jimport('joomla.application.component.modeladmin') и JModelAdmin
или
Код
jimport( 'joomla.application.component.modelform' ); и JModelForm
первый вариант у меня не заработал. по второму форма вывелась.

2. Как произвести добавление в базу из FrontEnd? В админке понятно там есть table а здесь как? самому запрос писать или есть какие стандарнтые средства?

3. Чем пользоваться вместо кнопок управления из админке в морде? Как создать кнопки сохранить и отмены? Потрошу com_content на эту тему но не выходит каменный цветок.

« Последнее редактирование: 13.03.2012, 23:56:24 от platonische »
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #91 : 15.03.2012, 20:53:12 »
to frisian +1 за контент
to bzzik Thanks и +1 за отзывчивость
Спасибо большое. Вот теперь могу двигаться дальше. С сонфиг файлом я пока погожу, конкретный компонент должен даже от гостя принимать данные. Единственное нужно будет капчу поставить.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #92 : 15.03.2012, 21:24:48 »
frisian а ты это для FrontEnd писал? Что-то ничего не получается... если сделать так как ты писал то
Код
Fatal error: Call to a member function getKeyName() on a non-object in /var/www/libraries/joomla/application/component/modeladmin.php on line 801 
Такое чувство что это все к админке относится. Видимо надо Как советовал bzzik писать и выкладывать на суд код. Этим и займусь.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #93 : 17.03.2012, 21:06:11 »
to frisian Мдя...
Сейчас буду разбираться. Форму я написал но по твоему примеру а по helloword там оказывается есть частично редактирование записей через FrontEnd. Вообще кроме http://docs.joomla.org ничего стоящего нет походу. Надежда на форумы только т.е. на вас.

Написал я, как сказал выше, по примеру helloword (updheloworld) http://docs.joomla.org/Developing_a_Model-View-Controller_(MVC)_Component_for_Joomla!2.5_-_Part_18

Собственно вопрос ещё возник: как добавить валидацию на форму FrontEnd. Или по твоему примеру если исполнить и валидация запашет по тому же принципу как в BackEnd?

А твою реализацию пробую...
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #94 : 17.03.2012, 21:41:10 »
Собственно реализую твой код. Вот вывожу всё что делаю, а вы уж будьте добры поправьте.
Вид отвечающий за вывод формы в FrontEnd - form, Имя компонента Kayak, вид редактирования в BackEnd - person.
Создал site/models/form.php
Спойлер
[свернуть]

Скопировал с backend и немного отредактировал site/models/forms/personform.xml
Спойлер
[свернуть]

Создал site/controllers/form.php
Спойлер
[свернуть]

Далее создаю site/views/form/view.html.php чего сюда? я поставил это
Спойлер
[свернуть]

Создал /site/views/form/tmpl/edit.php чего сюда писать незнаю точно... Написал это
Спойлер
[свернуть]

Собственно всё. результат: Форму вижу. При сохранении Edit not permitted

Результат всё-таки есть какой-то. Сейчас навешу еще валидацию из Back End проверю её
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #95 : 18.03.2012, 09:55:56 »
Цитировать
'ВАШ_КОМПОНЕНТ.edit.ВИД_ФОРМЫ.data'
что-то не внимательно я подошел к делу.
Цитировать
можете в ней подрубить заголовки, ключевики ...
Жаргонным языком J! пока не владею ;-) поясни чего это значит.

В целом после исправления результат тотже
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #96 : 18.03.2012, 12:55:19 »
Собственно... Попробую, но мне надо и от гостя принимать данные. Я думал config для этого не нужен... Но я сделаю и отпишусь
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #97 : 18.03.2012, 16:10:05 »
Цитировать
попробуйте все таки создать конфиг:
Результат тотже.

Зашел админом на сайт форма ошибки не выдаёт а переходит после submit на эту же страницу, запись не добавляется...
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #98 : 18.03.2012, 16:48:11 »
И попутный вопрос... после добавления config.xml должны ли в закладке permissions появиться правила? У меня просто вышли группы но без правил... назначать ничего нельзя, там просто нет ничего.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #99 : 18.03.2012, 19:59:54 »
Ошибка по твоей реализации была в том, что task=form.edit, я исправил на form.save всё заработало.
добавил в XML формы адрес к rules заработала валидация на стороне сервера. Закинул как в BACKEND валидацию на стороне клиента, но она не заработала... Либо каких библиотек не хватает... Но одно точно - надо навесить на кнопки выполнение скриптов вручную, совырну опять com_content там есть в form.edit подобное. Позже отпишу.

Прошу всех написать если я что-то неправильно сделал или неправильно выразился. Сейчас для меня всё важно.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #100 : 18.03.2012, 23:57:00 »
Код
<field
                name="rules"
                type="rules"
                label="JCONFIG_PERMISSIONS_LABEL"
                class="inputbox"
                validate="rules"
                filter="rules"
                component="com_shop" - тут вставить имя вашего компонента ))
                section="component"/>
это я исправил

Цитировать
это вы ошиблись с таском а не я ) я вроде не писал шаблон )
Собственно ты прав... Ты не писал. Извиняюсь.

Про валидацию...: Опишу своё, вместе с твоими предложениями позже.
Спасибо.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #101 : 19.03.2012, 14:38:02 »
Кстати к вопросу о валидации - у меня так и не получилось настроить её на стороне Joomla (сервера). Я имею ввиду валидацию validate-[custom]
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #102 : 19.03.2012, 19:50:12 »
Собственно вот что у меня по валидации вышло.

1. http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!2.5_-_Part_11 Отсюда делал для back end и все работате.

2. Для Front End я скопировал форму admin/models/form/anyform.xml в site/.../... вот содержимое моей формы
Спойлер
[свернуть]

в теге <form> путь к правилам валидации со стороны сервера. У меня там только phone
содержимое /admin/models/rules/phone.php
Спойлер
[свернуть]
правило берет цифры + - ( ) и пробелы. Надо дописывать правило но пока оно такое.

Собственно все больше ничего не надо js даже не участвуют
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #103 : 19.03.2012, 19:58:06 »
Валидация на стороне клиента тоже вышла. Основа опять же по ссылке из поста выше на http://docs.joomla.org. Там все сделано для BAckEnd. Что сделал я чтобы запустить это в морде.
в модель добавил
Код
	public function getScript() 
{
return 'administrator/components/com_kayak/models/forms/personform.js';
}

в вью
Код
		$this->script = $this->get('Script');

$document = JFactory::getDocument();
$document->addScript(JURI::root(). $this->script);
$document->addScript(JURI::root(). "/administrator/components/com_kayak"
                                  . "/views/person/submitbutton.js");
Написав код увидел что добавил 2 скрипта в одно место 2 способами... Наука блин...

И лайаут
Спойлер
[свернуть]

Тут 2 кнопки. На одной навешено js для клиентской части на другой только серверная валидация.

Собственно и всё. Всё пашет.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #104 : 19.03.2012, 21:25:47 »
Вопрос такой появился
есть форма см выше
в ней поле
Код
	<field
name="way_id"
type="kayakway"
label="COM_KAYAK_PERSON_WAY_LABEL"
description="COM_KAYAK_PERSON_WAY_DESC"
class="inputbox"
size="1"
required="true"
default="">
</field>

Приходит на страницу лайаута $id как мне его в этот лист по умолчанию поставить? Можно ли как-то в форме XML написать это или надо уже в лайауте ковырять, а возможно и пересобирать select.genericlist?
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #105 : 19.03.2012, 22:50:20 »
Получить список с динамически измененным полем default
$this->form->getInput('name', null, $default);
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #106 : 20.03.2012, 11:03:52 »
код бы увидеть как пробовали её сделать! )
Да, выложу, что я пытаюсь сделать чуток попожже.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #107 : 20.03.2012, 22:23:50 »
Да, выложу, что я пытаюсь сделать чуток попожже.
Я выше привел ссылку на docs там всё коротко и ясно про валидацию, код весь присутствует... Или вы чего другое делаете? Если другое то показывайте... Посмотрим...

Вопрос: Как переопределить вывод при добавление записи?
Есть: Item successfully submitted.
Хочу: Thank you for your add.
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #108 : 21.03.2012, 11:35:17 »
Я выше привел ссылку на docs там всё коротко и ясно про валидацию, код весь присутствует... Или вы чего другое делаете? Если другое то показывайте... Посмотрим...
Да я давно делал, надо будет ещё раз все внимательно почитать и проверить. Может и заработает =)

Вопрос: Как переопределить вывод при добавление записи?
Есть: Item successfully submitted.
Хочу: Thank you for your add.
Ну за это обчыно отвечает контроллер. Типа если save ok, то редирект + показ сообщения.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #109 : 21.03.2012, 20:22:11 »
через $this->setMessage(''); не получилось
видимо не хватает знаний.
я сделал так:
Код
	public function Save(){
$app = JFactory::getApplication();
$app->enqueueMessage(JText::_('COM_KAYAK_YOUR_ORDER_WAS_ADDED'));
parent::save();
}
в контроллере запись добавилась
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #110 : 22.03.2012, 00:10:20 »
Как это не получилось? Быть такого не может, код же проще простого:

Код: php
if ( parent::save() ) {
$this->setMessage(JText::_('COM_KAYAK_YOUR_ORDER_WAS_ADDED'));
} else {
$this->setMessage(JText::_('COM_KAYAK_ERROR_SAVE_FAILED'), 'error');
}
*

Extalionez

  • Осваиваюсь на форуме
  • 36
  • 5 / 0
Re: Написание компонента для Joomla 1.6
« Ответ #111 : 23.03.2012, 21:23:59 »
Влом всё читать было, но может кто поможет?
Тут http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!2.5_-_Part_12 написано как добавить категорию к материалу, но почему-то разработчики считают что материал может содержать только одну категорию. Возник естественный вопрос - 'как?', ответ на который пришёл довольно быстро -
Правилный - вместо catid поля сделать таблицу с двумя полами id и catid (many-to-many). В этом случае будет труднее сделать сохранение выбранных категорий.
Вот уж действительно я не смог понять как это реализовать.Не поможете? Желательно чтобы было как например в zoo

Желательно чтобы это решение было для Joomla 2.5
« Последнее редактирование: 24.03.2012, 19:05:32 от Extalionez »
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #112 : 24.03.2012, 19:55:07 »
ещё не делал такого, но предстоит делать (только не для статей, а для другого компонента)
Для того, чтобы заработало надо:
1. Сохранить категории в виде id1, id2, id3 в поле cat_id (не знаю есть ли стандартное решение в формах)
2. При выводе статей научить Joomla разбирать cat_id по-новому.

По первому пункту скорее положительный ответ. (видел подобное в компоненте раздачи прав пользователям, когда несколько групп ему назначаешь - смотри)

Также можно не id1, id2, id3 хранить в поле, а serialize($array)  на этот вопрос может гуру ответят какой метод предпочтительнее и функциональнее.
*

Extalionez

  • Осваиваюсь на форуме
  • 36
  • 5 / 0
Re: Написание компонента для Joomla 1.6
« Ответ #113 : 24.03.2012, 22:32:56 »
ладно - спрошу тоже самое что мне надо, но несколько иначе...
как изменить этот http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!2.5_-_Part_18 пример, чтобы на административной странице редактирования 'материала' отображались и сохранялись данные ещё и из другой таблицы, а не только #__helloworld. Например из #__helloworld_cat.
А вообще это должно примерно так выглядеть
id  |  article_ad | cat_id | ordering
----------------------------------
1   |   2           |  8       |    1
----------------------------------
2   |   2           |  12      |    1
----------------------------------
3   |   2           |  45      |    1

Я думаю что даже не обязательно использовать категории Joomla, а можно и свою таблицу с категориями создать

Проблема в том, что надо как-то получать названия категорий из одной базы(описания категорий), формировать список уже выбранных категорий из другой базы(чуть выше), и отображать это на странице редактирования материала, которая получает данные из третьей базы(название материала и т.п.). Так ещё потом и сохранить это по-умному.
Так вот... может кто-нить тут писануть велосипедик, способный провернуть это. Думаю это многим будет полезно.
« Последнее редактирование: 24.03.2012, 22:45:38 от Extalionez »
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #114 : 25.03.2012, 12:54:31 »
Я буквально недавно стал изучать писанину под 1.6 (правда был опыт под 1.0 и 1.5).
Все что вы спрашивали решается созданием собственных полей для формы, именно ваши новые типы полей будут лазить по другим таблицам и брать из них id и вставлять значение в например cat_id

Вот мой пример:
вот оно поле в формах
Код
	<field
name="way_id"
type="kayakway"
label="COM_KAYAK_PERSON_WAY_LABEL"
description="COM_KAYAK_PERSON_WAY_DESC"
class="inputbox"
size="1"
required="true"
default="">
</field>
вот оно поле kayakway.php из папки /models/fields:
Код
<?php
defined('_JEXEC') or die;
jimport('joomla.form.helper');
JFormHelper::loadFieldClass('list');
 
/**
 * Kayak Way Form Field class for the Kayak component
 */
class JFormFieldKayakWay extends JFormFieldList
{
/**
* The field type.
*
* @var string
*/
protected $type = 'KayakWay';
 
/**
* Method to get a list of options for a list input.
*
* @return array An array of JHtml options.
*/
protected function getOptions()
{
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('id, way, count_day, start_date');
$query->from('#__kayak_way');
$date_now = date("Y-m-d");
$query->where('published = 1 and start_date > \''.$date_now.'\'');
$query->order('start_date');
$db->setQuery((string)$query);
$messages = $db->loadObjectList();
$options = array();
//$options[] = JHtml::_('select.option', 0, 'COM_KAYAK_KAYAK_SELECT_WAY');
if ($messages)
{
foreach($messages as $message)
{
$options[] = JHtml::_('select.option', $message->id, $message->way
. ' ('.$message->count_day. ' : '
.$message->start_date .')'
);

}
}
$options = array_merge(parent::getOptions(), $options);
return $options;
}
}

Цитировать
Нельзя! как вы собираетесь выбирать все материалы текущей категории?
Спасибо! Получил ответ. А по типу id1, id2, id3 в J! стандартное решение не подскажите?
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #115 : 25.03.2012, 12:57:41 »
А когда надо названия подтянуть из другой таблицы это делается в моделе в самом запросе sql через join
*

Extalionez

  • Осваиваюсь на форуме
  • 36
  • 5 / 0
Re: Написание компонента для Joomla 1.6
« Ответ #116 : 25.03.2012, 13:53:52 »
А когда надо названия подтянуть из другой таблицы это делается в моделе в самом запросе sql через join
У меня голова спеклась пока я пытался это через join провернуть. Не подскажите как это сделать? Буду вечно благодарен.
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #117 : 25.03.2012, 16:28:00 »
Цитата: Extalionez
Буду вечно благодарен.
Вот пример моего кода из модели, где подобным образом берется название маршрута по ИДишнику маршрута
Код
protected function getListQuery()
{
// Create a new query object.
$db = JFactory::getDBO();
$query = $db->getQuery(true);
// Select some fields
$query->select($this->getState(
'list.select',
'a.*, '.
'sum(b.seats) AS counts, '.
'b.way_id')
);
$query->from('`#__kayak_way` AS a');
$query->leftJoin('`#__kayak_person` AS b on b.way_id = a.id and b.published = 1');
$query->group('a.id');
$orderCol = $this->state->get('list.ordering');
$orderDirn = $this->state->get('list.direction');
$query->order($db->getEscaped($orderCol.' '.$orderDirn));
return $query;
}
Запрос ещё и суммирует поле которое мне надо - Вам это можно выкинуть
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #118 : 30.03.2012, 22:06:49 »
Продолжая тему...

Понадобилось мне ввести "сложный" параметр в компонент, и я не знаю как его реализовать. Подскажите направление. Из http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!2.5_-_Part_13 понятно как делать параметры вообще. не совсем понятен их вывод и формирование а именно
Код
// Load the JSON string
$params = new JRegistry;
                                // loadJSON is @deprecated    12.1  Use loadString passing JSON as the format instead.
//$params->loadString($this->item->params, 'JSON');
                                $params->loadJSON($this->msg->params);
$this->msg->params = $params;
 
// Merge global params with item params
$params = clone $this->getState('params');
$params->merge($this->msg->params);
$this->msg->params = $params;

Собственно сделать мне надо вот что:
Есть 2 параметра 1-номер телефона, 2-какой телефон использовать?
Суть: компонент занимается сбором заказов на тур. Есть телефон главного менеджера, каждому маршруту можно (параметром) изменить телефон менеджера. Телефон нужен для уведомления менеджера по СМС о поступлении заказа на "ЕГО" маршрут. В глобале также должен отрабатываться вариант отключения частных случаев и использование только глобального.
Собственно вот они параметры... Как их завязать?
*

platonische

  • Давно я тут
  • 523
  • 2 / 1
  • Парусные экспедиции vk.com/tc670
Re: Написание компонента для Joomla 1.6
« Ответ #119 : 31.03.2012, 00:20:02 »
про php array_merge() почитал, думаю у Joomla примерно тоже (если есть отклонения то возможно пока не для меня)
Как работает понял: Берутся глобальные параметры и на них накатываются индивидуальные, всё это по соответствующим ключам в массиве.
Примерно как выходить из положения примерно понятно: либо логику пересматривать, либо ковыряться в каждых параметрах напрямую и формировать из них по моим правилам новые списки параметров... ЖУТЬ...
Но
Код
$params = new JRegistry;
                                // loadJSON is @deprecated    12.1  Use loadString passing JSON as the format instead.
//$params->loadString($this->item->params, 'JSON');
                                $params->loadJSON($this->msg->params);
Меня смущает вот это... Как проверить что данные пришли? Такое чувство что их нет.

и ещё вопрос
в моделе есть вот такое
Код
	public function getTable( $type = 'Person', $prefix = 'KayakTable', $config = array() )
{
return JTable::getInstance( $type, $prefix, $config );
}
Все понятно. Берем
Код
$table = $this->getTable();
$table->load($id);
Получили данные строки в $table

Можно ли вызвать другой TABLE вот так?
Код
$table = $this->getTable($type = "Kayak");

Ну и попутно еще... Почему в моделе не работает вот это?
Код
public function save($data){
if(parent::save($data)){

$table = $this->getTable($type = "Kayak");
$table->load($data['way_id']);

$params = new JRegistry;
//$params->loadString($this->item->params, 'JSON');
                $params->loadJSON($table->params);
$p = $params;
$params = clone $this->getState('params');
$params->merge($p);
$phone = $params->get('way_manager_phone');

$message = $data['phone'].", ".$data['name'].", ".$data['seats']." мест, на ".$data['start_date'];

$this->sendSMS($phone = $phone, $message = $message);


return true;
}
return false;
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Документация по созданию модуля для Joomla 2.5 и Joomla 3.x

Автор b2z

Ответов: 1
Просмотров: 2377
Последний ответ 29.07.2015, 09:40:30
от b2z
Создание компонента MVC

Автор borodatych

Ответов: 36
Просмотров: 4662
Последний ответ 13.04.2015, 08:17:30
от flyingspook
Подскажите как сделать русификацию компонента)

Автор stardel

Ответов: 4
Просмотров: 7068
Последний ответ 08.04.2015, 09:08:00
от oxotnikkz
JPluginHelper::importPlugin('content') в Joomla 1.7

Автор Dutch

Ответов: 2
Просмотров: 4829
Последний ответ 30.03.2015, 14:22:51
от twins717
Документация по созданию компонента для Joomla 2.5

Автор Sulpher

Ответов: 74
Просмотров: 57508
Последний ответ 17.11.2014, 13:43:07
от limon142