Recipes/database/seeders/RoleSeeder.php

40 lines
1.1 KiB
PHP

<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use App\Role;
use App\User;
use App\Permission;
class RoleSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$user_admin=Role::updateOrCreate(['name'=>'User Admin', 'description'=>'Administrates Users']);
$role_admin=Role::updateOrCreate(['name'=>'Role Admin', 'description'=>'Administrates Roles']);
$user_perms=['Create User','Edit User','Delete User','Reset Password','Assign Role'];
$uperms=array();
foreach ($user_perms as $perm){
array_push($uperms,Permission::where('name',$perm)->first()->id);
}
$user_admin->permissions()->sync($uperms);
$role_perms=['Create Role','Edit Role','Delete Role'];
$rperms=array();
foreach ($role_perms as $perm){
array_push($rperms,Permission::where('name',$perm)->first()->id);
}
$role_admin->permissions()->sync($rperms);
//Add User and Role Admin to first entry in Users Table
$first_user = User::orderBy('id')->first();
$first_user->roles()->sync([$user_admin->id,$role_admin->id]);
}
}