19.09.2009 14:46 admin
Печать

Шаг 4. Создание Панелей инструментов

В любом компоненте Joomla в административной части присутствует Панель инструментов, она позволяет добавлять, изменять, удалять и делать прочие операции. В нашем компоненте мы также создадим панели инструментов.
Для начала создадим файл toolbar.goodtimes.html.php в папке administrator/components/com_goodtimes и вставим в него следующий код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );

class TOOLBAR_goodtimes {
function _NEW() {
JToolBarHelper::save();
JToolBarHelper::apply();
JToolBarHelper::cancel();
}

function _DEFAULT() {
JToolBarHelper::title( JText::( 'Обзор развлекательных заведений' ), 'generic.png' );
JToolBarHelper::publishList();
JToolBarHelper::unpublishList();
JToolBarHelper::editList();
JToolBarHelper::deleteList();
JToolBarHelper::addNew();
}
}

?>

Панели инструментов теперь определены, но мы должны добавить некоторый код, который решит как показать их. Создайте файл toolbar.goodtimes.php в папке administrator/components/com_goodtimes и добавьте в него код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );

require_once( JApplicationHelper::getPath( 'toolbar_html' ) );

switch($task)
{
case 'edit':
case 'add':
TOOLBAR_goodtimes::_NEW();
break;

default:
TOOLBAR_goodtimes::_DEFAULT();
break;
}

?>

Строка, содержащая require_once (...), использует getPath () это функция класса JApplicationHelper. Вызов функции getPath () позволяет вам вызвать файл toolbar.goodtimes.html.php, не передавая название компонента.

После того, как toolbar.goodtimes.php загрузит файл с представлением панели инструментов, нужно решить какая панель инструментов должна быть показана. Для этого служит переменная запроса $task автоматически зарегистрированная в глобальной области Joomla! и используется, чтобы направлять логику компонента. Теперь если открыть компонент через административную часть, то мы увидим следующее:

Шаг 4

Чтобы увидеть другую панель инструментов, добавьте &task=add в конец URL в Вашем браузере. Панель инструментов должна выглядеть вот так:

Шаг 4

Естественно что пользователи не будут добавлять дополнительные переменные в строку адреса. Для этого будут служить кнопки на панели инструментов. Каждая кнопка на панели инструментов представляет различную задачу.
Далее мы рассмотрим это подробнее.

Скачатьисходный код примера