Файловый менеджер - Редактировать - /home/clickysoft/public_html/travel-guru.clickysoft.net/app/Repositories/UserReviewRepository.php
Назад
<?php namespace App\Repositories; use App\Interfaces\UserReviewRepositoryInterface; use App\Models\UserReview; use Carbon\Carbon; use Illuminate\Support\Str; use Yajra\DataTables\Facades\DataTables; class UserReviewRepository implements UserReviewRepositoryInterface { public function getAllUserReviews() { return UserReview::get(); } public function getUserReview($id) { return UserReview::findOrFail($id); } public function create($req) { $userReview = UserReview::create([ 'user_id' => auth()->user()->id, 'type' => 'Admin', 'message' => $req->message, 'user_name' => $req->user_name, 'user_email' => $req->user_email, 'overall_rating' => $req->overall_rating, 'marine_life_rating' => $req->marine_life_rating, 'food_rating' => $req->food_rating, 'visiting_date' => Carbon::make("{$req->visiting_year}-{$req->visiting_month}-01"), 'accommodation_rating' => $req->accommodation_rating, 'status' => $req->status, 'reviewable_id' => $req->accommodation_type == 'Resort' ? $req->resort_id : $req->liveaboard_id, 'reviewable_type' => "App\Models\\".$req->accommodation_type, ]); if (!empty($userReview)) { return redirect()->route('user.review')->with('success_msg', 'Admin review successfully added.'); } return redirect()->back()->withInput()->with('error_msg', 'Admin review not found.'); } public function update($id, $req) { $user_review = UserReview::where('id', $id)->first(); if (!empty($user_review)) { $user_review->update([ 'message' => $req->message, 'visiting_date' => Carbon::make("{$req->visiting_year}-{$req->visiting_month}-01"), 'overall_rating' => $req->overall_rating, 'marine_life_rating' => $req->marine_life_rating, 'food_rating' => $req->food_rating, 'accommodation_rating' => $req->accommodation_rating, 'status' => $req->status, ]); if ($user_review->user_id) { return redirect()->route('user.review')->with('success_msg', 'Admin review successfully updated.'); } else { return redirect()->route('user.review.user')->with('success_msg', 'User review successfully updated.'); } } return redirect()->back()->withInput()->with('error_msg', 'Review not found.'); } public function getDataTable() { $query = UserReview::where('type', 'Admin'); return Datatables::of($query) ->filter(function ($instance) { $search = request('search')['value']; if (!empty($search)) { $instance->where(function ($w) use ($search) { $w->orWhere('message', 'LIKE', "%$search%"); $w->orWhere('user_name', 'LIKE', "%$search%"); $w->orWhere('user_email', 'LIKE', "%$search%"); }); } }) ->addColumn('message', function ($obj) { return Str::limit($obj->message, 20); }) ->addColumn('action', function ($obj) { return '<div class="btn-group"> <a class="btn btn-success btn-sm redirect-btn" href="' . route('user.review.update', $obj->id) . '">Edit</a> <button class="btn btn-danger btn-sm redirect-btn" onclick="deleteData(`'. route('review.delete', $obj->id).'`)">Delete</button> </div>'; })->rawColumns(['action',])->make(true); } public function getUserDataTable() { $query = UserReview::where('type', 'User'); return Datatables::of($query) ->filter(function ($instance) { $search = request('search')['value']; if (!empty($search)) { $instance->where(function ($w) use ($search) { $w->orWhere('message', 'LIKE', "%$search%"); $w->orWhere('user_name', 'LIKE', "%$search%"); $w->orWhere('user_email', 'LIKE', "%$search%"); $w->orWhere('status', 'LIKE', "%$search%"); }); } }) ->addColumn('message', function ($obj) { return Str::limit($obj->message, 20); }) ->addColumn('action', function ($obj) { return '<div class="btn-group"> <a class="btn btn-success btn-sm redirect-btn" href="' . route('user.review.update', $obj->id) . '">Edit</a> <button class="btn btn-danger btn-sm redirect-btn" onclick="deleteData(`'. route('review.delete', $obj->id).'`)">Delete</button> </div>'; })->rawColumns(['action'])->make(true); } public function changeStatus($id) { $msg = 'Something went wrong.'; $code = 400; $userReview = $this->getUserReview($id); if (!empty($userReview)) { $userReview->update([ 'is_approved' => !$userReview->is_approved ]); $msg = $userReview->type." Review status successfully changed."; $code = 200; } return response()->json(['msg' => $msg], $code); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка