Skip to content

mullian/Sentinel

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sentinel: Sentry Implementation for Laravel 4

This pacakge provides an implementation of Sentry 2 for Laravel 4. By default it uses Bootstrap 3.0, but you can make use of whatever UI you want.

Instructions

This package can be installed using Composer:

$ composer require rydurham/sentinel

Make sure you have configured your app's Database and Mail settings.

Add the Service Provider to your app/config/app.php file:

'providers' => array(
    ...
    'Sentinel\SentinelServiceProvider', 
    ...
)

Run the Migrations:

php artisan migrate --package=rydurham/sentinel

Seed the Database:

php artisan db:seed --class="SentinelDatabaseSeeder"

Publish the package assets:

php artisan asset:publish rydurham/sentinel

Set a "Home" Route. This package requires that you have a named 'home' route in your routes.php file:

// Set Home Route
 Route::get('/', array('as' => 'home', function()
{
    return View::make('home');
}));

Optional: Publish Views

php artisan view:publish rydurham/sentinel

Optional: Publish Configuration

php artisan config:publish rydurham/sentinel

The config file will allow you to control many aspects of Sentinels operation. Take a look to see what options are available. If you want to add fields to your user table, this can be done with the config options.

Usage: Filters and Routes

Once installed, Sentinel adds a series of routes for User interaction. You will need to add links to these routes in your app's layouts.

  • yoursite.tld/login
  • yoursite.tld/logout
  • yoursite.tld/register
  • yoursite.tld/users - For user management. Only available to admins
  • yoursite.tld/groups - For group management. Only available to admins.

Sentinel also provides these filters which you can use to prevent unauthorized access to your app's routes & methods.

  • Sentinel\auth - Require users to be successfully logged in
  • Sentinel\inGroup:Admins - Block access to all but members of the Admin group. If you create your own groups, you can use it as such: Sentinel\inGroup:[YourGroup].

Documentation & Questions

Check the Wiki for more information about the package:

  • Config Options
  • Events & Listeners
  • Seed & Migration Details
  • Default Routes
  • Basic API Info
  • Package Version History

Any questions about this package should be posted on the package website.

Localization

Sentinel has been translated into several other languages, and new translations are always welcome! Check out the Sentinel Page on CrowdIn for more details.

Tests

Tests are powered by Codeception. Currently they must be run within a Laravel application environment. To run the tests:

  • Pull in the require-dev dependencies via composer.
  • Navigate to the Sentinel folder
  • Run vendor/bin/codecept run

I would reccommend turning on "Mail Pretend" in your testing mail config file.

About

A Sentry bridge package for Laravel 4

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.7%
  • JavaScript 0.3%