/** * Create a new password controller instance. * * @param Guard $auth * @param \Illuminate\Contracts\Auth\PasswordBroker $passwords * @param Breadcrumbs $breadcrumbs */ public function __construct(Guard $auth, PasswordBroker $passwords, Breadcrumbs $breadcrumbs) { $this->auth = $auth; $this->passwords = $passwords; $this->middleware('guest'); $breadcrumbs->setCurrentRoute('Illuminate\\Auth\\Events\\Login'); }
/** * Register the service provider. * * @return void */ public function register() { $this->app['breadcrumbs'] = $this->app->share(function ($app) { $breadcrumbs = new Manager($app['view'], $app['router']); $breadcrumbs->setView($app['config']['laravel-breadcrumbs::view']); return $breadcrumbs; }); }
/** * @param string $slug * @param int $id * @param ProfileFieldGroupRepositoryInterface $profileFieldGroups * @param Breadcrumbs $breadcrumbs * * @return \Illuminate\View\View */ public function profile($slug, $id, ProfileFieldGroupRepositoryInterface $profileFieldGroups, Breadcrumbs $breadcrumbs) { $user = $this->users->find($id); if (!$user) { throw new UserNotFoundException(); } $groups = $profileFieldGroups->getAll(); $breadcrumbs->setCurrentRoute('user.profile', $user); return view('user.profile', ['user' => $user, 'profile_field_groups' => $groups]); }
/** * Shows a specific forum. * * @param Request $request * @param string $slug The slug of the forum to show. * * @param int $id The ID of the forum to show. * * @return \Illuminate\View\View */ public function show(Request $request, $slug = '', $id = 0) { // Forum permissions are checked in "find" $forum = $this->forumRepository->find($id); // Load last post information for child forums $forum->load(['children.lastPost', 'children.lastPost.topic', 'children.lastPostAuthor']); if (!$forum) { throw new ForumNotFoundException(); } $this->breadcrumbs->setCurrentRoute('forums.show', $forum); // Build the order by/dir parts $allowed = ['lastpost', 'replies', 'startdate', 'title']; $orderBy = $request->get('orderBy', 'lastpost'); if (!in_array($orderBy, $allowed)) { $orderBy = 'lastpost'; } $orderDir = $request->get('orderDir', 'desc'); if ($orderDir != 'asc' && $orderDir != 'desc') { $orderDir = 'desc'; } // We need to know how to build the url... $urlDirs = ['lastpost' => 'desc', 'replies' => 'desc', 'startdate' => 'desc', 'title' => 'asc']; if ($orderDir == 'desc' && $urlDirs[$orderBy] == 'desc') { $urlDirs[$orderBy] = 'asc'; } elseif ($orderDir == 'asc' && $urlDirs[$orderBy] == 'asc') { $urlDirs[$orderBy] = 'desc'; } $topics = $this->topicRepository->allForForum($forum, $orderBy, $orderDir); $topics->appends(['orderBy' => $orderBy, 'orderDir' => $orderDir]); return view('forum.show', compact('forum', 'topics', 'orderBy', 'orderDir', 'urlDirs')); }
/** * @param string $topicSlug * @param int $topicId * * @return \Illuminate\View\View */ public function edit($topicSlug, $topicId) { $topic = $this->topicRepository->find($topicId); if (!$topic) { throw new TopicNotFoundException(); } if (!$topic->has_poll) { throw new PollNotFoundException(); } $poll = $topic->poll; $this->breadcrumbs->setCurrentRoute('polls.edit', $topic); return view('polls.edit', compact('topic', 'poll')); }
/** * @param int $forumId * @param Request $request * @param MessageFormatter $formatter * * @return \Illuminate\View\View */ public function create($forumId, Request $request, MessageFormatter $formatter) { // Forum permissions are checked in "find" $forum = $this->forumRepository->find($forumId); if (!$forum) { throw new ForumNotFoundException(); } $this->breadcrumbs->setCurrentRoute('topics.create', $forum); $username = trans('general.guest'); $preview = null; if ($request->has('content')) { if (!$this->guard->check()) { $userId = null; $username = $request->get('username'); } else { $userId = $this->guard->user()->id; $username = $this->guard->user()->name; } $preview = new Post(['user_id' => $userId, 'username' => $username, 'content' => $request->get('content'), 'content_parsed' => $formatter->parse($request->get('content'), [MessageFormatter::ME_USERNAME => $this->guard->user()->name]), 'created_at' => new \DateTime()]); } return view('topic.create', compact('forum', 'preview', 'username')); }
/** * * * @static */ public static function setView($view) { return \DaveJamesMiller\Breadcrumbs\Manager::setView($view); }
public function index() { $this->breadcrumbs->setCurrentRoute('admin.dashboard'); return view('admin.dashboard', ['active_tab' => 'dashboard']); }
/** * @param int $id * @param Request $request * @param Breadcrumbs $breadcrumbs * * @return \Illuminate\View\View */ public function results($id, Request $request, Breadcrumbs $breadcrumbs) { // TODO: sorts $search = $this->searchRepository->find($id); if (!$search) { throw new NotFoundHttpException(); } $breadcrumbs->setCurrentRoute('search.results', $search); $orderBy = $request->get('orderBy'); $orderDir = $request->get('orderDir'); if (!isset($this->sorts[$orderBy])) { $orderBy = 'postdate'; } if ($orderDir != 'asc') { $orderDir = 'desc'; } $urlDirs = []; foreach ($this->sorts as $sortName => $sort) { $urlDirs[$sortName] = $sort['asc']; } if ($orderDir == $urlDirs[$orderBy]) { if ($urlDirs[$orderBy] == 'desc') { $urlDirs[$orderBy] = 'asc'; } else { $urlDirs[$orderBy] = 'desc'; } } if ($search->as_topics) { $results = Topic::whereIn('id', explode(',', $search->topics))->with(['lastPost', 'author', 'lastPost.author'])->orderBy($this->sorts[$orderBy]['name'], $this->sorts[$orderBy][$orderDir])->paginate(10); } else { $results = Post::whereIn('id', explode(',', $search->posts))->with(['topic', 'author'])->orderBy($this->sorts[$orderBy]['name'], $this->sorts[$orderBy][$orderDir])->paginate(10); } if ($search->as_topics) { return view('search.result_topics', compact('results', 'search', 'orderDir', 'orderBy', 'urlDirs')); } else { return view('search.result_posts', compact('results', 'search')); } }
/** * Show the application login form. * * @return \Illuminate\Http\Response */ public function getLogin() { $this->breadcrumbs->setCurrentRoute('auth.login'); return view('member.login'); }
/** * @return \Illuminate\View\View */ public function addProfileFieldGroup() { $this->breadcrumbs->setCurrentRoute('admin.users.profile_fields.add_group'); return view('admin.users.profile_fields.add_group')->withActive('profile-fields'); }