public function edit($nNavigationMenuId, $aData) { $oModelNavigationResource = new Admin_Model_NavigationResource(); $oModelNavigationOption = new Admin_Model_NavigationOption(); $oGenereteSessionId = new AppCms2_GenereteSessionId(); try { $this->_db->beginTransaction(); $oRow = $this->find($nNavigationMenuId)->current(); if ($oRow instanceof Zend_Db_Table_Row_Abstract) { $oRow->label = $aData["label"]; $oRow->desc = $aData["desc"]; $oRow->image_id = $aData["image_id"]; $oRow->visible = $aData["visible"]; if ($oRow->save()) { $aGenereteSessionId = $oGenereteSessionId->generatePassword(); $sNavigationResource = "menu_resource_{$aData["navigation_module_id"]}_{$aData["navigation_controller_id"]}_{$aData["navigation_action_id"]}_{$aGenereteSessionId["user_password"]}"; $nNavigationResourceId = $oModelNavigationResource->add($sNavigationResource); if (isset($nNavigationResourceId)) { $aData["navigation_resource_id"] = $nNavigationResourceId; $nNavigationOptionId = $oRow->navigation_option_id; if ($oModelNavigationOption->edit($nNavigationOptionId, $aData)) { $this->_db->commit(); return $nNavigationOptionId; } } } } $this->_db->rollBack(); return null; } catch (Zend_Exception $e) { $this->_db->rollBack(); return null; } }
public function __construct($options = null) { $oModelNavigationModule = new Admin_Model_NavigationModule(); $oModelNavigationController = new Admin_Model_NavigationController(); $oModelNavigationAction = new Admin_Model_NavigationAction(); $oModelNavigationResource = new Admin_Model_NavigationResource(); $oModelNavigationPrivilege = new Admin_Model_NavigationPrivilege(); $oModelUserRole = new Admin_Model_UserRole(); $aAllModule = $oModelNavigationModule->getAll()->toArray(); if (count($aAllModule)) { foreach ($aAllModule as $aValue) { $this->_aAllModule[$aValue["id"]] = $aValue["value"]; } } $aAllController = $oModelNavigationController->getAll()->toArray(); if (count($aAllController)) { foreach ($aAllController as $aValue) { $this->_aAllController[$aValue["id"]] = $aValue["value"]; } } $aAllAction = $oModelNavigationAction->getAll()->toArray(); if (count($aAllAction)) { foreach ($aAllAction as $aValue) { $this->_aAllAction[$aValue["id"]] = $aValue["value"]; } } $aAllRosource = $oModelNavigationResource->getAll()->toArray(); if (count($aAllRosource)) { foreach ($aAllRosource as $aValue) { $this->_aAllResource[$aValue["id"]] = $aValue["value"]; } } $aAllPriviage = $oModelNavigationPrivilege->getAll()->toArray(); if (count($aAllPriviage)) { foreach ($aAllPriviage as $aValue) { $this->_aAllPrivilege[$aValue["id"]] = $aValue["value"]; } } $aAllUserRole = $oModelUserRole->getAll()->toArray(); if (count($aAllUserRole)) { foreach ($aAllUserRole as $aValue) { $this->_aAllUserRole[$aValue["id"]] = $aValue["role_name"]; } } $oModelImage = new Admin_Model_Image(); $aImage = $oModelImage->getAll()->toArray(); $this->_aAllImage[0] = "-"; if (count($aImage)) { foreach ($aImage as $nKey => $aValue) { $this->_aAllImage[$aValue["id"]] = $aValue["user_name"]; } } $this->getSiteLayout(); parent::__construct($options); }
public function __construct($options = null) { $oModelVNavigationSubmenu = new Admin_Model_VNavigationSubmenu(); $oModelNavigationAction = new Admin_Model_NavigationAction(); $oModelNavigationResource = new Admin_Model_NavigationResource(); $oModelNavigationPrivilege = new Admin_Model_NavigationPrivilege(); $oModelUserRole = new Admin_Model_UserRole(); $aAllNavigationSubmenu = $oModelVNavigationSubmenu->getDefaultModule()->toArray(); if (count($aAllNavigationSubmenu)) { foreach ($aAllNavigationSubmenu as $aValue) { $this->_aAllNavigationSubmenu[$aValue["id"]] = $aValue["label"] . " / " . $aValue["navigation_module"]; } } $aAllAction = $oModelNavigationAction->getAll()->toArray(); if (count($aAllAction)) { foreach ($aAllAction as $aValue) { $this->_aAllAction[$aValue["id"]] = $aValue["value"]; } } $aAllRosource = $oModelNavigationResource->getAll()->toArray(); if (count($aAllRosource)) { foreach ($aAllRosource as $aValue) { $this->_aAllResource[$aValue["id"]] = $aValue["value"]; } } $aAllPriviage = $oModelNavigationPrivilege->getAll()->toArray(); if (count($aAllPriviage)) { foreach ($aAllPriviage as $aValue) { $this->_aAllPrivilege[$aValue["id"]] = $aValue["value"]; } } $aAllUserRole = $oModelUserRole->getAll()->toArray(); if (count($aAllUserRole)) { foreach ($aAllUserRole as $aValue) { $this->_aAllUserRole[$aValue["id"]] = $aValue["role_name"]; } } $this->_sClassName = get_class(); $this->getSiteLayout(); parent::__construct($options); }
public function menuAction() { $oModelNavigationResource = new Admin_Model_NavigationResource(); $oModelNavigationResource->deleteNotUse(); $oFormNavigationMenu = new Admin_Form_NavigationMenu(); $oModelNavigationModule = new Admin_Model_NavigationModule(); $oModelNavigationMenu = new Admin_Model_NavigationMenu(); $oModelNavigationOptionUserRole = new Admin_Model_NavigationOptionUserRole(); $oModelVSiteLayout = new Admin_Model_VSiteLayout(); $oModelSite = new Admin_Model_Site(); $oSite = new AppCms2_Controller_Plugin_FormLayoutAbstract(); if ($this->_request->isPost()) { $aPostData = $this->_request->getPost(); if ($oFormNavigationMenu->isValid($aPostData)) { $nNavigationMenuId = (int) $aPostData["navigation_menu_edit_id"]; $aUserRole = $aPostData["user_role"]; $aPostData["image_id"] = $aPostData["image_id"] != "0" ? $aPostData["image_id"] : null; if ($nNavigationMenuId != 0) { $nNavigationOptionId = $oModelNavigationMenu->edit($nNavigationMenuId, $aPostData); $oModelNavigationOptionUserRole->deleteUserRole($nNavigationOptionId); if (isset($aUserRole) && isset($nNavigationOptionId)) { foreach ($aUserRole as $nRoleId) { $oModelNavigationOptionUserRole->add($nNavigationOptionId, $nRoleId); } } $sLayoutName = $oModelVSiteLayout->getSiteLayoutId($nNavigationMenuId)->layout_name; if ((int) $aPostData["navigation_module_id"] == 2 && $sLayoutName != $aPostData["layout_name"]) { $aPostData["menu_id"] = $nNavigationMenuId; $sClassName = $oSite->getClassName($aPostData["layout_name"]); if (isset($sClassName)) { $oObjectReflection = new ReflectionClass($sClassName); $oFormInstance = $oObjectReflection->newInstanceArgs(); $aSiteFileds = $oFormInstance->getSiteFields(); $oModelSite->newSite($aPostData, $aSiteFileds); } } $oFormNavigationMenu->clearForm(); } else { $nNavigationOptionId = $oModelNavigationMenu->add($aPostData); if (isset($aUserRole) && isset($nNavigationOptionId)) { foreach ($aUserRole as $nRoleId) { $oModelNavigationOptionUserRole->add($nNavigationOptionId, $nRoleId); } } if ((int) $aPostData["navigation_module_id"] == 2) { $nNavigationMenuId = $oModelNavigationMenu->findMenuId($nNavigationOptionId); $aPostData["menu_id"] = $nNavigationMenuId; $sClassName = $oSite->getClassName($aPostData["layout_name"]); if (isset($sClassName)) { $oObjectReflection = new ReflectionClass($sClassName); $oFormInstance = $oObjectReflection->newInstanceArgs(); $aSiteFileds = $oFormInstance->getSiteFields(); $oModelSite->newSite($aPostData, $aSiteFileds); } } $oFormNavigationMenu->clearForm(); } } } $aAllModule = $oModelNavigationModule->getAll()->toArray(); if (count($aAllModule)) { foreach ($aAllModule as $aValue) { $aNavigation[$aValue["value"]] = $this->prepareNavigation($aValue["value"]); } } $this->view->oFormNavigationElement = $oFormNavigationMenu; $this->view->aNavigation = $aNavigation; }