Files
vuefilemanager/src/Domain/Subscriptions/Controllers/SubscriptionDetailsController.php
2021-07-21 09:42:39 +02:00

30 lines
660 B
PHP

<?php
namespace Domain\Subscriptions\Controllers;
use Auth;
use App\Http\Controllers\Controller;
use App\Users\Resources\UserSubscription;
class SubscriptionDetailsController extends Controller
{
public function __invoke(): mixed
{
$user = Auth::user();
if (! $user->subscription('main')) {
return abort(204, "User don't have any subscription");
}
$slug = "subscription-user-{$user->id}";
if (cache()->has($slug)) {
return cache()->get($slug);
}
return cache()->rememberForever(
$slug,
fn () => new UserSubscription($user)
);
}
}