[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: SaaS.php
<?php namespace App\Http\Middleware; use app\Models\Business; use Closure; use Illuminate\Support\Facades\Session; class SaaS { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { if (auth()->check()) { $user = auth()->user(); $routeName = $request->route()->getName(); if (!$request->has('businessList') && $user->user_type == 'user') { $business = $user->business(); $businessList = $business->withoutGlobalScopes()->get(); if (!$businessList->isEmpty()) { $activeBusiness = $business->withoutGlobalScopes()->wherePivot('is_active', 1)->with('user.package')->first(); if ($activeBusiness == null) { $activeBusiness = $user->business()->withoutGlobalScopes()->with('user.package')->first(); $user->business()->updateExistingPivot($activeBusiness->id, ['is_active' => 1]); } $isOwner = $activeBusiness->pivot->owner_id == $user->id ? true : false; $permissionList = $user->select('permissions.*') ->join('business_users', 'users.id', 'business_users.user_id') ->join('business', 'business_users.business_id', 'business.id') ->join('permissions', 'business_users.role_id', 'permissions.role_id') ->where('business.id', $activeBusiness->id) ->where('users.id', $user->id) ->get(); date_default_timezone_set(get_business_option('timezone', 'Asia/Dhaka')); $request->merge([ 'businessList' => $businessList, 'activeBusiness' => $activeBusiness, 'isOwner' => $isOwner, 'permissionList' => $permissionList, ]); if ($activeBusiness->user->package_id != null && $activeBusiness->user->getRawOriginal('valid_to') < date('Y-m-d')) { if ($isOwner) { if ($routeName != 'business.switch_business') { return redirect()->route('membership.payment_gateways')->with('error', _lang("Please make your subscription payment")); } } else { if ($routeName != 'dashboard.index' && $routeName != 'business.switch_business') { return redirect()->route('dashboard.index')->with('error', _lang("Your selected business subscription is expired")); } Session::flash('error', _lang("Your selected business subscription is expired")); } } } else { if ($user->package_id != null && ($user->getRawOriginal('valid_to') < date('Y-m-d') || $user->getRawOriginal('valid_to') == null)) { $package = $user->package; //Apply Free Package if ($package->cost == 0) { $user->membership_type = 'member'; $user->subscription_date = now(); $user->valid_to = update_membership_date($package, $user->getRawOriginal('subscription_date')); $user->s_email_send_at = null; $user->save(); } //Apply Trial Package if ($package->cost > 0 && $package->trial_days > 0 && $user->membership_type == '') { $user->membership_type = 'trial'; $user->subscription_date = now(); $user->valid_to = date('Y-m-d', strtotime($user->getRawOriginal('subscription_date') . " + $package->trial_days days")); $user->save(); } } if ($user->package_id != null) { $business = Business::createDefaultBusiness(); return redirect()->route('business.edit', $business->id)->with('error', _lang("Please update your default business account")); } if ($user->package_id == null) { return redirect()->route('membership.packages')->with('error', _lang("Please choose your package first")); } } } } return $next($request); } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 60 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002