public function index() { $lectures = new lectures(ConnectionFactory::get('mongo')); $this->view['lectures'] = $lectures->getNew(); if (is_string($this->view['lectures'])) { return Error::set($this->view['lectures']); } $this->view['valid'] = true; Layout::set('title', 'Lectures'); }
public function index($arguments) { Layout::set('title', 'Search'); if (empty($_POST['query'])) { return Error::set('No search query found.'); } $query = substr(trim(htmlentities($_POST['query'], ENT_QUOTES, 'ISO8859-1', false)), 0, 250); $results = Search::query($query); if ($results['hits']['total'] == 0) { return Error::set('No results found.'); } $this->view['results'] = array(); $news = new news(ConnectionFactory::get('mongo')); $articles = new articles(ConnectionFactory::get('mongo')); $lectures = new lectures(ConnectionFactory::get('mongo')); $i = 1; if (empty($results['hits']['hits'])) { return; } foreach ($results['hits']['hits'] as $result) { $entry = $result['_source']; switch ($entry['type']) { case 'news': $post = $news->get($result['_id'], false, true); if (empty($post)) { continue; } $post['type'] = 'news'; array_push($this->view['results'], $post); break; case 'article': $article = $articles->get($result['_id'], false, true); if (empty($article)) { continue; } $article['type'] = 'article'; array_push($this->view['results'], $article); break; case 'lecture': $lecture = $lectures->get($result['_id'], false, true); if (empty($lecture)) { continue; } $lecture['type'] = 'lecture'; array_push($this->view['results'], $lecture); break; } if ($i == 5) { break; } ++$i; } }
public function view($arguments) { // Read if (empty($arguments[0])) { return Error::set('Username is required.'); } if (!empty($arguments[1])) { $page = (int) array_pop($arguments); if ($page < 1) { $this->view['commentPage'] = 1; } else { $this->view['commentPage'] = $page; } } else { $this->view['commentPage'] = 1; } $this->view['commentPageLoc'] = 'user/view/' . $arguments[0] . '/'; $username = $arguments[0]; $users = new users(ConnectionFactory::get('mongo')); $userInfo = $users->get($username); if (empty($userInfo)) { return Error::set('User not found.'); } $irc = new irc(ConnectionFactory::get('redis')); $articles = new articles(ConnectionFactory::get('mongo')); $lectures = new lectures(ConnectionFactory::get('mongo')); $github = new github(ConnectionFactory::get('redis')); $this->view['valid'] = true; $this->view['username'] = $username; $this->view['user'] = $userInfo; $this->view['onIrc'] = $irc->isOnline($username); $this->view['onSite'] = apc_exists(Cache::PREFIX . 'user_' . $username); $this->view['articles'] = $articles->getForUser($this->view['user']['_id']); $this->view['lectures'] = $lectures->getForUser($username); $this->view['github'] = $github->get($userInfo['_id']); Layout::set('title', $username . '\'s profile'); }