/SleepingOwlAdmin

Administrative interface builder for Laravel

Primary LanguageJavaScriptMIT LicenseMIT

bg

Laravel 5.2 Admin Module

Build Status StyleCI Join the chat at https://gitter.im/LaravelRUS/SleepingOwlAdmin Latest Stable Version License

Note: This is the development version. If you are looking for the stable version check out master branch.

SleepingOwl Admin is an administrative interface builder for Laravel.

Used bower packages:

  • jquery
  • bootstrap
  • bootbox
  • datetimepicker
  • fontawesome
  • moment
  • nestable
  • noty
  • ckeditor
  • Sortable
  • select2
  • flow.js
  • ekko-lightbox
  • metisMenu
  • datatables
  • startbootstrap-sb-admin-2

Installation

  1. Require this package in your composer.json and run composer update:
"require": {
  "php": ">=5.5.9",
  "laravel/framework": "5.2.*",
  ...
  "laravelrus/sleepingowl": "4.*@dev"
},

Or composer require laravelrus/sleepingowl:4.*@dev

  1. After composer update, insert service provider SleepingOwl\Admin\Providers\SleepingOwlServiceProvider::class, before Application Service Providers... to the config/app.php

Example

    ...
    /*
     * SleepingOwl Service Provider
     */
      SleepingOwl\Admin\Providers\SleepingOwlServiceProvider::class,

      /*
     * Application Service Providers...
     */
    App\Providers\AppServiceProvider::class,
    ...
  1. Run this command in the terminal (if you want to know more about what exactly this command does, see install command documentation):

    $ php artisan sleepingowl:install

Laravel 5.1 usage

SleepingOwl are compatible with Laravel 5.1. But full performance is not guaranteed.

Installation

  • See Installation section of Laravel 5.2
  • After all actions: open config/sleeping_owl.php and change 'middleware' => ['web'] to 'middleware' => []

Upgrade from 4.18.x to 4.19.x

HtmlAttributes

Class has been moved to composer package kodicomponents\support for using in other projects and methods have been changed for more compatibility.

  • setAttribute -> setHtmlAttribute
  • setAttributes -> setHtmlAttributes
  • getAttribute -> getHtmlAttribute
  • getAttributes -> getHtmlAttributes
  • hasAttribute -> hasHtmlAttribute
  • replaceAttribute -> replaceHtmlAttribute
  • removeAttribute -> removeHtmlAttribute
  • clearAttributes -> clearHtmlAttributes
  • hasClass -> hasClassProperty

Navigation

Navigation classes have been move to composer package kodicomponents\navigation for using in other projects.


Authentication

By default, admin module uses Laravel authentication.

If you want to use auth, you can run artisan command php artisan make:auth (https://laravel.com/docs/5.2/authentication) and append middleware auth to config/sleeping_owl.php

Supporting of old authentication

If you want to migrate from an older version you can use old auth.

Steps:

  1. Add new user provider in config/auth.php
'providers' => [
  'users' => [
    'driver' => 'eloquent',
    'model' => App\User::class,
  ],
  'administrators' => [
    'driver' => 'eloquent',
    'model' => SleepingOwl\Admin\Auth\Administrator::class,
  ],
],
  1. Add new guards or change existing in config/auth.php
'guards' => [
  'web' => [
    'driver' => 'session',
    'provider' => 'administrators', // change existing provider
  ],
  
  // or add new
  
  'admin' => [
    'driver' => 'session',
    'provider' => 'administrators',
  ],
],
  1. Setting up middleware

By default auth middleware use default guard, selected in config/auth.php

'defaults' => [
  'guard' => 'web', <- default
  ...
],

You can change default guard to admin or change middleware in config/sleeping_owl.php to

'middleware' => ['web', 'auth:admin'],

Demo project

You can download the demo project at https://github.com/SleepingOwlAdmin/demo

Documentation

Copyright and License

Admin was written by Sleeping Owl for the Laravel framework and is released under the MIT License. See the LICENSE file for details.