コード例 #1
0
ファイル: Index.php プロジェクト: prepare4battle/Ilch-2.0
 public function indexAction()
 {
     $userMapper = new UserMapper();
     $forumMapper = new ForumMapper();
     $visitMapper = new StatisticMapper();
     $staticsMapper = new ForumStaticsMapper();
     $forumItems = $forumMapper->getForumItemsByParent(1, 0);
     $allOnlineUsers = $visitMapper->getVisitsCountOnline();
     $usersOnline = $visitMapper->getVisitsOnlineUser();
     $userId = null;
     $groupIds = array(0);
     if ($this->getUser()) {
         $userId = $this->getUser()->getId();
         $user = $userMapper->getUserById($userId);
         $groupIds = array();
         foreach ($user->getGroups() as $groups) {
             $groupIds[] = $groups->getId();
         }
     }
     $groupIdsArray = explode(',', implode(',', $groupIds));
     $this->getLayout()->getHmenu()->add($this->getTranslator()->trans('forum'), array('action' => 'index'));
     $this->getLayout()->set('metaTitle', $this->getTranslator()->trans('forumOverview'));
     $this->getLayout()->set('metaDescription', $this->getTranslator()->trans('forumOverview'));
     $this->getView()->set('groupIdsArray', $groupIdsArray);
     $this->getView()->set('forumItems', $forumItems);
     $this->getView()->set('forumMapper', $forumMapper);
     $this->getView()->set('usersOnline', count($usersOnline));
     $this->getView()->set('guestOnline', $allOnlineUsers - count($usersOnline));
     $this->getView()->set('forumStatics', $staticsMapper->getForumStatistics());
 }
コード例 #2
0
ファイル: Showcat.php プロジェクト: prepare4battle/Ilch-2.0
 public function indexAction()
 {
     $catId = (int) $this->getRequest()->getParam('id');
     $forumMapper = new ForumMapper();
     $forumItems = $forumMapper->getForumItemsByParent(1, $catId);
     $cat = $forumMapper->getForumById($catId);
     $this->getLayout()->getHmenu()->add($this->getTranslator()->trans('forum'), array('controller' => 'index', 'action' => 'index'))->add($cat->getTitle(), array('controller' => 'showcat', 'action' => 'index', 'id' => $cat->getId()));
     $this->getLayout()->set('metaTitle', $this->getTranslator()->trans('forumOverview'));
     $this->getLayout()->set('metaDescription', $this->getTranslator()->trans('forumOverview'));
     $this->getView()->set('forumItems', $forumItems);
     $this->getView()->set('forumMapper', $forumMapper);
     $this->getView()->set('cat', $cat);
     $userMapper = new UserMapper();
     $userId = null;
     if ($this->getUser()) {
         $userId = $this->getUser()->getId();
     }
     $user = $userMapper->getUserById($userId);
     $ids = array(0);
     if ($user) {
         $ids = array();
         foreach ($user->getGroups() as $us) {
             $ids[] = $us->getId();
         }
     }
     $readAccess = explode(',', implode(',', $ids));
     $this->getView()->set('readAccess', $readAccess);
 }
コード例 #3
0
ファイル: Index.php プロジェクト: prepare4battle/Ilch-2.0
 public function indexAction()
 {
     $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('forum'), array('action' => 'index'));
     $forumMapper = new ForumMapper();
     $userGroupMapper = new UserGroupMapper();
     /*
      * Saves the item tree to database.
      */
     if ($this->getRequest()->isPost()) {
         if ($this->getRequest()->getPost('save')) {
             $sortItems = json_decode($this->getRequest()->getPost('hiddenMenu'));
             $items = $this->getRequest()->getPost('items');
             $oldItems = $forumMapper->getForumItems(1);
             /*
              * Deletes old entries from database.
              */
             if (!empty($oldItems)) {
                 foreach ($oldItems as $oldItem) {
                     if (!isset($items[$oldItem->getId()])) {
                         $forumMapper->deleteItem($oldItem);
                     }
                 }
             }
             if ($items) {
                 $sortArray = array();
                 foreach ($sortItems as $sortItem) {
                     if ($sortItem->item_id !== null) {
                         $sortArray[$sortItem->item_id] = (int) $sortItem->parent_id;
                     }
                 }
                 foreach ($items as $item) {
                     $forumItem = new \Modules\Forum\Models\ForumItem();
                     if (strpos($item['id'], 'tmp_') !== false) {
                         $tmpId = str_replace('tmp_', '', $item['id']);
                     } else {
                         $forumItem->setId($item['id']);
                     }
                     $forumItem->setForumId(1);
                     $forumItem->setType($item['type']);
                     $forumItem->setTitle($item['title']);
                     $forumItem->setDesc($item['desc']);
                     $forumItem->setReadAccess($item['readAccess']);
                     $forumItem->setReplayAccess($item['replayAccess']);
                     $forumItem->setCreateAccess($item['createAccess']);
                     $newId = $forumMapper->saveItem($forumItem);
                     if (isset($tmpId)) {
                         foreach ($sortArray as $id => $parentId) {
                             if ($id == $tmpId) {
                                 unset($sortArray[$id]);
                                 $sortArray[$newId] = $parentId;
                             }
                             if ($parentId == $tmpId) {
                                 $sortArray[$id] = $newId;
                             }
                         }
                     }
                 }
                 $sort = 0;
                 foreach ($sortArray as $id => $parent) {
                     $forumItem = new \Modules\Forum\Models\ForumItem();
                     $forumItem->setId($id);
                     $forumItem->setSort($sort);
                     $forumItem->setParentId($parent);
                     $forumMapper->saveItem($forumItem);
                     $sort += 10;
                 }
             }
         }
         $this->addMessage('saveSuccess');
         $this->redirect(array('action' => 'index'));
     }
     $forumItems = $forumMapper->getForumItemsByParent(1, 0);
     $this->getView()->set('forumItems', $forumItems);
     $this->getView()->set('forumMapper', $forumMapper);
     $userGroupList = $userGroupMapper->getGroupList();
     $this->getView()->set('userGroupList', $userGroupList);
 }