Open sidebar
<?php namespace Codeboard\Http\Controllers; use Codeboard\Articles\ArticleListener; use Codeboard\Articles\PostArticle; use Codeboard\Articles\Repository\ArticleRepository; use Codeboard\Articles\UpdateArticle; use Codeboard\Http\Requests\PostArticleRequest; use Codeboard\Http\Requests\UpdateArticleRequest; use Illuminate\Routing\Controller; class ArticlesController extends Controller implements ArticleListener { /** * @var \Codeboard\Articles\Repository\ArticleEloquentRepository */ private $articleRepo; /** * @param ArticleRepository $articleRepo */ function __construct(ArticleRepository $articleRepo) { $this->articleRepo = $articleRepo; } /** * @return \Illuminate\View\View */ public function index() { $articles = $this->articleRepo->all(); return view(frontendView('articles.index'), compact('articles')); } /** * @return \Illuminate\View\View */ public function create() { return view(backendView('articles.create')); } /** * @param PostArticleRequest $request * @param PostArticle $article * @return mixed */ public function store(PostArticleRequest $request, PostArticle $article) { return $article->execute($request->all(), $this); } /** * @param $slug * @return \Illuminate\View\View */ public function show($slug) { $article = $this->articleRepo->findBySlug($slug); return view(frontendView('articles.show'), compact('article')); } /** * @param $articleId * @return \Illuminate\View\View */ public function edit($articleId) { $article = $this->articleRepo->findById($articleId); return view(backendView('articles.edit'), compact('article')); } /** * @param $articleId * @param UpdateArticleRequest $request * @param UpdateArticle $article * @return mixed */ public function update($articleId, UpdateArticleRequest $request, UpdateArticle $article) { return $article->execute($articleId, $request->all(), $this); } /** * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector */ public function articleRedirect() { return redirect('/blog'); } }
Close sidebar
Back
Please note that all pasted data is publicly available.
Twitter
GitHub
Use setting
Back
Please note that all pasted data is publicly available.
Twitter
GitHub
Use setting