/**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure                 $next
  * @param Guard                     $guard
  *
  * @return mixed
  */
 public function handle(Request $request, Closure $next, Guard $guard = null)
 {
     if (Auth::guard($guard)->check() && $this->userRepository->hasAdministratorRole(Auth::user()) && Auth::user()->verified) {
         return redirect(route('cms.dashboard'));
     }
     return $next($request);
 }
示例#2
0
 /**
  * Store a newly created resource in storage.
  *
  * @param StoreSessionRequest $request
  *
  * @return Response
  */
 public function store(StoreSessionRequest $request)
 {
     if ($this->userRepository->attemptToSignIn($request->only('email', 'password'), $request->has('remember_me'))) {
         Flash::success('Welcome!');
         return redirect()->intended(route('cms.dashboard'));
     }
     Flash::error('Those credentials do not match our data set.');
     return redirect()->back();
 }
 /**
  * @param Requests\Ahk\SignInRequest $request
  *
  * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
  */
 public function postLogin(Requests\Ahk\SignInRequest $request)
 {
     if ($this->userRepository->attemptToSignIn($request->only('email', 'password'), $request->has('remember_me')) && $this->userRepository->hasCompanyRepresentativeRole(Auth::user())) {
         Flash::success(trans('ahk_messages.successful_sign_in'));
         return redirect()->intended(route('home_path'));
     }
     Auth::logout();
     Flash::error(trans('ahk_messages.you_do_not_have_the_necessary_privileges'));
     return redirect()->back();
 }
示例#4
0
 /**
  * Store a newly created resource in storage.
  *
  * @param StoreUserRequest $request
  *
  * @return \Illuminate\Http\Response
  */
 public function store(StoreUserRequest $request)
 {
     $userStored = $this->userRepository->store($request->all());
     if (!$userStored) {
         Flash::error(trans('ahk_messages.unable_to_store_user'));
         return redirect()->back();
     }
     Flash::success(trans('ahk_messages.user_created'));
     return redirect()->route('home_path');
 }
示例#5
0
 /**
  * Show info about a work-group.
  *
  * @param Industry  $industry
  * @param Workgroup $workGroup
  *
  * @return \Illuminate\Http\Response
  */
 public function showWorkGroup(Industry $industry, Workgroup $workGroup)
 {
     $articles = $this->articleRepository->mostViewedByIndustry($industry, 3)->get();
     $events = $this->industryRepository->companyEvents($industry)->get();
     $decisions = $this->industryRepository->companyDecisions($industry)->get();
     $members = $this->userRepository->whereCompaniesIndustry($industry)->get();
     return view('ahk.industries.work_groups.show', compact('industry', 'workGroup', 'articles', 'events', 'decisions', 'members'));
 }
示例#6
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure                 $next
  * @param Guard                     $guard
  *
  * @return mixed
  */
 public function handle(Request $request, Closure $next, Guard $guard = null)
 {
     if (Auth::guard($guard)->guest()) {
         if ($request->ajax()) {
             return response('Unauthorized.', 401);
         }
         Flash::error(trans('cms.you_need_to_sign_in_first'));
         return redirect()->guest(route('cms.sessions.create'));
     }
     $user = Auth::user();
     if (!$user->verified) {
         Flash::error('Please visit your email to validate your account.');
         return redirect()->route('cms.sessions.create');
     }
     if (!$this->userRepository->hasAdministratorRole($user)) {
         Flash::error(trans('cms.missing_required_role'));
         return redirect()->route('cms.sessions.create');
     }
     return $next($request);
 }
示例#7
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure                 $next
  * @param Guard|null                $guard
  *
  * @return mixed
  */
 public function handle(Request $request, Closure $next, Guard $guard = null)
 {
     if (Auth::guard($guard)->guest()) {
         if ($request->ajax()) {
             return response('Unauthorized.', 401);
         } else {
             Flash::error(trans('ahk_messages.you_need_to_sign_in'));
             return redirect()->guest(route('auth.sign_in'));
         }
     }
     $user = Auth::user();
     if (!$user->verified) {
         Flash::error(trans('cms.missing_required_role'));
         return redirect()->route('cms.sessions.create');
     }
     if (!$this->userRepository->hasCompanyRepresentativeRole($user)) {
         Flash::error(trans('ahk_messages.you_do_not_have_the_necessary_privileges'));
         return redirect()->route('auth.sign_in');
     }
     return $next($request);
 }
 /**
  * @param                      $slug
  * @param                      $recovery_token
  * @param ResetPasswordRequest $request
  *
  * @return \Illuminate\Http\RedirectResponse
  */
 public function postReset($slug, $recovery_token, ResetPasswordRequest $request)
 {
     $user = $this->userRepository->findBySlugAndRecoveryToken($slug, $recovery_token);
     if (!$user) {
         Flash::error('ahk_messages.validation_error_occurred');
         return redirect()->back();
     }
     $user = $this->userRepository->updatePassword($user, $request->get(User::PASSWORD));
     if (!$user) {
         Flash::error(trans('ahk_messages.unknown_error_occurred'));
     } else {
         Flash::success(trans('ahk_messages.you_updated_your_accounts_password'));
     }
     return redirect()->route('auth.sign_in');
 }
示例#9
0
 /**
  * Update the specified resource in storage.
  *
  * @param UpdateCompanyRequest $request
  * @param Company              $company
  *
  * @return \Illuminate\Http\Response
  */
 public function update(UpdateCompanyRequest $request, Company $company)
 {
     $user = Auth::user();
     if (!$this->userRepository->hasCompany($user, $company)) {
         Flash::error(trans('ahk_messages.you_do_not_have_the_necessary_privileges'));
         return back()->withInput();
     }
     $file = $request->file('logo_path');
     if (null !== $file) {
         $this->fileRepository->update($company->logo, [File::CLIENT_ORIGINAL_NAME => $file->getClientOriginalName(), File::TEMPORARY_PATH => $file->getRealPath()]);
     }
     if (!($company = $this->companyRepository->update($company, $request->all()))) {
         Flash::error(trans('ahk_messages.unknown_error_occurred'));
         return redirect()->back();
     }
     Flash::success(trans('ahk_messages.company_successfully_updated'));
     return redirect()->route('my.companies.edit', ['slug' => $company->slug]);
 }
示例#10
0
 public function confirmEmail(Requests\Ahk\ConfirmEmailRequest $request)
 {
     $this->userRepository->confirmEmail($request->only('token'));
     Flash::success(trans('ahk_messages.successful_sign_up'));
     return redirect()->route('home_path');
 }