E-mail Печать

Шаг 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

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

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

 
Интересная статья? Поделись ей с другими:

Комментарии  

 
-8 # 02.05.2010 23:16
А что указать в xml файде, чтобы заместо "generic.png" указать своё имя, и отобразилась бы своя картинка?
Ответить | Ответить с цитатой | Цитировать
 
 
+1 # 24.10.2010 09:37
Цитата:
А что указать в xml файде, чтобы заместо "generic.png" указать своё имя, и отобразилась бы своя картинка?

сохранить свою картинку под generic.png
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 23.10.2010 17:08
У меня на странице админки открывается страница с кодировкой windows-1251. Вроде все сделал один-в-один как в примере. В чем может быть проблема?
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 24.10.2010 09:36
Цитирую Юрий:
У меня на странице админки открывается страница с кодировкой windows-1251. Вроде все сделал один-в-один как в примере. В чем может быть проблема?

Наблюдалась такая хрень, лечилось. Я думаю скорее всего сохраняете файлы в кодировке windows-1251, т.е. их нужно пересохранить в utf-8
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 12.11.2010 20:17
С кодировкой в административно й части тоже какая то фигня, хотя файлы сохраняю в UTF-8. Причем в иероглифах вся страница.. даже не знаю че за косяк
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 01.12.2010 21:20
смени кодировку в браузере.
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 12.11.2010 20:24
Открываю в мозиле -косяк, в экспоуре - все нормально
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 29.01.2011 21:12
Аналогичная проблема с кодировкой.
Даже при вставке из Ваших "Скачатьисходный код примера".
Вот такая картина:
http://www.k-max.name/wp-content/uploads/2011/01/11.png
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 01.02.2011 18:02
Цитирую Mc.Sim:
Аналогичная проблема с кодировкой.
Даже при вставке из Ваших "Скачатьисходный код примера".
Вот такая картина:
http://www.k-max.name/wp-content/uploads/2011/01/11.png

Да есть такое, в причине разбираться не стал.
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 09.02.2011 16:30
это здорово а как создать кнопки публикация, тоесть конкретно каждое меню имеет кнопку а именно флажки!
Индикатор статуса опубликовано и нет!
А так же как подключить постраничный вывод!
Ответить | Ответить с цитатой | Цитировать
 
 
+2 # 15.02.2011 11:20
Тоже столкнулся со слетающей кодировкой с utf-8 на windows-1251.
Заборол добавление строки в конец 3х фалов из админ каталог:
header( 'Content-Type: text/html; charset=utf-8' );

Народ не ленитесь выкладывайте ваши правки косяков и вам помогут в следующий раз такие же как и вы.
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 24.06.2011 18:47
И действительно помагает вставка кода
header( 'Content-Type: text/html; charset=utf-8' );
но только я вставил в один файл admin.goodtimes.php и все здорово заработало.
Ответить | Ответить с цитатой | Цитировать
 
 
0 # 28.08.2011 04:27
Спасибо за материалы, подсобили!
Ответить | Ответить с цитатой | Цитировать
 
 
0 # Стас 06.12.2011 14:29
Сделал все как написано выдает ошибку:
Fatal error: Call to undefined function stderr() in Z:\home\localho st\www\spectorg \administrator\ components\com_ goodtimes\admin .goodtimes.php on line 14
Как ее испрвить?
Ответить | Ответить с цитатой | Цитировать
 

Добавить комментарий


Защитный код
Обновить

Follow me on...

  • FeedBurner: Joomla15Joomla15
  • Twitter: alexkurgan
На правах рекламы