Example #1
0
 protected function getPage($pageSlug, $topicSlug = null)
 {
     if (is_null($topicSlug)) {
         $query = Page::whereSlug($pageSlug);
     } else {
         $query = Topic::slug($topicSlug)->firstOrFail()->pages()->whereSlug($pageSlug);
     }
     if (Auth::check() === false || Auth::user()->hasRole('admin') === false) {
         $query->whereActive(true);
     }
     $page = $query->get()->first();
     if (is_null($page)) {
         throw (new ModelNotFoundException())->setModel(Page::class);
     }
     return $page;
 }
Example #2
0
 /**
  * Formbuilder.
  *
  * @param null $form
  * @param \Illuminate\Database\Eloquent\Model|null $entry
  *
  * @return mixed
  */
 public function getForm($form = null, Model $entry = null)
 {
     $selectedCategory = '';
     $selectedTopic = '';
     if (!empty($entry->category_id)) {
         // only for edit
         $selectedCategory = $entry->category_id;
     }
     if (!empty($entry->topic_id)) {
         // only for edit
         $selectedTopic = $entry->topic_id;
     }
     $categories = Category::orderBy('title', 'asc')->pluck('title', 'id');
     $categories->prepend(trans('page::category.no_category'), '');
     $topics = Topic::orderBy('title', 'asc')->pluck('title', 'id');
     $topics->prepend(trans('page::topic.no_topic'), '');
     $formFields = ['id' => $form->hidden('id'), 'title' => $form->text(trans('crud::crud.title'), 'title')->addClass('is-title'), 'slug' => $form->text(trans('crud::crud.slug'), 'slug')->addClass('is-title-to-slug'), 'topic_id' => $form->select(trans('page::topic.topic'), 'topic_id')->options($topics)->select($selectedTopic), 'category_id' => $form->select(trans('page::category.category'), 'category_id')->options($categories)->select($selectedCategory), 'body' => $form->textarea(trans('crud::crud.body'), 'body')->addClass('is-summernote'), 'html_title' => $form->text(trans('page::page.html_title'), 'html_title'), 'meta_description' => $form->text(trans('page::page.meta_description'), 'meta_description'), 'meta_robots' => $form->text(trans('page::page.meta_robots'), 'meta_robots'), 'active' => $form->checkbox(trans('page::page.active'), 'active')->defaultToChecked(), 'submit' => $form->submit(trans('crud::crud.save'))];
     return $formFields;
 }