PATH:
home
/
rwabteecom
/
project_11
/
app
/
Http
/
Controllers
/
User
/
Web
/
Editing: OnboardingController.php
<?php namespace App\Http\Controllers\User\Web; use App\Enums\OnboardingEnum; use App\Http\Controllers\Controller; use App\Models\Domain; use App\Models\Feature; use App\Models\Plan; use App\Models\SocialIcon; use App\Models\Theme; use App\Models\User; use Illuminate\Http\Request; class OnboardingController extends Controller { public function index(Request $request) { $boardingStep = auth()->user()->domain->onboarding; if($request->skip){ $boardingStep = skipBoardingStep(); if($boardingStep == null){ return redirect()->route('dashboard.index'); } } if($boardingStep == OnboardingEnum::PLANS){ $plans = Plan::query()->where('status' , 1)->get(); $features=Feature::where('status',1)->get(); return view('web.onboarding.plans')->with([ 'plans' => $plans, 'features' => $features ]); } if($boardingStep == OnboardingEnum::THEMES){ $themes = Theme::query()->where('status' , 1)->get(); return view('web.onboarding.themes')->with([ 'themes' => $themes ]); } if($boardingStep == OnboardingEnum::SOCIALS){ $icons = SocialIcon::query()->where('status' , 1)->get(); return view('web.onboarding.socials')->with([ 'icons' => $icons ]); } if($boardingStep == OnboardingEnum::PROFILE_DETAILS){ return view('web.onboarding.profile'); } if($boardingStep == OnboardingEnum::LAST){ $domain = Domain::query()->findOrFail(auth()->user()->domain->id); $domain->update(['onboarding' => null]); return view('web.onboarding.last')->with([ 'domain' => $domain ]); } return redirect()->route('dashboard.index'); } public function checkIfMailExists(Request $request) { return User::query()->where('email',$request->email)->exists() ? 1 : 0; } public function checkIfUsernameExists(Request $request) { return Domain::query()->where('domain',$request->username)->exists() ? 1 : 0; } public function saveProfile(Request $request) { $domain = Domain::query()->findOrFail(auth()->user()->domain->id); $domain->update([ 'site_title' => $request->site_title, 'intro_text' => $request->intro_text ]); skipBoardingStep(OnboardingEnum::LAST); return redirect()->route('dashboard.onboarding'); } }
SAVE
CANCEL