Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 24
0.00% covered (danger)
0.00%
0 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 1
CustomerReviewController
0.00% covered (danger)
0.00%
0 / 24
0.00% covered (danger)
0.00%
0 / 4
42
0.00% covered (danger)
0.00%
0 / 1
 index
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
2
 store
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
12
 destroy
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 bulkDestroy
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace App\Http\Controllers\admin;
4
5use App\Http\Controllers\Controller;
6use App\Models\CustomerReview;
7use Illuminate\Http\Request;
8
9class CustomerReviewController extends Controller
10{
11    public function index()
12    {
13        $reviews = CustomerReview::latest()->get();
14
15        return view('admin.customer_reviews.index', compact('reviews'));
16    }
17
18    public function store(Request $request)
19    {
20        $request->validate([
21            'image_path' => 'required|string',
22            'status' => 'required|boolean',
23        ]);
24
25        $paths = json_decode($request->image_path, true) ?? [];
26        if (! is_array($paths)) {
27            $paths = [$request->image_path];
28        }
29
30        foreach ($paths as $path) {
31            CustomerReview::create([
32                'image_path' => $path,
33                'status' => $request->status,
34            ]);
35        }
36
37        return redirect()->back()->with('success', 'Review(s) added successfully!');
38    }
39
40    public function destroy($id)
41    {
42        $review = CustomerReview::findOrFail($id);
43        $review->delete();
44
45        return redirect()->back()->with('success', 'Review deleted successfully!');
46    }
47
48    public function bulkDestroy(Request $request)
49    {
50        $request->validate([
51            'review_ids' => 'required|array',
52            'review_ids.*' => 'exists:customer_reviews,id',
53        ]);
54
55        CustomerReview::whereIn('id', $request->review_ids)->delete();
56
57        return redirect()->back()->with('success', 'Selected reviews deleted successfully!');
58    }
59}