2017 © Pedro Peláez
 

library laravel-permission-roles

image

despark/laravel-permission-roles

  • Thursday, December 22, 2016
  • by tbanov
  • Repository
  • 9 Watchers
  • 3 Stars
  • 27 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

Laravel Permission Roles

Installation

Open composer.json file of your project and add the following to the require array:, (*1)


"despark/laravel-permission-roles" : "1.0.*"

Now run composer update to install the new requirement., (*2)

Once it's installed, you need to register the service provider in app/config/app.php in the providers array:, (*3)


'providers' => array( ... 'Despark\LaravelPermissionRoles\LaravelPermissionRolesServiceProvider', );

Migrate required tables: php artisan migrate --package="despark/laravel-permission-roles" command will create: roles, role_user, permissions, permission_role - tables, (*4)

How to use it

  • User Model Example

use Despark\LaravelPermissionRoles\PermissionTrait; class User extends Eloquent { use PermissionTrait; }
  • Attach Role to User

$input = Input::all(); $user = new User(); $user = $user->create($input); $user->attachRole(array_get($input, 'role'));
  • Update user Role

$user = User::findOrFail($id) $user->changeRole(Input::get('role'));
  • Use Role Model

use Despark\LaravelPermissionRoles\Role; class RoleController extends BaseController { Role::findOrFail($id); }

Roles table alt tag, (*5)

  • Add permissions to Role

$input = Input::all(); $role = Role::findOrFail($id); $role->update($input); if ($role->permissions->count()) { $role->permissions()->detach($role->permissions->lists('id')); $role->permissions()->attach(array_get($input, 'permissions')); }
  • Check if current user has permission

Auth::user()->canLoginToAdmin() // permission slug 'login_to_admin' Auth::user()->canAddUsers() // permission slug 'edit_user' Auth::user()->canEditUsers() // permission slug 'edit_page'

Permissions table alt tag, (*6)

Permission based routes

filters.php, (*7)


Route::filter('admin.permission', function () { $route = explode('/', \Route::getCurrentRoute()->getPath()); if (!Auth::user()->can('edit_'.str_replace('-', '_', array_get($route, 1)))) { throw new \Exception("Sorry, you don't have permission to access this page."); } });

routes.php, (*8)


Route::group( ['before' => 'admin.permission'], function () { Route::resource('user', 'UserController'); } ); Route::group( ['before' => 'admin.permission'], function () { Route::resource('page', 'PageController'); } );

The Versions

22/12 2016

v1.x-dev

1.9999999.9999999.9999999-dev

  Sources   Download

MIT

The Requires

 

by Tihomir Banov

laravel framework roles permissions despark

22/12 2016

dev-master

9999999-dev

Permission roles package for laravel framework

  Sources   Download

MIT

The Requires

 

by Tihomir Banov

laravel framework roles permissions despark

16/10 2015

v2.0.0

2.0.0.0

Permission roles package for laravel framework

  Sources   Download

MIT

The Requires

 

by Tihomir Banov

laravel framework roles permissions despark

08/06 2015

v1.0.1

1.0.1.0

  Sources   Download

MIT

The Requires

 

by Tihomir Banov

laravel framework roles permissions despark

05/06 2015

v1.0.0

1.0.0.0

  Sources   Download

MIT

The Requires

 

by Tihomir Banov

laravel framework roles permissions despark