Новости Joomla

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

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

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

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

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
JController
« : 26.07.2009, 17:33:30 »
Краткое описание

Базовый класс, используемый для управления Joomla.

Описан в /libraries/joomla/application/component/controller.php.

Свойства

protected string _acoSection - Секция ACO для контроллера.

protected string _acoSectionValue - Заданная по умолчанию Секция ACO оценивает для контроллера.

protected string _basePath - Основной путь контроллера.

protected string _doTask - Отображенная задача, которая была выполнена.

protected string _message - Переадресованное сообщение.

protected string _messageType - Тип переадресованного сообщения.

protected array _methods - Массив методов класса.

protected array _name - Название контроллера.

protected array _path - Набор каталогов поиска для ресурсов (представления).

protected string _redirect - URL для перенаправления.

protected string _task - Текущая или новая задача, которая будет выполнена.

protected array _taskMap - Массив методов класса, для вызова данной задачи.



Методы


protected __construct($config = array())

Описание: Конструктор для класса JController.

Параметры:

  • array $config - Дополнительный ассоциативный массив параметров настройки конфигурации. Распознанные значения ключа включают 'название', 'default_task', 'model_path', и 'view_path' (этот список не планировался быть полным).

Возвращаемое значение: ничего не возвращает.

=======================================================

protected _addPath($type$path)

Описание: Добавляет пути поиска файлов для шаблонов и ресурсов.

Параметры:

  • string $type - Тип пути (например, 'модель', 'представление'.)
  • string/array $path - Каталог или поток, для поиска.

Возвращаемое значение: ничего не возвращает.

=======================================================

private _createFileName($type$parts = array())

Описание: Создаёт имя файла для ресурса.

Параметры:

  • string $type - Тип ресурса, для создания имени файла.
  • array $parts - Ассоциативный массив информации имени файла. Дополнительный.

Возвращаемое значение: (строка) имя файла.

=======================================================

private &_createModel ($name$prefix =, $config = array())

Описание: Метод, для загрузки и возвращения объекта модели.

Параметры:

  • string $name - Название модели.
  • string $prefix - Дополнительный префикс модели.
  • array $config - Массив конфигурации для модели. Дополнительный.

Возвращаемое значение: (смешанный) объект Model при успешной работе; иначе ноль при ошибке.

=======================================================

private &_createView($name$prefix = , $type = , $config = array())

Описание: Метод, для закрузки и получения объекта представления. Этот метод сначала смотрит в текущем каталоге шаблона для соответствия, а при неудаче использует заданный по умолчанию путь, для загузки файла класса представления. Отметьте "название, префикс, тип" набора параметров, которые отличается  "названия, тип, префик" набора, используемого в связанных открытых методах.

Параметры:

  • string $name - Название представления.
  • string $prefix - Дополнительный префикс для имени класса представления.
  • string $type - Тип представления.
  • array $config - Массив конфигурации для представления. Дополнительный.

Возвращаемое значение: (смешанный) объект View при удаче; пустой указатель или ошибка при ошибке.

=======================================================

protected _setPath($type$path)

Описание: Устанавливает весь массив путей поиска файлов для ресурсов.

Параметры:

  • string $type - Тип пути, для установки, типично 'представления' или 'модели'.
  • string/array $path - Новый набор путей поиска файлов. Если пустой указатель или ложь, только сброс к текущему каталогу.

Возвращаемое значение: ничего.

=======================================================

static addModelPath ($path)

Описание: Добавляет к стеку путей модели в порядке очереди.

Параметры:

  • string/array $path - Каталог (строка), или список каталогов (массив), для добавления.

Возвращаемое значение: ничего.

=======================================================

static addViewPath($path)

Описание: Добавляет к стеку путей модели в порядке очереди.

Параметры:

  • string/array $path - Каталог (строка), или список каталогов (массив), для добавления.

Возвращаемое значение: ничего.

=======================================================

public authorize($task)

Описание: проверка доступа.

Параметры:

  • string $task - Значение Секции ACO, для проверки доступа.

Возвращаемое значение: (bool) True если разрешено.

=======================================================

public display($cachable false)

Описание: Типичный метод представления для основанной на MVC архитектуре. Эта функция обеспечивает заданную по умолчанию реализацию, в большинстве случаев Вы должны будете переопределить её в своих собственных контроллерах.

Параметры:

  • bool $cachable - Если true, вывод представления будет кэшироваться.

Возвращаемое значение: ничего.

=======================================================

public execute($task)

Описание: Выполняет задачу, вызывая метод в производном классе.

Параметры:

  • $task(строка) исполняемая задача. Если соответствующая задача не найдена, выполняется задача по умолчанию если определена.

Возвращаемое значение: (смешанное/false) значение, возвращенное указанным методом, false в случае ошибки.

=======================================================

public &getModel($name = , $prefix = , $config = array())

Описание: Метод, для получения объекта модели, загрузки при надобности.

Параметры:

  • string $name - Название модели. Дополнительный.
  • string $prefix - Префикс класса. Дополнительный.
  • array $config  - Массив Конфигурации для модели. Дополнительный.

Возвращаемое значение: (объект) модель.

=======================================================

public getName()

