Пример #1
0
 public function setModuleEntity(eModule $eModule)
 {
     if ($eModule->isEmpty()) {
         return;
     }
     if (!empty($eModule->id)) {
         $this->id_module = $eModule->id;
     }
     if (!empty($eModule->id_parent)) {
         $this->id_parent_module = $eModule->id_parent;
     }
     $this->name = $eModule->name;
     $this->name_key = $eModule->name_key;
     $this->description = $eModule->description;
 }
 function listModulesByRol($id_rol, $id_parent = NULL)
 {
     $select_module = $this->buildSelectFields('m_', 'm', 'module');
     $sql = "\r\n            SELECT \r\n                " . $select_module . "\r\n            FROM \"" . $this->table . "\" AS \"rm\"\r\n                INNER JOIN \"rol\" AS \"r\" ON \"r\".\"id\" = \"rm\".\"id_rol\" \r\n                INNER JOIN \"module\" AS \"m\" ON \"m\".\"id\" = \"rm\".\"id_module\" \r\n            WHERE 1=1\r\n                AND \"r\".\"id\" =  ?\r\n                " . (is_null($id_parent) ? " AND \"m\".\"id_parent\" IS NULL " : " AND \"m\".id_parent = " . $id_parent) . "\r\n            ORDER BY \"m\".\"num_order\" ASC\r\n        ";
     //Helper_Log::write($sql);
     $query = $this->db->query($sql, array($id_rol));
     if ($query === FALSE) {
         Helper_Log::write($this->messageError(__FUNCTION__, FALSE), Helper_Log::LOG_DB);
         throw new Exception("Problema ejecución en Base de Datos, ver log de errores. Consulte con Sistemas");
     }
     $rows = $query->result_array();
     $eModules = array();
     if (!empty($rows)) {
         foreach ($rows as $row) {
             $eModule = new eModule();
             $eModule->parseRow($row, 'm_');
             $eModules[] = $eModule;
         }
     }
     return $eModules;
 }
Пример #3
0
 function listModules($id_parent = NULL, $ORDER_BY = self::ORDER_BY_ORDER, $withIsAdmin = FALSE, $isActive = NULL)
 {
     $where = array('id_parent' => $id_parent);
     if (!$withIsAdmin) {
         $where['isAdmin'] = 0;
     }
     if (!is_null($isActive)) {
         $where['isActive'] = $isActive;
     }
     $this->db->order_by($ORDER_BY == self::ORDER_BY_NAME ? 'name' : "num_order", "asc");
     $query = $this->db->get_where($this->table, $where);
     if ($query === FALSE) {
         Helper_Log::write($this->messageError(__FUNCTION__, FALSE), Helper_Log::LOG_DB);
         throw new Exception("Problema ejecución en Base de Datos, ver log de errores. Consulte con Sistemas");
     }
     $rows = $query->result_array();
     $eModules = array();
     if (!empty($rows)) {
         foreach ($rows as $row) {
             $eModule = new eModule();
             $eModule->parseRow($row);
             $eModules[] = $eModule;
         }
     }
     return $eModules;
 }