/** * @Route("/") */ public function indexAction() { if (!App::node()->hasAccess(App::user())) { App::abort(403, __('Insufficient User Rights.')); } $query = Project::where(['date < ?'], [new \DateTime()])->orderBy('date', 'DESC'); $portfolio_text = ''; if ($this->portfolio->config('portfolio_text')) { $portfolio_text = App::content()->applyPlugins($this->portfolio->config('portfolio_text'), ['markdown' => $this->portfolio->config('markdown_enabled')]); } foreach ($projects = $query->get() as $project) { $project->intro = App::content()->applyPlugins($project->intro, ['project' => $project, 'markdown' => $project->get('markdown')]); $project->content = App::content()->applyPlugins($project->content, ['project' => $project, 'markdown' => $project->get('markdown'), 'readmore' => true]); } return ['$view' => ['title' => $this->portfolio->config('portfolio_title') ?: App::node()->title, 'name' => 'bixie/portfolio/portfolio.php'], 'tags' => Project::allTags(), 'portfolio' => $this->portfolio, 'config' => $this->portfolio->config(), 'portfolio_text' => $portfolio_text, 'projects' => $projects]; }
/** * @Route("/project/edit", name="project/edit") * @Access("portfolio: manage portfolio") * @Request({"id": "int"}) */ public function editAction($id = 0) { try { if (!($project = Project::where(compact('id'))->first())) { if ($id) { App::abort(404, __('Invalid project id.')); } $module = App::module('bixie/portfolio'); $project = Project::create(['data' => [], 'tags' => [], 'date' => new \DateTime()]); $project->set('markdown', $module->config('markdown')); } return ['$view' => ['title' => $id ? __('Edit Project') : __('Add Project'), 'name' => 'bixie/portfolio/admin/project.php'], '$data' => ['config' => App::module('bixie/portfolio')->config(), 'project' => $project, 'tags' => Project::allTags()], 'project' => $project]; } catch (\Exception $e) { App::message()->error($e->getMessage()); return App::redirect('@portfolio/post'); } }
/** * @Route("/") */ public function indexAction() { if (!App::node()->hasAccess(App::user())) { App::abort(403, __('Insufficient User Rights.')); } if (!preg_match('/^(date|title|priority)\\|(asc|desc)$/i', $this->portfolio->config('project_ordering', 'date|DESC'), $order)) { $order = [1 => 'date', 2 => 'desc']; } $query = Project::where(['date < ?', 'status = 1'], [new \DateTime()])->orderBy($order[1], $order[2]); $portfolio_text = ''; if ($this->portfolio->config('portfolio_text')) { $portfolio_text = App::content()->applyPlugins($this->portfolio->config('portfolio_text'), ['markdown' => $this->portfolio->config('markdown_enabled')]); } foreach ($projects = $query->get() as $project) { $project->intro = App::content()->applyPlugins($project->intro, ['project' => $project, 'markdown' => $project->get('markdown')]); $project->content = App::content()->applyPlugins($project->content, ['project' => $project, 'markdown' => $project->get('markdown'), 'readmore' => true]); } return ['$view' => ['title' => $this->portfolio->config('portfolio_title') ?: App::node()->title, 'name' => 'bixie/portfolio/portfolio.php'], 'tags' => Project::allTags(), 'portfolio' => $this->portfolio, 'config' => $this->portfolio->config(), 'portfolio_text' => $portfolio_text, 'projects' => $projects, 'node' => App::node()]; }