2017 © Pedro Peláez
 

library rap

Laravel roles and permission simple package

image

processdrive/rap

Laravel roles and permission simple package

  • Thursday, June 14, 2018
  • by antony382
  • Repository
  • 1 Watchers
  • 0 Stars
  • 23 Installations
  • CSS
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

, (*1)

Latest Stable Version Latest Unstable Version License, (*2)

Roles And Permission (RAP)

A simple package to assign RAP(Roles And Permission) for an application., (*3)

Installation

Via composer, (*4)

composer require "processdrive/rap":"dev-master"

Or set in composer.json, (*5)

"require": {
    "processdrive/rap":"dev-master"
}

Register Dependencies

Set configuration in config/app.php, (*6)

// Set providers.
'providers' => [
    Collective\Html\HtmlServiceProvider::class,
    processdrive\rap\RAPServiceProvider::class,
]

// Set aliases
'aliases' => [
    'Form' => 'Collective\Html\FormFacade',
    'Html' => 'Collective\Html\HtmlFacade',
    'RAPHelper' => processdrive\rap\app\Helpers\RAPHelper::class,
],

Set relationship in app/User.php, (*7)

/**
 * @return @return \Illuminate\Database\Eloquent\Relations\belongsToMany
 */
public function roles() {
    return $this->belongsToMany("App\Models\Role","user_role", "user_id", "role_id");
}

/**
 * [hasPermission]
 * @param  [str]  $permission
 * @return boolean
 */
public function hasPermission($permission) {
    return $this->roles()->get()[0]->hasPermission($permission);
}

Publish the package

php artisan vendor:publish --all

Configuration

Set configuration in config/rap/rap_config.php, (*8)

return [

    // Set Route access enable or disable
    'use_package_routes' => true,

    // Set middlewares
    'middlewares' => ['auth', 'CheckRole'],

    // Set Static Action
    'static_action' => [
        'index' => 'List', 
        'create' => 'Create', 
        'show' => 'Show', 
        'edit' => 'Edit', 
        'destroy' => 'Destroy', 
        'store' => 'Store', 
        'update' => 'Update', 
        'delete' => 'Delete'
    ],

    //Set Omit Action it will be womited from permission module.
    'omit_action' => []
];

Run command

composer dump-autoload

Run migration

php artisan migrate

Generate translation and DB seed

php artisan rap_generate:translation

Edit translation files

resources/lang/en/rap_actions.php
resources/lang/en/rap_modules.php

Add Route

Add Route in routes/web.php, (*9)

Route::group(['middleware' => 'CheckRole'], function () {
    //add routes which are going to validate by RAP.
});

RAPHelper::routes();

Add ifream in your application

Add ifream in your application, (*10)

<iframe src="{{ route('rap', 'roles.index') }}" width="100%" height="100%" style=" border: 0;"></iframe>

Register Middelware

register in your app/Http/kernel.php, (*11)

protected $routeMiddleware = [
    'CheckRole' => processdrive\rap\app\Http\Middleware\CheckRole::class,
];     

Usage

@hasPermission("viewSettings")
    // your code
@endHasPermission

The Versions

14/06 2018

dev-master

9999999-dev

Laravel roles and permission simple package

  Sources   Download

MIT

The Requires

 

by jai
by Agustine
by ProcessDrive

laravel roles permission laravel acl roles and permission laravel roles and permission laravel rap