Ejemplo n.º 1
0
 protected function loadRoles()
 {
     $db = Knowledgeroot_Registry::get('db');
     // fetch all groups
     $rows = $db->fetchAll('SELECT id FROM ' . $db->quoteIdentifier('group') . ' WHERE active=' . Knowledgeroot_Db::true() . ' AND deleted=' . Knowledgeroot_Db::false());
     foreach ($rows as $key => $value) {
         $this->addRole(new Zend_Acl_Role('G_' . $value['id']));
     }
     // fetch all group and create group members
     $rows = $db->fetchAll('SELECT id FROM ' . $db->quoteIdentifier('group') . ' WHERE active=' . Knowledgeroot_Db::true() . ' AND deleted=' . Knowledgeroot_Db::false());
     foreach ($rows as $key => $value) {
         $parents = array('G_' . $value['id']);
         $gm = $db->fetchAll("SELECT group_id FROM group_member WHERE member_id=? AND member_type='group'", array($value['id']));
         foreach ($gm as $mKey => $mValue) {
             $parents[] = 'G_' . $mValue['group_id'];
         }
         $this->addRole(new Zend_Acl_Role('GM_' . $value['id']), $parents);
     }
     // fetch all users and set parent
     $rows = $db->fetchAll('SELECT id FROM ' . $db->quoteIdentifier('user') . ' WHERE active=' . Knowledgeroot_Db::true() . ' AND deleted=' . Knowledgeroot_Db::false());
     foreach ($rows as $key => $value) {
         $parents = array();
         $gm = $db->fetchAll("SELECT group_id FROM group_member WHERE member_id=? AND member_type='user'", array($value['id']));
         foreach ($gm as $mKey => $mValue) {
             $parents[] = 'GM_' . $mValue['group_id'];
         }
         $this->addRole(new Zend_Acl_Role('U_' . $value['id']), $parents);
     }
 }
Ejemplo n.º 2
0
 public function delete($id = null, $markOnly = true)
 {
     if ($id == null) {
         $id = $this->id;
     }
     $user = new Knowledgeroot_Db_Tag();
     if ($markOnly == true) {
         $data = array('deleted' => Knowledgeroot_Db::true());
         $user->update($data, 'id = ' . $id);
     } else {
         $user->delete('id = ' . $id);
     }
 }
Ejemplo n.º 3
0
 public function isValid()
 {
     // get db class
     $db = Knowledgeroot_Registry::get('db');
     // get user from db
     $user = $db->fetchRow("SELECT id, password FROM " . $db->quoteIdentifier('user') . " WHERE login=? AND active=?", array($this->username, Knowledgeroot_Db::true()));
     // check password hashes
     if ($user && Knowledgeroot_Password::verify($this->password, $user['password'])) {
         $this->isValid = true;
         return true;
     }
     return false;
 }