예제 #1
0
파일: Page.php 프로젝트: ei-grad/phorm
 /**
  * Список страниц
  * 
  * @return void
  */
 public function indexAction()
 {
     $grid_options = Phorm_Config::xml('grids/control/page.xml', 'index');
     /**
      * Перезагрузка меню геообъектов
      */
     if ($this->_request->isXmlHttpRequest() && isset($this->_params['pageid'])) {
         $this->view->setEscape('trim');
         $Menu = $this->view->navigation()->menu($this->Page->getNavigationMenu($this->_params['pageid']))->render();
         die($Menu);
         /**
          * Данные для Grida
          */
     } elseif ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Page->getPageList($this->_params);
         $paginator = $this->Page->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $grid_options));
         return true;
     }
     /**
      * JS для обновления меню
      */
     if (isset($this->_params['tree']) && $this->_params['tree'] == 'reload' && isset($this->_params['pageid'])) {
         $js = 'window.parent.trees.page.' . $this->_params['controller'] . '.reload(\'' . $this->view->siteUrl() . '/control/' . $this->_params['controller'] . '/?pageid=' . $this->_params['pageid'] . '\');';
         $this->_boot->jquery->addOnload($js);
     }
     /**
      * Grid
      */
     $this->view->assign('PagesDataTable', $this->view->DataGrid('PagesDataTable', $grid_options));
 }
예제 #2
0
파일: Widgets.php 프로젝트: ei-grad/phorm
 /**
  * Главная страница
  * 
  * @return void
  */
 public function indexAction()
 {
     $options = Phorm_Config::xml('grids/control/widgets.xml');
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Widget->getWidgetsSetsFullList();
         $paginator = $this->Widget->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('WidgetsDataTable', $this->view->DataGrid('WidgetsDataTable', $options));
     }
 }
예제 #3
0
파일: Index.php 프로젝트: ei-grad/phorm
 /**
  * Расширенный рабочий стол
  * 
  * @return void
  */
 public function extendAction()
 {
     $grid_options = Phorm_Config::xml('grids/control/log.xml');
     if ($this->_request->isXmlHttpRequest()) {
         $Log = new Phorm_Log();
         $rows = $Log->getLogRecords($this->_params);
         $paginator = $Log->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $grid_options));
     } else {
         $this->view->assign('LogDataTable', $this->view->DataGrid('LogDataTable', $grid_options));
     }
 }
예제 #4
0
파일: Media.php 프로젝트: ei-grad/phorm
 /**
  * Главная страница - Список файлов
  * 
  * @return void
  */
 public function indexAction()
 {
     $localform = $this->Media->getLocalFileForm();
     $remoteform = $this->Media->getRemoteFileForm();
     $this->view->assign('RemoteForm', $remoteform);
     $options = Phorm_Config::xml('grids/control/media.xml');
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Media->getMediaList($this->_params);
         $paginator = $this->Media->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('MediaDataTable', $this->view->DataGrid('MediaDataTable', $options));
     }
 }
예제 #5
0
파일: Resource.php 프로젝트: ei-grad/phorm
 /**
  * Главная страница - Список материалов
  * 
  * @return void
  */
 public function indexAction()
 {
     $this->view->assign('Header', $this->_translate->_('Список ' . (empty($this->ModuleInfo) ? 'материалов сайта' : $this->ModuleInfo['genetivename'])));
     $section = isset($this->_params['section']) ? $this->_params['section'] : 'index';
     $options = $this->Resource->getGridOptions($section);
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Resource->getResourcesList($this->_params);
         $paginator = $this->Resource->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options + $this->_params));
         // В параметрах есть id модуля по которому можно подрезать список разделов в Phorm_JQuery_DataGrid::data
     } else {
         $this->view->assign('ResourceDataTable', $this->view->DataGrid('ResourceDataTable', $options));
     }
 }
