/** * Sets variables for view of "Úvod" page */ public function renderDefault() { $template = $this->template; $template->chronicle = $this->events->getNewestChronicle(); $template->news = $this->news->getNewest(4); $template->leader = $this->members->getLeader(); }
/** * Processing of News editing form * * @Privilege('create', 'edit') * * @param $button */ public function editNewsFormSucceded($button) { $values = $button->form->getValues(TRUE); $values['posted'] = new \DateTime(); if ($this->user->isAllowed('Admin:Default:News', 'show')) { // User can choose $values['show'] = $values['show'] ? 1 : 0; //translate TRUE/FALSE to 1/0 } else { $values['show'] = 0; //default value } if ($values['id']) { //update $this->loadItem($values['id'])->update($values); $this->flashMessage('Aktualita byla úspěšně upravena'); } else { //insert if (empty($values['event_id'])) { $values['event_id'] = NULL; } $this->news->insert($values); $this->flashMessage('Aktualita byla úspěšně přidána'); } $this->redirect('default'); }
/** * action - Удаление новости по id */ protected function actionDelete() { $art = News::findById((int) $_GET['id']); $art->delete(); header('Location: /../index.php?ctrl=AdminPanel'); exit(0); }
public function listen() { $routing = new BaseRoute(); $routing->get('/', ['controller' => 'main', 'action' => 'index']); $routing->get('/article', ['controller' => 'main', 'action' => 'article']); $routing->post('/admin/edit/news', ['controller' => 'admin', 'action' => 'editNews']); $routing->get('/admin/edit/news', ['controller' => 'admin', 'action' => 'editNews']); $routing->get('/admin/delete/news', ['controller' => 'admin', 'action' => 'deleteNews']); //тесты $routing->get('/test/each', function () { $model = \Models\News::find()->queryEach(); foreach ($model as $root) { echo $root->id . "<br>"; } }); //так как учебный пример, можно и в роуте $routing->get('/admin/test', function () { $user = User::findOne('id = 1'); $news = News::findOne('id = 1'); $data = new AdminDataTable([$user, $news], [function ($model) { return $model->id + 1; }, function ($model) { if ($model->name) { return $model->name; } return "(no name)"; }]); echo $data->render(); }); $routing->listen(); }
/** * 保存数据进数据库 * @param $data * @author Mr.Cong <*****@*****.**> */ public function saveData($data) { DB::table('news')->truncate(); foreach ($data['items'] as $key => $item) { $News = new News(); $News->title = $item->get_title(); $News->tag = $this->tag; $News->link = $item->get_link(); $News->description = html_entity_decode($item->get_description(), ENT_COMPAT); $News->category = $item->get_category()->get_term(); $News->author = $item->get_author()->get_name(); $News->pubDate = strtotime($item->get_date()); $News->content = html_entity_decode($item->get_content(), ENT_COMPAT); $News->save(); } writeLog('Save data to database.'); }
public function save($model) { if ($this->validate()) { $params = $model; if ($model === null) { $model = new News(); } $model->title = $this->form_title; $model->text = $this->form_text; $this->_id = $model->save(); if (null !== $params) { $this->_id = $model->id; } return true; } return false; }
protected function DeleteNewsAction() { if (isset($_GET['id']) && is_numeric($_GET['id'])) { $news = News::findById($_GET['id']); if ($news) { $news->delete(); } } $this->redirect('/'); }
public function news($section, $newsId) { $news = News::findById($newsId); if (is_null($news)) { App::abort(404, 'Noticia no encontrada'); } $related = News::query()->where('section', '=', $news->section)->limit(0, 2)->get(); $user = User::get(); $comments = Comment::query()->where('newsId', '=', $newsId)->get(); return $this->base('news/news.t', array('comments' => $comments, 'user' => $user, 'news' => $news, 'related' => $related)); }
protected function ArticleAction() { if (isset($_GET['id']) && is_numeric($_GET['id'])) { $model = News::findById($_GET['id']); if ($model) { $this->view->model = $model; $this->view->display("article"); } else { throw new E404Exception("статья еще не написана"); } } }
public function showAction($id = null, $slug = null) { $id = $this->filter->sanitize($id, "int"); $images = array(); $model = \Models\News::findFirst(array("conditions" => "id = ?1", "bind" => array(1 => "{$id}"))); $images = $model->getImages(); $user = $model->owner; Tag::setTitle($model->title); $this->view->setVar('model', $model); $this->view->setVar('images', $images); $this->view->setVar('user', $user); }
/** * 显示内容 * @param $name * @param $id * @return mixed * @author Mr.Cong <*****@*****.**> */ public function show($name, $id) { /* * 开始查询数据 */ switch ($name) { case 'forums': $post = Forums::find($id); break; case 'news': $post = News::find($id); break; default: break; } return view('show')->with('post', $post)->with('name', $name); }
/** * 显示内容 * @param $name * @param $id * @return mixed * @author Mr.Cong <*****@*****.**> */ public function show($name, $id) { /* * 开始查询数据 */ switch ($name) { case 'forums': $post = Forums::find($id); $post = $post->content = body_replace_with_forums_by_json($post->content); break; case 'news': $post = News::find($id); break; default: break; } return Response::json($post); }
public function section($section) { $news = News::query()->where('section', '=', $section)->orderBy('created', 'DESC')->limit(0, 6)->get(); $col1 = array(); $col2 = array(); $featured = null; foreach ($news as $idx => $model) { if (is_null($featured)) { $featured = $model; continue; } if ($idx) { if ($idx % 2) { $col1[] = $model; } else { $col2[] = $model; } } } return $this->base('home/section.t', array('section' => $section, 'featured' => $featured, 'col1' => $col1, 'col2' => $col2)); }
/** * action - Получение конкретной новости по id */ protected function actionArt() { $this->view->article = \Models\News::findById($_GET['id']); $this->view->display(__DIR__ . '/../Templates/article.php'); }
public function loadModel($id) { $model = \Models\News::findFirst("id = '{$id}'"); if ($model === null) { $this->flashSession->error("Новость не найдена"); return $this->response->redirect("backend/news/index"); } return $model; }
public function delete($newsId) { $news = News::findById($newsId); $news->delete(); Response::redirect('/admin/news'); }
public function deleteAction($id) { $news = News::findByPk($id); $news->del(); header('Location: /news/all'); }
/** * Sets variables for view of "Aktuality" page */ public function renderNews() { $template = $this->template; $template->title = "Aktuality"; $template->news = $this->news->getNewest(10); }
public function actionDetail(Request $request, Response $response) { $newsId = $request->getRequestData()['newsId']; $request->setView('site/details'); return News::getByIdOr404($newsId); }