public function mainMenuAction()
 {
     $menuModel = new MenuModel();
     $date = $menuModel->getMainMenu(Router::getLanguage());
     $args = self::menuArray($date);
     self::$main_menu_array = $args;
     if (Session::hasUser('admin')) {
         $menuModel = new MenuModel();
         $date = $menuModel->getAdminMenu();
         $args_admin = self::menuArray($date);
         foreach ($args_admin as $k => $v) {
             if ($v['alias_menu'] == 'admin') {
                 unset($v['child']);
                 $args[$k] = $v;
             }
         }
     }
     return $this->render_main_menu($args);
 }
Пример #2
0
 private function breadCrumbsArray($alias_array = array())
 {
     $menuModel = new MenuModel();
     $data = $menuModel->getMainMenu(Router::getLanguage());
     $data_menu_key_alias = array();
     foreach ($data as $k => $v) {
         $data_menu_key_alias[$v['alias_menu']] = $v;
     }
     $bread_crumbs_arr = array();
     foreach ($alias_array as $val) {
         if (Router::getLanguage() != Config::get('default_language')) {
             $k = str_replace(Router::getLanguage() . '/', '', $val);
         } else {
             $k = $val;
         }
         if (isset($data_menu_key_alias[$k])) {
             $bread_crumbs_arr[] = array('name' => $data_menu_key_alias[$k]['name'], 'alias' => $val);
         }
     }
     return $bread_crumbs_arr;
 }
 public function editAction()
 {
     if (Session::hasUser('admin')) {
         $indexModel = new IndexModel();
         $data_page = $indexModel->getPage(Router::getId(), Router::getLanguage(), $this->material_type);
         $menuModel = new MenuModel();
         $data = $menuModel->getMainMenu('uk');
         $menuController = new MenuController();
         $main_menu_array = $menuController->menuArray($data);
         $data_menu_item = $menuModel->getMenuDatePage($data_page[0]['id']);
         $redirect_status = null;
         $request = new Request();
         $editModel = new AddEditModel($request, $this->material_type);
         if ($request->isPost()) {
             if ($editModel->isValid()) {
                 if ($editModel->isAliasExist($data_page[0]['id'])) {
                     if ($editModel->inMenu()) {
                         $file_data = array('max_image_size' => Config::get('max_image_size'), 'max_image_width' => Config::get('max_image_width'), 'max_image_height' => Config::get('max_image_height'));
                         $fileUpload = new UploadFile($request, $file_data);
                         $redirect_status = $fileUpload->uploadImg($request, $this->material_type);
                         if ($redirect_status) {
                             $editModel->edit($data_page[0]['id']);
                         }
                     } else {
                         $with_without_menu = 1;
                         $editModel->edit($data_page[0]['id'], $with_without_menu);
                     }
                 } else {
                     Session::setFlash('Документ с таким псевдонимом уже существует!');
                 }
             } else {
                 Session::setFlash('Поле "Заголовок" обязательно для заполнения');
             }
         }
         $this->rewrite_file_alias();
         $args = array('data_page' => $data_page, 'data_menu' => $main_menu_array, 'edit_model' => $editModel, 'data_menu_item' => $data_menu_item, 'redirect' => $request->post('redirect'), 'redirect_status' => $redirect_status, 'without_menu' => $request->post('without_menu'), 'menu_disable' => Config::get('menu_disable'), 'id' => $data_page[0]['id']);
         $tpl = 'edit' . str_replace(' ', '', ucwords(str_replace('_', ' ', $this->material_type)));
         return $this->render_admin($args, $tpl);
     } else {
         throw new Exception('Access  denied', 403);
     }
 }