Download the PHP package bbs-lab/nova-permission without Composer

On this page you can find all versions of the php package bbs-lab/nova-permission. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package nova-permission

Laravel Nova permission tool

Latest Version on Packagist StyleCI Quality Score Total Downloads

Based on spatie/permission, this tool gives you ability to manage roles and permission. The tool provides permission builder.

Contents

Installation

To get started, you will need to install the following dependencies

The service provider will automatically get registered. Or you may manually add the service provider in your config/app.php file:

You should publish the migrations with:

You can publish the config files with:

This will publish config/permission.php and config/nova-permission.php files with the following contents:

After the migration has been published you can create the role and permission tables by running the migrations :

Usage

You must register the tool with Nova. This is typically done in the tools method of the NovaServiceProvider:

Generate permissions

The tool allow to generate resource permissions. Your resources must implement BBSLab\NovaPermission\Contracts\HasAbilities and define the public static $permissionsForAbilities variable :

This configuration will generate the following permission:

You may generate permission from the permission builder tool with the Generate permissions button or the Artisan command:

Protect resources

You may use authorization policies and extend the provided BBSLab\NovaPermission\Policies\Policy class

[!IMPORTANT]
You must create a policy for each model you want to protect else the default permissions will be applied!

The base Policy class takes care of the following actions for you :

You are free to add or update methods.

Sometimes you may want to protect a particular resource. First the model must implement the BBSLab\NovaPermission\Contracts\HasAuthorizations interface and use the BBSLab\NovaPermission\Traits\Authorizations trait :

You need to add the resource in the config/nova-permission.php:

You can now create a permission for a specific post:

[!TIP] If you want to have custom permissions for each model you create you can create an observer to create the permission automatically.

And update the post policy:

[!TIP] If you create a custom permission for a model which is named like a Nova action (e.g. view) you don't need to update your policy.

Super admin

You may want to create a role as super admin. You can do that using the override_permission attribute.

You may prevent override_permission attribute modification by using the BBSLab\NovaPermission\Resources\Role::canSeeOverridePermmission method:

Changelog

Please see CHANGELOG for more information what has changed recently.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of nova-permission with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1 || ^8.2 || ^8.3
laravel/nova Version ^4.0 || ^5.0
nova-kit/nova-packages-tool Version ^1.3.1
spatie/laravel-package-tools Version ^1.16
spatie/laravel-permission Version ^6.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package bbs-lab/nova-permission contains the following files

Loading the files please wait ....