Центр документации
Карта сайта

Создай визитку сам!


Самоучитель по интеграции дизайна и настройке Amiro.CMS на примере демонстрационной версии пакета Визитка »


Компонента списка элементов модуля

Компонента списка элементов модуля предназначена для отображения списка элементов на публичной части с поддержкой постраничной навигации и сортировок.

Код компоненты списка элементов

Для реализации компоненты списка необходимо создать: 

  1. Класс контроллера, наследуемый от Hyper_AmiClean_ItemsFrn
  2. Класс отображения, наследуемый от Hyper_AmiClean_ItemsViewFrn
class AmiClean_AmiSample_ItemsFrn extends Hyper_AmiClean_ItemsFrn{
}
 
class AmiClean_AmiSample_ItemsViewFrn extends Hyper_AmiClean_ItemsViewFrn{

В классе отображения реализуется метод init, в котором происходит добавление полей списка:

public function init(){
        parent::init();
        $this
            ->addColumn('id')
            ->addColumn('public')
            ->addColumnType('birth', 'date')
            ->addColumn('sublink')
            ->addColumn('nickname')
            ->addColumn('about');
        return $this;
    }

Шаблон

Сеты оформления компоненты списка элементов добавляются в шаблоне модуля "_local/_admin/templates/modules/inst_sample_module.tpl".

##--
Сет отображения списка элементов.
--##
<!--#set var="item_list" value="<table width="100%">##list##</table><div>##pager##</div>"-->

##--
Сет отображения ряда списка.
--##
<!--#set var="item_row" value="
<tr>
<td colspan="2"><a href="##www_root####script_link##/##sublink##">##nickname##</a></h3></td>
</tr>
<tr>
<td valign="top" width="120">##img_small##</td>
<td valign="top">##about##</td>
</tr>
"-->

##--
Сет оформления списочного отображения.
--##
<!--#set var="body_items" value="##item_list##"-->

##--
Сет отображения модуля.
--##
<!--#set var="main_body" value="
<div>##body##</div>"-->

Шаблон локализаций

Языковые переменные компоненты списка элементов добавляются в шаблоне модуля "_local/_admin/templates/lang/modules/inst_sample_module.lng".

Параметры компоненты

Для корректной работы компоненты списка, следующие параметры должны быть добавлены в файл "_local/modules/declaration/properties.php":

if($oDeclarator->isRegistered('inst_sample_module')){
    $oMod = $oDeclarator->getModule('inst_sample_module');
    $oMod->setProperty('front_request_types', array('plain'));
    $oMod->setProperty('stop_use_sublinks', TRUE);
}

Следующие параметры должны быть добавлены в файл "_local/modules/declaration/options.php":

if($oDeclarator->isRegistered('inst_sample_module')){
    $oMod = $oDeclarator->getModule('inst_sample_module');
    $oMod->setOption('page_size',           10);
    $oMod->setOption('front_page_sort_col', 'nickname');
    $oMod->setOption('front_page_sort_dim', 'desc');
    $oMod->setOption('stop_arg_names', array('id' => 'inst_sample_module'));
}

Параметр "page_size" определяет количество записей на страницу, а параметры "front_page_sort_col" и "front_page_sort_dim" определяют поле и направление сортировки.

Установка и настройка Руководство пользователя Интеграция дизайна Разработчикам (API)
 2000 – 2021 © Amiro.CMS Все права защищены.