Ejemplo n.º 1
0
 public function loadResources()
 {
     // Co the luu cache bien $this->resourceList de xu ly tot hon
     $cache = Zend_Registry::get('cache');
     if ($this->resourceList = $cache->load(md5('resources_list'))) {
         return;
     }
     $front = Zend_Controller_Front::getInstance();
     $ctlPaths = $front->getControllerDirectory();
     //set the path to all of the modules
     foreach ($ctlPaths as $module => $path) {
         if ($module != 'public' && $module != 'front') {
             //clear the resource list items
             $resourceListItems = null;
             //load the module resource
             $this->add(new Zend_Acl_Resource($module));
             $module_acl = new Model_ModuleAcls($module);
             $xml = $module_acl->toXml();
             if (empty($xml)) {
                 continue;
             }
             $controllers = $xml->children();
             foreach ($controllers as $controller) {
                 $controllerName = (string) $controller->attributes()->name;
                 $controllerActions = $controller->children();
                 if (count($controllerActions) > 0) {
                     foreach ($controllerActions as $action) {
                         //load each action separately
                         $actionName = (string) $action;
                         $key = $module . '_' . $controllerName . '_' . $actionName;
                         $this->add(new Zend_Acl_Resource($key), $module);
                         //add the action to the public resource list
                         $resourceListItems[$controllerName][] = $actionName;
                     }
                 } else {
                     //set the resource at the controller level
                     $key = $module . '_' . $controllerName;
                     $this->add(new Zend_Acl_Resource($key), $module);
                     //add the controller to the public resource list
                     $resourceListItems[$controllerName] = null;
                 }
             }
             $this->resourceList[$module] = $resourceListItems;
         }
     }
     $cache->save($this->resourceList, md5('resources_list'));
 }
Ejemplo n.º 2
0
 public function loadElementPathAction()
 {
     $front = Zend_Controller_Front::getInstance();
     $ctlPaths = $front->getControllerDirectory();
     $objElements = new Model_Elements();
     //set the path to all of the modules
     foreach ($ctlPaths as $module => $path) {
         $module_acl = new Model_ModuleAcls($module);
         $xml = $module_acl->toXml();
         if (empty($xml)) {
             continue;
         }
         $controllers = $xml->children();
         foreach ($controllers as $controller) {
             $controllerName = (string) $controller->attributes()->name;
             $controllerActions = $controller->children();
             if (count($controllerActions) > 0) {
                 foreach ($controllerActions as $action) {
                     //load each action separately
                     $actionName = (string) $action;
                     $key = $module . '_' . $controllerName . '_' . $actionName;
                     $path = '/' . $module . '/' . $controllerName . '/' . $actionName;
                     $arr = array('module_name' => $module, 'key' => $key, 'alias_path' => $path, 'role' => Model_user::SUPERUSER_ROLE, 'created_day' => time(), 'active' => 1);
                     $objElements->insert($arr);
                 }
             } else {
                 $key = $module . '_' . $controllerName;
                 $path = '/' . $module . '/' . $controllerName;
                 $arr = array('module_name' => $module, 'key' => $key, 'alias_path' => $path, 'role' => MOdel_User::SUPERUSER_ROLE, 'created_day' => time(), 'active' => 1);
                 $objElements->insert($arr);
             }
         }
     }
     echo "<pre>";
     print_r('Updated successfully !!');
     echo "</pre>";
     exit;
 }