ارتباط بین اطلاعات و تعاریف داده شده و مشاهده نتیجه کار
بخش اول : منوی لیست نمایه های کامپوننت
دستورات زیر با هدف تولید لیست نمایه های تعریف شده در فایل compname.php شاخه helpers فراخوانی می شوند.
$this->sidebar = JHtmlSidebar::render(); فراخوانی تابع addSubmenu در فایل بالا
<?php echo $this->sidebar; ?> نمایش نتیجه مطابق با شماره 1 در تصویر ضمیمه
بخش دوم : لیست امکانات فیلتر جستجو
در این قسمت لیست کلیه فیلدهای مورد نیاز که در فایل filter_viewnames.xml که در شاخه models/forms وجود دارد فراخوانی و نمایش داده می شود .
کدهایی که برای نمایش فیلتر استفاده می شوند به قرار زیر است
در فایل view.html.php
$this->filterForm = $this->get('FilterForm');
$this->activeFilters = $this->get('ActiveFilters');
در فایل default.php برای نمایش بر اساس تصویر قسمت شماره 2
<?php
echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this));
?>
بخش سوم : کلیدهای طراحی شده برای کنترلهای مورد نظر
در فایل view.html.php برای نمایش بر اساس تصویر قسمت شماره 3
$this->addToolbar();
.
.
.
protected function addToolbar(){
JToolBarHelper::addNew('xxxxxxxx.add');
JToolBarHelper::editList('xxxxxxxx.edit');
JToolBarHelper::publish('xxxxxxxxs.publish', 'JTOOLBAR_PUBLISH', true);
JToolBarHelper::unpublish('xxxxxxxxs.unpublish', 'JTOOLBAR_UNPUBLISH', true);
.
.
این دستورات در جوملا تعریف شده بوده و نیاز به فراخوانی در فایل default.php نمی باشد
بخش چهارم : نمایش صفحه بندی داده های جدول مورد نظر
در فایل view.html.php
$this->pagination = $this->get('pagination');
در فایل default.php برای نمایش بر اساس تصویر قسمت شماره 4
<?php echo $this->pagination->getListFooter(); ?>
بخش پنجم : مرتب سازی بر اساس فیلد ordering جدول داده ها
در فایل default.php برای نمایش بر اساس تصویر قسمت شماره 5
در این بخش فایل viewnames.php موجود در شاخه controllers تابع saveOrderAjax بصورت Ajax برای جابجائی ها فراخوانی می شود
بخش ششم : مرتب سازی بر اساس فیلد های هر ستون داده
در فایل default.php برای نمایش بر اساس تصویر قسمت شماره 6
هر ستون که با ساختار زیر تعریف شود نمایه توانایی مرتب سازی بر اساس آن ستون را دارد
<?php echo JHtml::_('searchtools.sort','عنوان ترجمه ای فیلد', 'نام فیلد', $listDirn, $listOrder); ?>
پارامترها و متغیرهای مورد نیاز برای این کنترل ها در فایل viewnames.php در شاخه models قرار دارد که به شرح زیر می باشد
public function __construct($config = array()){
if (empty($config['filter_fields'])) {
$config['filter_fields'] = array(
'a.id',
'alias',
'نام فیلد',
'published',
'a.ordering'
);
}
parent::__construct($config);
}