Описание: Метод, для получения названия контроллера. Значение названия по умолчанию анализируется, используя classname, или это может быть установлено, передавая $config['название'] в конструкторе класса.

Возвращаемое значение: (строка) имя контроллера.

=======================================================

public getTask()

Описание: Получите последней задачи, которая является или должна была быть выполнена.

Возвращаемое значение: (строка) задача, которая была или выполняется.

=======================================================

public getTasks()

Описание: Получает доступные задачи в контроллере.

Возвращаемое значение: Массив названий задач.

=======================================================

public &getView($name = , $type = , $prefix = , $config = array())

Описание: Метод, для получений ссылки на текущее представление и его загрузки в случае необходимости.

Параметры:

  • string $name - Название представления. Дополнительный, значение по умолчанию название контроллера.
  • string $type - Тип представления. Дополнительный.
  • string $prefix - Префикс класса. Дополнительный.
  • array $config - Массив Конфигурации для представления. Дополнительный.

Возвращаемое значение: (ссылка на объект) к представлению или ошибка.

=======================================================

public redirect()

Описание: Перенаправляет браузер или возвращает false, если не перенаправление не произошло.

Возвращаемое значение: (bool) false, если перенаправление не произошло.

=======================================================

public registerDefaultTask($method)

Описание: Регистрирует заданную по умолчанию задачу, которая выполнится если указанная не найдена.

Параметры:

  • string $method - Название метода в производном классе, для выполнения, если указанная задача не найдена.

Возвращаемое значение: ничего.

=======================================================

public registerTask($task$method)

Описание: Регистрирует задачу к методу в классе.

Параметры:

  • string $task - Задачи.
  • string $method - Название метода в производном классе, выполняемого для этой задачи.

Возвращаемое значение: ничего.

Пример:

В админке мы хотим добавить кнопку "Применить" справа сверху.
Для этого в нашем контроллере создаём метод save(),

function save()
{
     
// Здесь будет сохранение
}

который будет выполняться по нажатию кнопки "Применить", а в конструктор добавляем строку

$this
->registerTask('apply''save');


=======================================================

public setAccessControl($section$value null)

Описание: Устанавливает уровни доступа.

Параметры:

  • string $section - секция ACO (eg, компонент).
  • string $value - значение секции ACO (используя постоянное значение).

Возвращаемое значение: ничего.

=======================================================

public setMessage($text)

Описание: Устанавливает внутреннее сообщение, которое передают с переадресацией.

Параметры:

  • string $text - текст сообщения.

Возвращаемое значение: (строка) Предыдущее сообщение.

=======================================================

public setRedirect($url$msg null$type 'message')

Описание: Установливает URL для перенаправления браузера.

Параметры:

  • string $url - URL для перенаправления.
  • string $msg - Сообщение, для отображения на странице на которую переадресовываем.
  • string $type - Тип сообщения. Дополнительный. Значение по умолчанию - 'message'. Для сообщений об ошибке используйте значение - 'error'.

Возвращаемое значение: ничего.

Пример:


// В функции контроллера были сохранены изменения в объявлении.
// Теперь пользователя надо перенаправить на представление категории и сообщить что объявление сохранено. 
$this->setRedirect('index.php?option=com_jea&view=manage&Itemid='.$Itemid'Объявление сохранено''message');
// А если бы сохранение не получилось, то перенаправили бы на форму редактирования объявления и сообщили об ошибке.
$this->setRedirect('index.php?option=com_jea&view=manage&layout=form&id=52&Itemid='.$Itemid'Ошибка''error');
« Последнее редактирование: 06.09.2009, 22:49:29 от Виталик »
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: JController
« Ответ #1 : 26.07.2009, 17:38:37 »
ну и вот и к чему это???
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: JController
« Ответ #2 : 26.07.2009, 17:56:28 »
ну и вот и к чему это???
Если ни к чему, то удаляйте тему, больше таких создавать не буду.

Я считал что переводы статей с docs.joomla.org  на форуме лишними не будут (на английском не всем легко читать).
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: JController
« Ответ #3 : 26.07.2009, 18:33:13 »
а зачем? там читать не чего
если бы ты приводил примеры реализации функций, т.е. что и как нужно правильно делать.
а так этот перевод просто мусор. тем более, что он даж не оформлен никак.
просто набор слов

ладно бы ты сделал описание/доку, которой не было...
а так... я не понимаю.

ps.
_acoSection - защищенная (protected) строка
Описание: Секция ACO для контроллера.
ты хотя сам-то знаешь, что такое protected???
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

Dead Krolik

  • Захожу иногда
  • 131
  • 33 / 4
  • Теперь я рыбка
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: JController
« Ответ #5 : 26.07.2009, 18:41:26 »
ps.ты хотя сам-то знаешь, что такое protected???
знаю
*

Виталик

  • Завсегдатай
  • 1244
  • 130 / 0
Re: JController
« Ответ #6 : 26.07.2009, 18:45:35 »
оформление и неточности перевода я собирался поправить и добавить примеры использования
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: JController
« Ответ #7 : 26.07.2009, 18:46:32 »
посмотрим

зы. а чо перевод сразу нельзя было сделать грамотнее? мы вроде никуда не спешим :)
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться