diff --git a/app/Http/Controllers/Auth/ContactForgotPasswordController.php b/app/Http/Controllers/Auth/ContactForgotPasswordController.php index ef6ca6c2b2d9..bdfe94431c73 100644 --- a/app/Http/Controllers/Auth/ContactForgotPasswordController.php +++ b/app/Http/Controllers/Auth/ContactForgotPasswordController.php @@ -58,15 +58,14 @@ class ContactForgotPasswordController extends Controller */ public function showLinkRequestForm(Request $request) { - // $account_id = $request->has('account_id') ? $request->get('account_id') : 1; - // $account = Account::find($account_id); + $account = false; - if(Ninja::isHosted() && $request->has('company_key')) + if(Ninja::isHosted() && $request->session()->has('company_key')) { - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); - $company = Company::where('company_key', $request->input('company_key'))->first(); - $account = $company->first(); + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); + $company = Company::where('company_key', $request->session()->get('company_key'))->first(); + $account = $company->account; } if(!$account){ @@ -94,13 +93,13 @@ class ContactForgotPasswordController extends Controller public function sendResetLinkEmail(ContactPasswordResetRequest $request) { - - if(Ninja::isHosted() && $request->has('company_key')) - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); + + if(Ninja::isHosted() && $request->session()->has('company_key')) + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); $this->validateEmail($request); - $company = Company::where('company_key', $request->input('company_key'))->first(); + $company = Company::where('company_key', $request->session()->get('company_key'))->first(); $contact = ClientContact::where(['company_id' => $company->id, 'email' => $request->input('email')])->first(); $response = false; diff --git a/app/Http/Controllers/Auth/ContactLoginController.php b/app/Http/Controllers/Auth/ContactLoginController.php index 16a2fc746e01..876364bb4fb3 100644 --- a/app/Http/Controllers/Auth/ContactLoginController.php +++ b/app/Http/Controllers/Auth/ContactLoginController.php @@ -40,8 +40,8 @@ class ContactLoginController extends Controller $company = false; $account = false; - if($request->has('company_key')){ - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); + if($request->session()->has('company_key')){ + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); $company = Company::where('company_key', $request->input('company_key'))->first(); } @@ -80,8 +80,8 @@ class ContactLoginController extends Controller { Auth::shouldUse('contact'); - if(Ninja::isHosted() && $request->has('company_key')) - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); + if(Ninja::isHosted() && $request->session()->has('company_key')) + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); $this->validateLogin($request); // If the class is using the ThrottlesLogins trait, we can automatically throttle diff --git a/app/Http/Controllers/Auth/ContactRegisterController.php b/app/Http/Controllers/Auth/ContactRegisterController.php index 0ee232eadc53..ef4fe9502c89 100644 --- a/app/Http/Controllers/Auth/ContactRegisterController.php +++ b/app/Http/Controllers/Auth/ContactRegisterController.php @@ -29,7 +29,7 @@ class ContactRegisterController extends Controller public function showRegisterForm(string $company_key = '') { - $key = request()->has('key') ? request('key') : $company_key; + $key = request()->session()->has('key') ? request()->session()->get('key') : $company_key; $company = Company::where('company_key', $key)->firstOrFail(); diff --git a/app/Http/Controllers/Auth/ContactResetPasswordController.php b/app/Http/Controllers/Auth/ContactResetPasswordController.php index 0d245026a590..4ea188166cf3 100644 --- a/app/Http/Controllers/Auth/ContactResetPasswordController.php +++ b/app/Http/Controllers/Auth/ContactResetPasswordController.php @@ -15,6 +15,7 @@ use App\Http\Controllers\Controller; use App\Libraries\MultiDB; use App\Models\Account; use App\Models\ClientContact; +use App\Models\Company; use Illuminate\Auth\Events\PasswordReset; use Illuminate\Contracts\View\Factory; use Illuminate\Foundation\Auth\ResetsPasswords; @@ -69,18 +70,29 @@ class ContactResetPasswordController extends Controller public function showResetForm(Request $request, $token = null) { - if($request->has('company_key')){ - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); - $company = Company::where('company_key', $request->input('company_key'))->first(); + if($request->session()->has('company_key')){ + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); + $company = Company::where('company_key', $request->session()->get('company_key'))->first(); $db = $company->db; $account = $company->account; } else { - $account_id = $request->has('account_id') ? $request->get('account_id') : 1; - $account = Account::find($account_id); - $db = $account->companies->first()->db; - $company = $account->companies->first(); + $account_key = $request->session()->has('account_key') ? $request->session()->get('account_key') : false; + + if($account_key){ + + MultiDB::findAndSetDbByAccountKey($account_key); + $account = Account::where('key', $account_key)->first(); + $db = $account->companies->first()->db; + $company = $account->companies->first(); + } + else{ + + $account = Account::first(); + $db = $account->companies->first()->db; + $company = $account->companies->first(); + } } @@ -88,12 +100,13 @@ class ContactResetPasswordController extends Controller return $this->render('auth.passwords.reset')->with( ['token' => $token, 'email' => $request->email, 'account' => $account, 'db' => $db, 'company' => $company] ); + } public function reset(Request $request) { - if($request->has('company_key')) - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); + if($request->session()->has('company_key')) + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); $request->validate($this->rules(), $this->validationErrorMessages()); diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php index 5a4f9476286a..c46ca92d7427 100644 --- a/app/Http/Controllers/Auth/ResetPasswordController.php +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -12,7 +12,9 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; +use App\Libraries\MultiDB; use App\Models\Account; +use App\Models\Company; use Illuminate\Foundation\Auth\ResetsPasswords; use Illuminate\Http\JsonResponse; use Illuminate\Http\RedirectResponse; @@ -53,10 +55,9 @@ class ResetPasswordController extends Controller public function showResetForm(Request $request, $token = null) { - // $account_id = $request->get('account_id'); - // $account = Account::find($account_id); - MultiDB::findAndSetDbByCompanyKey($request->input('company_key')); - $company = Company::where('company_key', $request->input('company_key'))->first(); + + MultiDB::findAndSetDbByCompanyKey($request->session()->get('company_key')); + $company = Company::where('company_key', $request->session()->get('company_key'))->first(); $account = $company->account; return $this->render('auth.passwords.reset', ['root' => 'themes', 'token' => $token, 'account' => $account]); diff --git a/app/Http/Controllers/ClientPortal/InvoiceController.php b/app/Http/Controllers/ClientPortal/InvoiceController.php index 25471f73ea26..fe9809860eab 100644 --- a/app/Http/Controllers/ClientPortal/InvoiceController.php +++ b/app/Http/Controllers/ClientPortal/InvoiceController.php @@ -42,8 +42,6 @@ class InvoiceController extends Controller */ public function index(ShowInvoicesRequest $request) { - // $request->request->remove('account_id'); - // $request->request->remove('company_key'); return $this->render('invoices.index'); } diff --git a/app/Http/Middleware/ContactAccount.php b/app/Http/Middleware/ContactAccount.php index 7ab922edfdfd..cfeabbcdc1b0 100644 --- a/app/Http/Middleware/ContactAccount.php +++ b/app/Http/Middleware/ContactAccount.php @@ -32,8 +32,8 @@ class ContactAccount if(!Ninja::isHosted()) { $account = Account::first(); - $request->merge(['account_id' => $account->id, 'account_key' => $account->key]); + session()->put('account_key', $account->key); } return $next($request); diff --git a/app/Http/Middleware/ContactRegister.php b/app/Http/Middleware/ContactRegister.php index c76df09a582b..2b3a72e1653b 100644 --- a/app/Http/Middleware/ContactRegister.php +++ b/app/Http/Middleware/ContactRegister.php @@ -37,7 +37,8 @@ class ContactRegister if(! $company->client_can_register) abort(400, 'Registration disabled'); - $request->merge(['key' => $company->company_key]); + // $request->merge(['key' => $company->company_key]); + session()->put('key', $company->company_key); return $next($request); } @@ -55,7 +56,8 @@ class ContactRegister if(! $company->client_can_register) abort(400, 'Registration disabled'); - $request->merge(['key' => $company->company_key]); + // $request->merge(['key' => $company->company_key]); + session()->put('key', $company->company_key); return $next($request); } @@ -69,7 +71,8 @@ class ContactRegister if(! (bool)$company->client_can_register); abort(400, 'Registration disabled'); - $request->merge(['key' => $company->company_key]); + //$request->merge(['key' => $company->company_key]); + session()->put('key', $company->company_key); return $next($request); } @@ -82,7 +85,8 @@ class ContactRegister if(! $company->client_can_register) abort(400, 'Registration disabled'); - $request->merge(['key' => $company->company_key]); + //$request->merge(['key' => $company->company_key]); + session()->put('key', $company->company_key); return $next($request); } diff --git a/app/Http/Middleware/SetDomainNameDb.php b/app/Http/Middleware/SetDomainNameDb.php index 8a5f3425408d..ca8b016325c3 100644 --- a/app/Http/Middleware/SetDomainNameDb.php +++ b/app/Http/Middleware/SetDomainNameDb.php @@ -50,8 +50,8 @@ class SetDomainNameDb ]; if($company = MultiDB::findAndSetDbByDomain($query)){ - $request->merge(['company_key' => $company->company_key]); - // $request->merge(['account_id' => $company->account_id, 'company_key' => $company->company_key]); + //$request->merge(['company_key' => $company->company_key]); + session()->put('company_key', $company->company_key); } else { @@ -73,8 +73,8 @@ class SetDomainNameDb ]; if($company = MultiDB::findAndSetDbByDomain($query)){ - $request->merge(['company_key' => $company->company_key]); - //$request->merge(['account_id' => $company->account_id, 'company_key' => $company->company_key]); + //$request->merge(['company_key' => $company->company_key]); + session()->put('company_key', $company->company_key); } else {