예제 #6
0
파일: Browser.php 프로젝트: ei-grad/phorm
 /**
  * Браузер материалов сайта
  * 
  * @return void
  */
 public function resourcesAction()
 {
     $this->Resource = new Phorm_Resource();
     $options = Phorm_Config::xml('grids/control/browser.xml', 'resources');
     if ($this->_request->isXmlHttpRequest()) {
         $categories = $this->Resource->getCategoriesPathsByModule();
         foreach ($categories as $category) {
             $options['headings']['categoryid']['optiondata'][] = array('categoryid' => $category['categoryid'], 'categoryname' => str_repeat(' ', $category['clevel'] * 3) . $category['categoryname']);
         }
         //$options['headings']['categoryid']['optiondata'] = $this->Resource->getCategoriesListByModule();
         //$options['headings']['categoryid']['optiondata'] = $categories;
         $rows = $this->Resource->getResourcesList($this->_params);
         $paginator = $this->Resource->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('ResourcesDataTable', $this->view->DataGrid('ResourcesDataTable', $options));
     }
 }
예제 #7
0
파일: Forms.php 프로젝트: ei-grad/phorm
 /**
  * Список записей формы
  * 
  * @return void
  */
 public function entriesAction()
 {
     if (isset($this->_params['resourceid']) && ($FormInfo = $this->Forms->getFullFormInfo($this->_params['resourceid']))) {
         $options = Phorm_Config::xml('/resources/forms/control/grids.xml', 'entries');
         if ($this->_request->isXmlHttpRequest()) {
             $rows = $this->Forms->getEntriesList($FormInfo['resourceid']);
             $paginator = $this->Forms->getPaginator();
             $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
         } else {
             $this->view->assign('Header', $this->_translate->_('Список записей формы') . ' «' . $FormInfo['resourcename'] . '»');
             $this->view->assign('EntriesDataTable', $this->view->DataGrid('EntriesDataTable', $options));
         }
     } else {
         return $this->composeErrorMessage('Форма с указанным Id не найдена');
     }
 }
예제 #8
0
파일: Store.php 프로젝트: ei-grad/phorm
 /**
  * Список типов клиентов
  * 
  * @return void
  * @todo Перевести все гриды на compose-метод аля composeDataGrid($gridname,$gridoptions,$model,$methodname)
  */
 public function clientgroupsAction()
 {
     $options = Phorm_Config::xml('grids/control/store.xml', 'clientgroups');
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Store->getClientgroupsList($this->_params);
         $paginator = $this->Store->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('GridDataTable', $this->view->DataGrid('GridDataTable', $options));
     }
 }
예제 #9
0
 /**
  * Список записей в справочнике
  * 
  * @return void
  */
 public function entriesAction()
 {
     if (isset($this->_params['dictionaryid']) && ($DictionaryInfo = $this->Dictionaries->getDictionaryInfo($this->_params['dictionaryid']))) {
         $options = Phorm_Config::xml('grids/control/dictionaries.xml', 'entries');
         if ($this->_request->isXmlHttpRequest()) {
             $rows = $this->Dictionaries->getEntriesList($DictionaryInfo['dictionaryid'], $this->_params);
             $paginator = $this->Dictionaries->getPaginator();
             $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
         } else {
             $this->view->assign('Header', $this->_translate->_('Список записей в справочнике') . ' «' . $DictionaryInfo['dictionaryname'] . '»');
             $this->view->assign('EntriesDataTable', $this->view->DataGrid('EntriesDataTable', $options));
         }
     } else {
         return $this->composeErrorMessage('Справочник с указанным Id не найден', '/control/dictionaries/');
     }
 }
예제 #10
0
 /**
  * Список свойств
  * 
  * @return void
  */
 public function propertiesAction()
 {
     $options = Phorm_Config::xml('grids/control/structures.xml', 'properties');
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->Structures->getPropertiesList($this->_params);
         $paginator = $this->Structures->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('PropertiesDataTable', $this->view->DataGrid('PropertiesDataTable', $options));
     }
 }
예제 #11
0
파일: Users.php 프로젝트: ei-grad/phorm
 /**
  * Список ролей
  * 
  * @return void
  */
 public function rolesAction()
 {
     $options = $this->User->getGridOptions('roles');
     if ($this->_request->isXmlHttpRequest()) {
         $rows = $this->User->getRolesList();
         $paginator = $this->User->getPaginator();
         $this->_helper->json(Phorm_JQuery_DataGrid::data($rows, $paginator, $options));
     } else {
         $this->view->assign('RolesDataTable', $this->view->DataGrid('RolesDataTable', $options));
     }
 }