Added comments

Signed-off-by: snipe <snipe@snipe.net>
This commit is contained in:
snipe 2024-04-11 15:15:56 +01:00
parent 710370ac24
commit 0d23d28a65
2 changed files with 22 additions and 10 deletions

View file

@ -5,8 +5,13 @@ namespace App\Models;
trait CompanyableTrait trait CompanyableTrait
{ {
/** /**
* Boot the companyable trait for a model. * This trait is used to scope models to the current company. To use this scope on companyable models,
* we use the "use Companyable;" statement at the top of the mode.
* *
* We CANNOT USE THIS ON USERS, as it causes an infinite loop and prevents users from logging in, since this scope will be
* applied to the currently logged in (or logging in) user in addition to the user model for viewing lists of users.
*
* @see \App\Models\Company\Company::scopeCompanyables()
* @return void * @return void
*/ */
public static function bootCompanyableTrait() public static function bootCompanyableTrait()

View file

@ -93,21 +93,28 @@ class AuthServiceProvider extends ServiceProvider
Passport::personalAccessTokensExpireIn(Carbon::now()->addYears(config('passport.expiration_years'))); Passport::personalAccessTokensExpireIn(Carbon::now()->addYears(config('passport.expiration_years')));
Passport::withCookieSerialization(); Passport::withCookieSerialization();
// --------------------------------
// BEFORE ANYTHING ELSE /**
// -------------------------------- * BEFORE ANYTHING ELSE
// If this condition is true, ANYTHING else below will be assumed *
// to be true. This can cause weird blade behavior. * If this condition is true, ANYTHING else below will be assumed to be true.
* This is where we set the superadmin permission to allow superadmins to be able to do everything within the system.
*
*/
Gate::before(function ($user) { Gate::before(function ($user) {
if ($user->isSuperUser()) { if ($user->isSuperUser()) {
return true; return true;
} }
}); });
// --------------------------------
// GENERAL GATES /**
// These control general sections of the admin * GENERAL GATES
// -------------------------------- *
* These control general sections of the admin. These definitions are used in our blades via @can('blah) and also
* use in our controllers to determine if a user has access to a certain area.
*/
Gate::define('admin', function ($user) { Gate::define('admin', function ($user) {
if ($user->hasAccess('admin')) { if ($user->hasAccess('admin')) {
return true; return true;