Файловый менеджер - Редактировать - /home/clickysoft/public_html/rgr.clickysoft.net/app/Http/Controllers/HomeController1.php
Назад
<?php namespace App\Http\Controllers; use App\Models\JobTitle; use App\Models\OpeningHour; use App\Models\Practice; use App\Models\PracticeSpeciality; use App\Models\Speciality; use App\Models\UserDetail; use App\Models\User; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use DB; use Illuminate\Support\Facades\Hash; class HomeController extends Controller { public function __construct() { $this->middleware('auth')->except('practiceSpecialiy'); } public function allPractices(Request $request) { $page = $request->page != '' ? $request->page : 1; $allPractices = Practice::where('status', 1)->paginate(10); return response()->json($allPractices); } public function practices(Request $request) { $practice_id = $request->get('practice_id'); $treatments = $request->get('treatments'); $lat = $request->get('lat'); $long = $request->get('long'); if ($lat <> '' && $long <> '') { if ($practice_id == '' && $treatments == '') { $practices = Practice::select( 'id', 'name', 'profile_name', 'latitude', 'longitude', DB::raw("6371 * acos(cos(radians(" . $lat . ")) * cos(radians(practices.latitude)) * cos(radians(practices.longitude) - radians(" . $long . ")) + sin(radians(" . $lat . ")) * sin(radians(practices.latitude))) AS distance") )->where('status', 1)->orderby('distance', 'ASC')->get(); } elseif ($practice_id <> '' && $treatments <> '') { $practiceSpecialities = PracticeSpeciality::where('speciality_id', $treatments)->where('practice_id', $practice_id)->first(); if (isset($practiceSpecialities)) { $practices = Practice::where('id', $practiceSpecialities->practice_id)->where('status', 1)->get(); } else { $practices = Practice::where('id', 0)->where('status', 1)->get(); } } elseif ($practice_id <> '' && $treatments == '') { $practices = Practice::select( 'id', 'name', 'profile_name', 'latitude', 'longitude', DB::raw("6371 * acos(cos(radians(" . $lat . ")) * cos(radians(practices.latitude)) * cos(radians(practices.longitude) - radians(" . $long . ")) + sin(radians(" . $lat . ")) * sin(radians(practices.latitude))) AS distance") )->where('id', $practice_id)->where('status', 1)->orderby('distance', 'ASC')->get(); } elseif ($practice_id == '' && $treatments <> '') { $practiceSpecialities = PracticeSpeciality::where('speciality_id', $treatments)->get('practice_id')->toArray(); $practices = Practice::select( 'id', 'name', 'profile_name', 'latitude', 'longitude', DB::raw("6371 * acos(cos(radians(" . $lat . ")) * cos(radians(practices.latitude)) * cos(radians(practices.longitude) - radians(" . $long . ")) + sin(radians(" . $lat . ")) * sin(radians(practices.latitude))) AS distance") )->where('status', 1)->whereIn('id', $practiceSpecialities)->orderby('distance', 'ASC')->get(); } } else { if ($practice_id == '' && $treatments == '') { $practices = Practice::where('status', 1)->get(); } elseif ($practice_id <> '' && $treatments <> '') { $practiceSpecialities = PracticeSpeciality::where('speciality_id', $treatments)->where('practice_id', $practice_id)->first(); if (isset($practiceSpecialities)) { $practices = Practice::where('id', $practiceSpecialities->practice_id)->where('status', 1)->get(); } else { $practices = Practice::where('id', 0)->where('status', 1)->get(); } } elseif ($practice_id <> '' && $treatments == '') { $practices = Practice::where('id', $practice_id)->where('status', 1)->get(); } elseif ($practice_id == '' && $treatments <> '') { $practiceSpecialities = PracticeSpeciality::where('speciality_id', $treatments)->get('practice_id')->toArray(); $practices = Practice::where('status', 1)->whereIn('id', $practiceSpecialities)->get(); } } $allTreatments = Speciality::where('status', 'Active')->get(); $allPractices = Practice::where('status', 1)->get(); return view('practices', compact('practices', 'allTreatments', 'allPractices', 'practice_id')); } public function thankYou() { return view('thank-you'); } public function practiceSpecialiy($id) { $practice = Practice::where('status', 1)->where('id', $id)->first(); $practiceSpecialities = PracticeSpeciality::getByPracticeIdToSpecialityIds($practice->id); $practiceSpecialities = Speciality::whereIn('id', $practiceSpecialities)->get(['id', 'title']); return response()->json($practiceSpecialities); } public function practiceDetail($id) { if ($id == Auth::user()->practice_id) { return redirect('/'); } $practice = Practice::where('status', 1)->where('id', $id)->first(); $openingHours = OpeningHour::getByPracticeId($practice->id); $practiceSpecialities = PracticeSpeciality::getByPracticeIdToSpecialityIds($practice->id); $practiceSpecialities = Speciality::whereIn('id', $practiceSpecialities)->get('title'); $practiceUsers = User::select('id')->where('practice_id', $practice->id)->pluck('id'); $dentists = UserDetail::where('job_id', 2)->whereIn('user_id', $practiceUsers)->get(); return view('practice-detail', compact('practice', 'openingHours', 'practiceSpecialities', 'dentists')); } public function profile() { $user = Auth::user(); if (Auth::user()->is_admin == 1) { return redirect('/admin/setting'); } if (Auth::user()->email_verified_at == NULL) { return redirect('/'); } $userDetail = UserDetail::getByUserId(Auth::user()->id); $jobTitle = JobTitle::find($userDetail->job_id); $practice = Practice::where('status', 1)->where('id', Auth::user()->practice_id)->first(); $openingHours = OpeningHour::getByPracticeId($practice->id); $practiceSpecialities = PracticeSpeciality::getByPracticeIdToSpecialityIds($practice->id); $practiceSpecialities = Speciality::whereIn('id', $practiceSpecialities)->get('title'); return view('profile', compact('user', 'userDetail', 'jobTitle', 'practice', 'openingHours', 'practiceSpecialities')); } public function profileUpdate(Request $request) { $data = $request->all(); // dd($data); $request->validate([ 'first_name' => ['required', 'string', 'max:255'], 'last_name' => ['required', 'string', 'max:255'], 'address' => ['required', 'string', 'max:255'], 'city' => ['required', 'string', 'max:255'], 'country' => ['required', 'string', 'max:255'], 'phone' => ['required', 'numeric'], ]); $user = User::find(Auth::user()->id); $user->first_name = $data['first_name']; $user->last_name = $data['last_name']; if (Auth::user()->is_admin == 1) { $user->email = $data['email']; } if ($data['password'] != NULL) { if ($data['password'] == $data['password_confirmation']) { $user->password = Hash::make($data['password']); } else { return redirect('/profile#view')->with('danger', 'Password Confirmation does not match'); } } $user->update(); $userDetail = UserDetail::getByUserId($user->id); $userDetail->phone = $data['phone']; $userDetail->address = $data['address']; $userDetail->address_2 = $data['address_2']; $userDetail->city = $data['city']; $userDetail->country = $data['country']; $userDetail->zip_code = $data['zip_code']; $userDetail->update(); return redirect('/profile#view')->with('success', 'Profile Update Successfully'); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка