����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.147.2.160 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/cbt.gltechlimited.com/app/Traits/ |
Upload File : |
<?php /** * File name: SubscriptionTrait.php * Last modified: 02/02/22, 4:08 PM * Author: NearCraft - https://codecanyon.net/user/nearcraft * Copyright (c) 2022 */ namespace App\Traits; trait SubscriptionTrait { /** * Check user had active subscription to the category and feature * * @param $category * @param null $feature * @return bool */ public function hasActiveSubscription($category, $feature = null) { // fetch the active category subscription of a user $subscription = $this->subscriptions() ->with('plan', function ($query) { $query->with('features'); }) ->where('category_id', '=', $category) ->where('ends_at', '>', now()->toDateTimeString()) ->where('status', '=', 'active') ->first(); if(!$subscription) { return false; } // feature check if($feature) { $features = $subscription->plan->features->pluck('code')->toArray(); return in_array($feature, $features); } else { return true; } } /** * Check user had pending bank payment for a plan * * @param $planId * @return bool */ public function hasPendingBankPayment($planId) { $pendingBankPayments = $this->payments() ->where('plan_id', '=', $planId) ->where('payment_processor', '=', 'bank') ->where('status', '=', 'pending') ->count(); return $pendingBankPayments > 0; } }