* create zapier app * install sanctum * move OAuthProviderController * make `api-external` middleware * add zapier endpoints * add tests * token management * zapier event handler * add policy * use `slug` instead of `id` * wip * check policies * change api prefix to `external` * ui tweaks * validate token abilities * open zapier URL * zapier ui tweaks * update zap * Fix linting * Added sample endpoints + minor UI changes * Run PHP code linter --------- Co-authored-by: Julien Nahum <julien@nahum.net>
47 lines
1.3 KiB
PHP
47 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Providers;
|
|
|
|
use App\Models\Forms\Form;
|
|
use App\Models\Integration\FormZapierWebhook;
|
|
use App\Models\OAuthProvider;
|
|
use App\Models\Template;
|
|
use App\Models\Workspace;
|
|
use App\Policies\FormPolicy;
|
|
use App\Policies\Integration\FormZapierWebhookPolicy;
|
|
use App\Policies\OAuthProviderPolicy;
|
|
use App\Policies\PersonalAccessTokenPolicy;
|
|
use App\Policies\TemplatePolicy;
|
|
use App\Policies\WorkspacePolicy;
|
|
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
|
|
use Laravel\Sanctum\PersonalAccessToken;
|
|
|
|
class AuthServiceProvider extends ServiceProvider
|
|
{
|
|
/**
|
|
* The policy mappings for the application.
|
|
*
|
|
* @var array
|
|
*/
|
|
protected $policies = [
|
|
Form::class => FormPolicy::class,
|
|
Workspace::class => WorkspacePolicy::class,
|
|
FormZapierWebhook::class => FormZapierWebhookPolicy::class,
|
|
Template::class => TemplatePolicy::class,
|
|
OAuthProvider::class => OAuthProviderPolicy::class,
|
|
PersonalAccessToken::class => PersonalAccessTokenPolicy::class,
|
|
];
|
|
|
|
/**
|
|
* Register any authentication / authorization services.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function boot()
|
|
{
|
|
\Illuminate\Support\Facades\Gate::define('viewMailcoach', function ($user = null) {
|
|
return optional($user)->admin;
|
|
});
|
|
}
|
|
}
|