PATH:
home
/
lab2454c
/
tripvare.com
/
backup
/
app
/
Http
/
Controllers
/
admin
/
dashboard
<?php namespace App\Http\Controllers\admin\dashboard; use App\Http\Controllers\Controller; use App\Models\User; use App\Models\Country; use App\Models\TravelInformation; use App\Models\MembershipInformation; use App\Models\ImmunizationApplication; use App\Models\Setting; use App\Exports\UserExport; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Maatwebsite\Excel\Facades\Excel; use Mail; use Illuminate\Support\Facades\Storage; use Illuminate\Http\File; class ManageUser extends Controller { /** * Display a list of the users. * * @return \Illuminate\Http\Response */ public function listUsers() { $users = User::orderByDesc('created_at')->paginate(env('LIST_PER_PAGE')); return view('admin/dashboard/manage_users/list')->with('users', $users); } public function userImmunizationInfo(Request $request, $id, $p) { $user = User::find($id); if ($request->isMethod('post') && isset($user->immunization_application)) { $request->validate( [ 'date_of_birth' => 'required|date_format:d/m/Y', 'gender' => 'required', 'phone_no_1' => 'required', 'phone_no_1_type' => 'required', 'street_address' => 'required', 'apt_suite_unit' => 'required', 'city' => 'required', 'zip_code' => 'required', 'county' => 'required', 'state' => 'required', 'country' => 'required', ] ); $immunization_application = ImmunizationApplication::find($user->immunization_application->id); $immunization_application->date_of_birth = date("Y-m-d", strtotime(str_replace('/', '-', $request->date_of_birth))); $immunization_application->gender = $request->gender; $immunization_application->phone_no_1 = $request->phone_no_1; $immunization_application->phone_no_1_type = $request->phone_no_1_type; $immunization_application->phone_no_2 = $request->phone_no_2; $immunization_application->phone_no_2_type = !empty($request->phone_no_2) ? $request->phone_no_2_type : null; $immunization_application->phone_no_3 = $request->phone_no_3; $immunization_application->phone_no_3_type = !empty($request->phone_no_3) ? $request->phone_no_3_type : null; $immunization_application->phone_no_4 = $request->phone_no_4; $immunization_application->phone_no_4_type = !empty($request->phone_no_4) ? $request->phone_no_4_type : null; $immunization_application->street_address = $request->street_address; $immunization_application->apt_suite_unit = $request->apt_suite_unit; $immunization_application->city = $request->city; $immunization_application->zip_code = $request->zip_code; $immunization_application->county = $request->county; $immunization_application->state = $request->state; $immunization_application->country = $request->country; $immunization_application->save(); return back()->with('success', __('messages.admin.manage_users.update_success')); } return view('admin/dashboard/manage_users/user_immunization_info')->with('user', $user)->with('page', $p); } /** * Show User Information * * @param \App\Models\User $user * @return \Illuminate\Http\Response */ public function userInfo(Request $request,$id,$p) { $user = User::find($id); if (is_null($user)) { return redirect()->route('admin.list-users'); } if($request->isMethod('post')){ $request->validate( [ 'first_name' => 'required', 'last_name' => 'required', 'email' => 'required|email|unique:users,email,' . $id, // 'country_id' => 'required', 'account_status' => 'required', ], [ 'country_id.required' => __('messages.applicant_dashboard.profile.error.country'), ] ); $site_setting = Setting::find(1); if($user->account_status != 1 && $request->account_status == 1){ Mail::send('emails.applicants.account_activation', ['mail_content'=> $site_setting->account_activation_email], function ($message) use ($site_setting,$request) { $message->to($request->email,$request->first_name.' '.$request->last_name); $message->subject($site_setting->activation_email_subject); }); } $user->update( $request->only('first_name', 'last_name', 'email', 'country_id', 'account_status') ); if (isset($user->membership_information)) { $membership_information = MembershipInformation::find($user->membership_information->id); $membership_information->update( $request->only('date_of_birth','address_1', 'city', 'state', 'zipcode', 'partner_information', 'membership_access') ); }else{ $membership_info = new MembershipInformation($request->only('date_of_birth','address_1', 'city', 'state', 'zipcode', 'partner_information', 'membership_access')); $user->membership_information()->save($membership_info); } if (isset($user->travel_information)) { $travel_info = TravelInformation::find($user->travel_information->id); $travel_info->update( $request->only('information', 'date_submitted', 'first_name_travel', 'middle_name_travel', 'last_name_travel', 'sex_age', 'mobile_contact_number', 'business_contact_number', 'home_contact_number', 'other_contact_number', 'email_address', 'passport', 'driving_license', 'airline_name', 'flight_number', 'date_of_arrival', 'point_of_entry', 'country_permanent', 'state_permanent', 'city_permanent', 'street_permanent', 'apartment_permanent', 'previous_visited_country_permanent', 'country_temporary', 'state_temporary', 'city_temporary', 'street_temporary', 'apartment_temporary', 'previous_visited_country_temporary', 'first_name_emergency', 'last_name_emergency', 'country_city_emergency', 'mobile_contact_number_emergency', 'other_contact_number_emergency', 'email_address_emergency', 'first_name_digital', 'last_name_digital', 'national_id_digital', 'certificate_type_digital', 'credential_type_digital', 'certificate_id_digital', 'vaccination_country_digital', 'vaccination_manufacturer_digital') ); }else{ $travel_info = new TravelInformation( $request->only('information', 'date_submitted', 'first_name_travel', 'middle_name_travel', 'last_name_travel', 'sex_age', 'mobile_contact_number', 'business_contact_number', 'home_contact_number', 'other_contact_number', 'email_address', 'passport', 'driving_license', 'airline_name', 'flight_number', 'date_of_arrival', 'point_of_entry', 'country_permanent', 'state_permanent', 'city_permanent', 'street_permanent', 'apartment_permanent', 'previous_visited_country_permanent', 'country_temporary', 'state_temporary', 'city_temporary', 'street_temporary', 'apartment_temporary', 'previous_visited_country_temporary', 'first_name_emergency', 'last_name_emergency', 'country_city_emergency', 'mobile_contact_number_emergency', 'other_contact_number_emergency', 'email_address_emergency', 'first_name_digital', 'last_name_digital', 'national_id_digital', 'certificate_type_digital', 'credential_type_digital', 'certificate_id_digital', 'vaccination_country_digital', 'vaccination_manufacturer_digital') ); $user->membership_information()->save($travel_info); } return back()->with('success', __('messages.admin.manage_users.update_success')); } $countries = Country::orderBy('en_short_name', 'ASC')->get(); return view('admin/dashboard/manage_users/user_info')->with('user', $user)->with('countries', $countries)->with('page', $p); } /** * Remove the specified User Information. * * @param \App\Models\User $user * @return \Illuminate\Http\Response */ public function removeUser($id) { $user = User::find($id); if (!is_null($user)) { $user->delete(); return back()->with('success', __('messages.admin.manage_users.delete_success')); } return redirect()->route('admin.list-users'); } /** * Search specific user by info * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function searchUserInfo(Request $request) { $request->validate([ 'q' => 'required' ]); $users = User::where(function ($query) use ($request) { $query->where('first_name', 'like', $request->q . '%') ->orWhere('last_name', 'like', $request->q . '%') ->orWhere('email', 'like', $request->q . '%'); })->orderByDesc('created_at')->paginate(env('LIST_PER_PAGE')); $users->appends(['q' => $request->q]); return view('admin/dashboard/manage_users/list')->with('users', $users)->with('q', $request->q); } public function exportAll() { return Excel::download(new UserExport, 'users.xlsx'); } public function userVaccinationInfo(User $user) { // dd($user); if (is_null($user)) { return redirect()->route('admin.list-users'); } $data['user'] = $user; return view('admin.dashboard.manage_users.user_vaccination_info', $data); } public function userVaccinationInfoUpdate(Request $request, User $user) { $vaccinationReview = $user->vaccination_review; //dd($user, $request, $vaccinationReview); $changed = false; $values = $request->validate([ "vaccine_type" => 'required|string|max:200', "first_vaccine_date"=>'required|date|before:last_vaccine_date', "last_vaccine_date"=>'required|date|after:first_vaccine_date', "user_document" => 'nullable|file|max:8000', ]); if ($request->user_document) { Storage::delete($vaccinationReview->user_document); $values['user_document'] = Storage::putFile('public/userDocuments', new File($request->user_document)); } $vaccinationReview->fill($request->except('user_document')); if (isset($values['user_document'])) { $vaccinationReview->user_document = $values['user_document']; $vaccinationReview->user_document_name = $request->user_document->getClientOriginalName(); } if ($vaccinationReview->isDirty()) { $vaccinationReview->save(); $changed = true; } if (! $changed) { return redirect()->route('admin.list-users')->withErrors('No changes done to save'); } return redirect()->route('admin.list-users')->with('success', 'Vaccination Data is updated Successfully!'); } }
[-] AdminProfile.php
[edit]
[-] ManageCorporateUser.php
[edit]
[+]
..
[-] ManageNavigation.php
[edit]
[-] AdminDashboard.php
[edit]
[-] ManageUser.php
[edit]
[-] ManageSettings.php
[edit]
[-] ManagePages.php
[edit]
[-] ManageReward.php
[edit]