/**
  * Sync action for resource controller
  */
 public function syncAction()
 {
     $translate = Zend_Registry::get('Zend_Translate');
     try {
         $mdlResource = new Acl_Model_Resource();
         $registeredList = $mdlResource->getRegisteredList();
         #print_r($registeredList);
         #die();
         $resourcesAvailable = array();
         $sxe = new SimpleXMLElement(APPLICATION_PATH . '/../.zfproject.xml', null, true);
         foreach ($sxe->projectDirectory->applicationDirectory->modulesDirectory->moduleDirectory as $module) {
             #echo "<h1>Modulo:".$module['moduleName']."</h1>";
             foreach ($module->controllersDirectory->controllerFile as $controller) {
                 #echo "<h2>controlador: ".$controller['controllerName']."<h2>";
                 foreach ($controller->actionMethod as $action) {
                     #echo "<h3>action: ".$action['actionName']."<h3>";
                     $resourcesAvailable[] = $module['moduleName'] . '-' . $controller['controllerName'] . '-' . $action['actionName'];
                 }
             }
         }
         foreach ($resourcesAvailable as $rsa) {
             $isRegistered = false;
             foreach ($registeredList as $rsRegistered) {
                 $rsTemp = $rsRegistered->module . '-' . $rsRegistered->controller . '-' . $rsRegistered->actioncontroller;
                 if (strcasecmp($rsa, $rsTemp) == 0) {
                     $isRegistered = true;
                 }
             }
             if (!$isRegistered) {
                 $arrResource = explode('-', $rsa);
                 $resource = $mdlResource->createRow();
                 $resource->module = $arrResource[0];
                 $resource->controller = $arrResource[1];
                 $resource->actioncontroller = $arrResource[2];
                 $resource->save();
             }
         }
         /* @var $cache Zend_Cache_Backend_File */
         $cache = Zend_Registry::get('cacheACL');
         $mdlRole = new Acl_Model_Role();
         $roles = $mdlRole->getRoles();
         foreach ($roles as $role) {
             if ($cache->test('cacheACL_' . $role->id)) {
                 $cache->remove('cacheACL_' . $role->id);
             }
         }
         $this->_helper->flashMessenger->addMessage(array('type' => 'info', 'header' => '', 'message' => $translate->translate("ACL_RESOURCES_SYNCD")));
         return $this->_helper->redirector("list", "resource", "acl");
     } catch (Exception $e) {
         $this->_helper->flashMessenger->addMessage(array('type' => 'error', 'header' => '', 'message' => $e->getMessage()));
         return $this->_helper->redirector("list", "resource", "acl");
     }
     return;
 }