2016-04-23 11:52:36 -04:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Providers;
|
|
|
|
|
|
2017-11-14 10:58:08 +02:00
|
|
|
use Gate;
|
2016-04-23 11:52:36 -04:00
|
|
|
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
|
|
|
|
|
|
|
|
|
|
class AuthServiceProvider extends ServiceProvider
|
|
|
|
|
{
|
|
|
|
|
/**
|
|
|
|
|
* The policy mappings for the application.
|
|
|
|
|
*
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
protected $policies = [
|
2016-04-25 21:53:39 -04:00
|
|
|
\App\Models\Client::class => \App\Policies\ClientPolicy::class,
|
2017-03-27 11:33:37 +03:00
|
|
|
\App\Models\Contact::class => \App\Policies\ContactPolicy::class,
|
2016-04-25 21:53:39 -04:00
|
|
|
\App\Models\Credit::class => \App\Policies\CreditPolicy::class,
|
|
|
|
|
\App\Models\Document::class => \App\Policies\DocumentPolicy::class,
|
|
|
|
|
\App\Models\Expense::class => \App\Policies\ExpensePolicy::class,
|
2017-06-26 07:16:29 +03:00
|
|
|
\App\Models\RecurringExpense::class => \App\Policies\RecurringExpensePolicy::class,
|
2016-07-06 21:35:16 +03:00
|
|
|
\App\Models\ExpenseCategory::class => \App\Policies\ExpenseCategoryPolicy::class,
|
2016-04-25 21:53:39 -04:00
|
|
|
\App\Models\Invoice::class => \App\Policies\InvoicePolicy::class,
|
2018-07-24 22:35:49 +10:00
|
|
|
\App\Models\Quote::class => \App\Policies\QuotePolicy::class,
|
2016-04-25 21:53:39 -04:00
|
|
|
\App\Models\Payment::class => \App\Policies\PaymentPolicy::class,
|
|
|
|
|
\App\Models\Task::class => \App\Policies\TaskPolicy::class,
|
|
|
|
|
\App\Models\Vendor::class => \App\Policies\VendorPolicy::class,
|
2016-05-02 16:12:37 +03:00
|
|
|
\App\Models\Product::class => \App\Policies\ProductPolicy::class,
|
|
|
|
|
\App\Models\TaxRate::class => \App\Policies\TaxRatePolicy::class,
|
2016-05-06 15:05:28 -04:00
|
|
|
\App\Models\AccountGateway::class => \App\Policies\AccountGatewayPolicy::class,
|
2016-08-02 17:38:51 +03:00
|
|
|
\App\Models\AccountToken::class => \App\Policies\TokenPolicy::class,
|
2017-11-29 12:44:28 +02:00
|
|
|
\App\Models\Subscription::class => \App\Policies\SubscriptionPolicy::class,
|
2016-05-06 15:05:28 -04:00
|
|
|
\App\Models\BankAccount::class => \App\Policies\BankAccountPolicy::class,
|
|
|
|
|
\App\Models\PaymentTerm::class => \App\Policies\PaymentTermPolicy::class,
|
2016-11-29 19:47:26 +02:00
|
|
|
\App\Models\Project::class => \App\Policies\ProjectPolicy::class,
|
2017-08-31 15:55:15 +03:00
|
|
|
\App\Models\AccountGatewayToken::class => \App\Policies\CustomerPolicy::class,
|
2018-01-31 16:33:33 +02:00
|
|
|
\App\Models\Proposal::class => \App\Policies\ProposalPolicy::class,
|
|
|
|
|
\App\Models\ProposalSnippet::class => \App\Policies\ProposalSnippetPolicy::class,
|
|
|
|
|
\App\Models\ProposalTemplate::class => \App\Policies\ProposalTemplatePolicy::class,
|
|
|
|
|
\App\Models\ProposalCategory::class => \App\Policies\ProposalCategoryPolicy::class,
|
2019-01-30 22:00:26 +11:00
|
|
|
\App\Models\Ticket::class => \App\Policies\TicketPolicy::class,
|
|
|
|
|
\App\Models\TicketCategory::class => \App\Policies\TicketCategoryPolicy::class,
|
2016-04-23 11:52:36 -04:00
|
|
|
];
|
2016-05-06 15:05:28 -04:00
|
|
|
|
2016-04-23 11:52:36 -04:00
|
|
|
/**
|
|
|
|
|
* Register any application authentication / authorization services.
|
|
|
|
|
*
|
2017-01-30 21:40:43 +02:00
|
|
|
* @param \Illuminate\Contracts\Auth\Access\Gate $gate
|
|
|
|
|
*
|
2016-04-23 11:52:36 -04:00
|
|
|
* @return void
|
|
|
|
|
*/
|
2017-11-14 10:58:08 +02:00
|
|
|
public function boot()
|
2016-04-23 11:52:36 -04:00
|
|
|
{
|
2019-01-30 22:00:26 +11:00
|
|
|
foreach ($this->policies as $key => $policy) {
|
|
|
|
|
|
|
|
|
|
foreach (get_class_methods(new $policy) as $method)
|
|
|
|
|
Gate::define($method, "{$policy}@{$method}");
|
|
|
|
|
|
2016-04-25 21:53:39 -04:00
|
|
|
}
|
2016-07-06 21:35:16 +03:00
|
|
|
|
2017-11-14 10:58:08 +02:00
|
|
|
$this->registerPolicies();
|
2016-04-23 11:52:36 -04:00
|
|
|
}
|
2016-07-06 21:35:16 +03:00
|
|
|
}
|