Пример #1
0
 function listFields()
 {
     $page = JRequest::getString('page');
     $position = JRequest::getVar('position');
     if (is_array($position)) {
         $position = $position[0];
     }
     $model = JModel::getInstance('Positions', 'JTheFactoryModel');
     $theme = JTheFactoryThemesHelper::getCurrentTheme();
     $themeheader = JTheFactoryThemesHelper::getThemeHeader($theme);
     $pages = JTheFactoryThemesHelper::getThemePages($theme);
     if (!$page && count($pages)) {
         $page = $pages[0]->name;
     }
     $positions = JTheFactoryThemesHelper::getPagePositions($theme, $page);
     if (!$page && count($pages)) {
         $page = $pages[0]->name;
     }
     // default
     if (!$position && count($positions)) {
         $position = $positions[0]->name;
     }
     // default
     for ($i = 0; $i < count($pages); $i++) {
         $pages[$i]->fields = $model->getFieldsForPage($pages[$i]->name);
     }
     for ($i = 0; $i < count($positions); $i++) {
         $positions[$i]->fields = $model->getFieldsForPosition($positions[$i]->pagename, $positions[$i]->name);
     }
     $pagehtml = JTheFactoryPositionsHelper::htmlPageSelect($pages, $page);
     $positionshtml = JTheFactoryPositionsHelper::htmlPositionSelect($positions, $position);
     $fields = $model->getFieldsForPosition($page, $position);
     $view = $this->getView('fields');
     $view->assignRef('fields', $fields);
     $view->assignRef('themeheader', $themeheader);
     $view->assignRef('pagehtml', $pagehtml);
     $view->assignRef('positionshtml', $positionshtml);
     $view->assignRef('page', $page);
     $view->assignRef('position', $position);
     $view->display('list');
 }