public function setupFounderAndBaseRolesPermission()
 {
     $founder = new App\Role();
     $founder->name = 'founder';
     $founder->display_name = 'Project founder';
     $founder->description = 'User is the founder of a given project';
     $founder->save();
     $admin = new App\Role();
     $admin->name = 'admin';
     $admin->display_name = 'User Administrator';
     $admin->description = 'User is allowed to manage and edit other users';
     $admin->save();
     $user = new App\User();
     $user->username = '******';
     $user->email = '*****@*****.**';
     $user->password = bcrypt('admin');
     $user->is_admin = '1';
     $user->save();
     if (!$user->save()) {
         Log::info('Unable to create user ' . $user->username, (array) $user->errors());
     } else {
         Log::info('Create user ' . $user->username . '<' . $user->email . '>');
     }
     $user->attachRole($founder);
     $createPost = new App\Permission();
     $createPost->name = 'manage_contents';
     $createPost->display_name = 'Manage contents';
     $createPost->description = 'Manage site all contents and post';
     $createPost->save();
     $editUser = new App\Permission();
     $editUser->name = "edit_users";
     $editUser->display_name = "Edit user";
     $editUser->description = "edit user info";
     $editUser->save();
     $founder->attachPermission($createPost, $editUser);
     $admin->attachPermission($createPost);
 }