Новости Joomla

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

specialist-web

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Здравствуйте. Делаю специальный модуль для RSEvent!
Модуль выводит Событие и выводит даты повторяющихся событий.
В компоненте есть функция, которая проверяет можно ли записаться на это событие или запись закрыта (например, закончились билеты). Этой функцией скрывается кнопка регистрации если билетов больше нет.
И мне надо использовать её в модуле, но никак не могу понять как правильно её подключить.

Функция находится в файле:
Код
components/com_rseventspro/models/rseventspro.php
Код
class rseventsproModelRseventspro extends JModelLegacy {

// Check if the current user can subscribe
public function getCanSubscribe() {
$id = $this->_app->input->getInt('id');
$query = $this->_db->getQuery(true);
$jinput = JFactory::getApplication()->input;

// Get the event details
$query->clear()
->select($this->_db->qn('end'))->select($this->_db->qn('registration'))->select($this->_db->qn('start_registration'))
->select($this->_db->qn('end_registration'))->select($this->_db->qn('max_tickets'))->select($this->_db->qn('max_tickets_amount'))
->select($this->_db->qn('form'))->select($this->_db->qn('allday'))->select($this->_db->qn('start'))
->from($this->_db->qn('#__rseventspro_events'))
->where($this->_db->qn('id').' = '.$id);

// не буду писать весь код...

}

return array('status' => true);
}
}
Как использовать эту функцию в модуле?

Я подключаю файл в контроллере:
Код
require_once JPATH_SITE.'/components/com_rseventspro/models/rseventspro.php';
и пытаюсь подключить:
Код
$cansubscribe = rseventsproModelRseventspro::getCanSubscribe('status');
Получаю пустую страницу, т.е. не работает.

В шаблоне вывода компонента она работает так:
Код
<?php if ($this->cansubscribe['status']) { ?>
Кнопка регистрации
<?php } ?>
Мне нужно получить это в модуле.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Можете посмотреть в стандартном Joomla модуле, как подключить модель. Здесь используется модель com_content.

https://github.com/joomla/joomla-cms/blob/staging/modules/mod_articles_latest/helper.php
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
и пытаюсь подключить:
Код
$cansubscribe = rseventsproModelRseventspro::getCanSubscribe('status');
навскидку: вы вызываете метод как статичный, но уверены ли вы, что метод getCanSubscribe является таковым?

ps: rsevent - вещь нечасто используемая и достаточно дорогая, ответа ждать можно долго
*

specialist-web

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
навскидку: вы вызываете метод как статичный, но уверены ли вы, что метод getCanSubscribe является таковым?
Метод: public function getCanSubscribe()
Как правильно вызвать?
ps: rsevent - вещь нечасто используемая и достаточно дорогая, ответа ждать можно долго
Да, согласен, что RSEvent редко используют, но принципы подключения одинаковые для всех компонентов.
*

specialist-web

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
components/com_rseventspro/models/rseventspro.php
Значит мне нужно подключить в файле helper.php
Код
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_rseventspro/models', 'getCanSubscribe');
Как правильно вызвать её?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код
		JModelLegacy::addIncludePath(JPATH_SITE. '/components/com_users/models');
$model = JModelLegacy::getInstance( 'Reset', 'UsersModel' );
Так можно использовать модели
Обратите внимание на именование классов
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Код
// подключаем модель
JModelLegacy::addIncludePath(JPATH_SITE.'/components/com_rseventspro/models', 'rseventsproModel');
$model = JModelLegacy::getInstance('Rseventspro', 'rseventsproModel', array('ignore_request' => true));

// получаем статус
$status = $model->getCanSubscribe('status');
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Jroute компонента альбомов

Автор Koot

Ответов: 2
Просмотров: 599
Последний ответ 03.08.2019, 10:21:04
от Aleks.Denezh
params->get для компонента, как получить свои собственные параметры для компонента

Автор klubnichkaaa

Ответов: 13
Просмотров: 13326
Последний ответ 01.06.2017, 20:20:28
от Septdir
Плагин Smart Search для своего компонента

Автор ftp27

Ответов: 1
Просмотров: 1606
Последний ответ 07.01.2017, 19:44:04
от newvideo
Как вставить модуль в контент компонента

Автор sava36

Ответов: 21
Просмотров: 18076
Последний ответ 15.06.2016, 09:55:51
от Ilja93
Возможность изменения параметров в админ части компонента

Автор CaHeK_pk

Ответов: 2
Просмотров: 1085
Последний ответ 12.02.2016, 02:53:16
от CaHeK_pk