File: D:/HostingSpaces/bomacon/bomacon.nl/vendor/komma/kms/src/Providers/AuthServiceProvider.php
<?php
namespace Komma\KMS\Providers;
use Illuminate\Support\Facades\Gate;
use Komma\KMS\ActionLog\ActionLogPolicy;
use Komma\KMS\ActionLog\Models\ActionLog;
use Komma\KMS\Sites\Models\Site;
use Komma\KMS\Sites\Models\SiteInterface;
use Komma\KMS\Sites\SitePolicy;
use Komma\KMS\Users\Models\KmsUser;
use Komma\KMS\Users\KmsUserPolicy;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
class AuthServiceProvider extends ServiceProvider
{
/**
* The policy mappings for the application.
*
* @var array
*/
protected $policies = [
KmsUser::class => KmsUserPolicy::class,
ActionLog::class => ActionLogPolicy::class,
Site::class => SitePolicy::class
];
/**
* Register any application authentication / authorization services.
*
* @return void
*/
public function boot()
{
parent::registerPolicies();
$this->registerExtendedModelPolicies();
}
public function registerExtendedModelPolicies()
{
//Get the class names from the bound interfaces.
$siteClass = get_class(app(SiteInterface::class));
//Register the appropriate policies.
Gate::policy($siteClass, SitePolicy::class);
}
}