ActivityPolicy::class, BankIntegration::class => BankIntegrationPolicy::class, BankTransaction::class => BankTransactionPolicy::class, BankTransactionRule::class => BankTransactionRulePolicy::class, Client::class => ClientPolicy::class, Company::class => CompanyPolicy::class, CompanyToken::class => CompanyTokenPolicy::class, CompanyGateway::class => CompanyGatewayPolicy::class, Credit::class => CreditPolicy::class, Design::class => DesignPolicy::class, Document::class => DocumentPolicy::class, Expense::class => ExpensePolicy::class, ExpenseCategory::class => ExpenseCategoryPolicy::class, GroupSetting::class => GroupSettingPolicy::class, Invoice::class => InvoicePolicy::class, Payment::class => PaymentPolicy::class, PaymentTerm::class => PaymentTermPolicy::class, Product::class => ProductPolicy::class, Project::class => ProjectPolicy::class, PurchaseOrder::class => PurchaseOrderPolicy::class, Quote::class => QuotePolicy::class, RecurringExpense::class => RecurringExpensePolicy::class, RecurringInvoice::class => RecurringInvoicePolicy::class, RecurringQuote::class => RecurringQuotePolicy::class, Scheduler::class => SchedulerPolicy::class, Subscription::class => SubscriptionPolicy::class, Task::class => TaskPolicy::class, TaskStatus::class => TaskStatusPolicy::class, TaxRate::class => TaxRatePolicy::class, User::class => UserPolicy::class, Vendor::class => VendorPolicy::class, Webhook::class => WebhookPolicy::class, ]; /** * Register any authentication / authorization services. * * @return void */ public function boot() { $this->registerPolicies(); Gate::define('view-list', function ($user, $entity) { $entity = strtolower(class_basename($entity)); return $user->hasPermission('view_'.$entity) || $user->isAdmin(); }); } }