示例#1
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;
 }
示例#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);
     }
 }
示例#3
0
 protected function loadResources()
 {
     $db = Knowledgeroot_Registry::get('db');
     // load pages
     $pages = $db->fetchAll('SELECT id FROM page WHERE deleted=' . Knowledgeroot_Db::false());
     foreach ($pages as $key => $value) {
         $this->addResource(new Zend_Acl_Resource('P_' . $value['id']));
     }
     // load contents
     $content = $db->fetchAll('SELECT id FROM content WHERE deleted=' . Knowledgeroot_Db::false());
     foreach ($content as $key => $value) {
         $this->addResource(new Zend_Acl_Resource('C_' . $value['id']));
     }
     // load files
     $files = $db->fetchAll('SELECT id FROM ' . $db->quoteIdentifier('file') . ' WHERE deleted=' . Knowledgeroot_Db::false());
     foreach ($files as $key => $value) {
         $this->addResource(new Zend_Acl_Resource('F_' . $value['id']));
     }
 }
示例#4
0
 /**
  * get all groups as Knowledgeroot_Group object
  *
  * return $array
  */
 public static function getGroups()
 {
     $ret = array();
     $group = new Knowledgeroot_Db_Group();
     $select = $group->select();
     $select->where('deleted = ' . Knowledgeroot_Db::false());
     $rows = $group->fetchAll($select);
     foreach ($rows as $value) {
         $ret[] = new Knowledgeroot_Group($value->id);
     }
     return $ret;
 }
示例#5
0
 /**
  * get all contents on this page as Knowledgeroot_Content object
  *
  * @param object $page Knowledgeroot_Page object
  * @param string $sorting column to sort by also with ASC|DESC
  * return $array
  */
 public static function getContents(Knowledgeroot_Page $page, $sorting = 'sorting')
 {
     $ret = array();
     // get acl
     $acl = Knowledgeroot_Registry::get('acl');
     $content = new Knowledgeroot_Db_Content();
     $select = $content->select();
     $select->where('parent = ?', $page->getId());
     $select->where('deleted = ' . Knowledgeroot_Db::false());
     $select->order($sorting);
     $rows = $content->fetchAll($select);
     foreach ($rows as $value) {
         if ($acl->iAmAllowed('content_' . $value->id, 'show')) {
             $ret[] = new Knowledgeroot_Content($value->id);
         }
     }
     return $ret;
 }
示例#6
0
 /**
  * get all users as Knowledgeroot_User object
  *
  * return $array
  */
 public static function getUsers()
 {
     $ret = array();
     $content = new Knowledgeroot_Db_User();
     $select = $content->select();
     $select->where('deleted = ' . Knowledgeroot_Db::false());
     $rows = $content->fetchAll($select);
     foreach ($rows as $value) {
         $ret[] = new Knowledgeroot_User($value->id);
     }
     return $ret;
 }
示例#7
0
 /**
  * get all pages on this page as Knowledgeroot_Page object
  *
  * return $array
  */
 public static function getPages(Knowledgeroot_Page $parentPage = null)
 {
     $ret = array();
     // get acl
     $acl = Knowledgeroot_Registry::get('acl');
     $page = new Knowledgeroot_Db_Page();
     $select = $page->select();
     //$select->where('parent = ?', $parentPage->getId());
     $select->where('deleted = ' . Knowledgeroot_Db::false());
     $rows = $page->fetchAll($select);
     foreach ($rows as $value) {
         if ($acl->iAmAllowed('page_' . $value->id, 'show')) {
             $ret[] = new Knowledgeroot_Page($value->id);
         }
     }
     return $ret;
 }
示例#8
0
 public static function getFiles(Knowledgeroot_Content $content = null)
 {
     $ret = array();
     $file = new Knowledgeroot_Db_File();
     $select = $file->select();
     $select->where('parent = ?', $content->getId());
     $select->where('deleted = ' . Knowledgeroot_Db::false());
     $rows = $file->fetchAll($select);
     foreach ($rows as $value) {
         $ret[] = new Knowledgeroot_File($value->id);
     }
     return $ret;
 }