示例#1
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']));
     }
 }
示例#2
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;
 }
示例#3
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;
 }
示例#4
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;
 }
示例#5
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;
 }
示例#6
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;
 }