*/ class SettingsController extends Controller { /** * Show the form for the user to update their timezone * * @return mixed */ public function timezoneForm() { return view('settings.timezone', [ 'timezones' => DateTimeZone::listIdentifiers() ]); } /** * Update the user's timezone and return back to the form. * * @param Request $request * @return mixed */ public function updateTimezone(Request $request) { $timezones = DateTimeZone::listIdentifiers(); $this->validate($request, [ 'timezone' => 'required|in:' . implode(',', $timezones) ]); $timezone = Timezone::firstOrCreate(['user_id' => auth()->user()->userid]); $timezone->timezone = $request->get('timezone'); $timezone->save(); return redirect()->back()->with('msg', [ 'type' => 'success', 'msg' => 'Successfully updated your timezone.' ]); } }