Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
3 / 3
CRAP
100.00% covered (success)
100.00%
1 / 1
AddOnsController
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
3 / 3
3
100.00% covered (success)
100.00%
1 / 1
 index
100.00% covered (success)
100.00%
2 / 2
100.00% covered (success)
100.00%
1 / 1
1
 current
100.00% covered (success)
100.00%
3 / 3
100.00% covered (success)
100.00%
1 / 1
1
 update
100.00% covered (success)
100.00%
2 / 2
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace App\Http\Controllers\v2;
4
5use App\Http\Controllers\Controller;
6use App\Http\Models\AddOns;
7use App\Http\Requests\v2\AddOn\UpdateAddOnRequest;
8use App\Traits\SubscriptionTrait;
9use Illuminate\Http\JsonResponse;
10use Illuminate\Http\Request;
11
12class AddOnsController extends Controller
13{
14    use SubscriptionTrait;
15
16    public function index(): JsonResponse
17    {
18        $plans = AddOns::orderBy('priority', 'desc')->get();
19
20        return response()->json(['data' => $plans]);
21    }
22
23    public function current(Request $request): JsonResponse
24    {
25        $user = $request->user();
26
27        $userAddOns = $this->getCurrentAddOns($user->id);
28
29        return response()->json(['data' => $userAddOns]);
30    }
31
32    public function update(UpdateAddOnRequest $request, AddOns $plan): JsonResponse
33    {
34        $plan->update($request->validated());
35
36        return response()->json(['data' => $plan]);
37    }
38}