/** * Run the database seeds. * * @return void */ public function run() { // create a user. Administrator::truncate(); Administrator::create(['username' => 'admin', 'password' => bcrypt('admin'), 'name' => 'Administrator']); // create a role. Role::truncate(); Role::create(['name' => 'Administrator', 'slug' => 'administrator']); // add role to user. Administrator::first()->roles()->sync(Role::first()->toArray()); // add default menus. Menu::truncate(); Menu::insert([['parent_id' => 0, 'order' => 1, 'title' => 'Index', 'icon' => 'fa-bar-chart', 'uri' => '/'], ['parent_id' => 0, 'order' => 2, 'title' => 'Auth', 'icon' => 'fa-tasks', 'uri' => ''], ['parent_id' => 2, 'order' => 3, 'title' => 'Users', 'icon' => 'fa-users', 'uri' => 'auth/users'], ['parent_id' => 2, 'order' => 4, 'title' => 'Roles', 'icon' => 'fa-user', 'uri' => 'auth/roles'], ['parent_id' => 2, 'order' => 5, 'title' => 'Permission', 'icon' => 'fa-user', 'uri' => 'auth/permissions'], ['parent_id' => 2, 'order' => 6, 'title' => 'Menu', 'icon' => 'fa-bars', 'uri' => 'auth/menu']]); }
/** * Make a form builder. * * @return Form */ public function form() { return Admin::form(Menu::class, function (Form $form) { $form->display('id', 'ID'); $options = [0 => 'Root'] + Menu::buildSelectOptions(); $form->select('parent_id', trans('admin::lang.parent_id'))->options($options); $form->text('title', trans('admin::lang.title'))->rules('required'); $form->text('icon', trans('admin::lang.icon'))->default('fa-bars')->rules('required'); $form->text('uri', trans('admin::lang.uri')); $form->multipleSelect('roles', trans('admin::lang.roles'))->options(Role::all()->pluck('name', 'id')); $form->display('created_at', trans('admin::lang.created_at')); $form->display('updated_at', trans('admin::lang.updated_at')); }); }
/** * Left sider-bar menu. * * @return array */ public function menu() { return Menu::toTree(); }
public function testEditMenu() { $this->visit('admin/auth/menu/1/edit')->see('Menu')->submitForm('Submit', ['title' => 'blablabla'])->seePageIs('admin/auth/menu')->seeInDatabase(config('admin.database.menu_table'), ['title' => 'blablabla'])->assertEquals(6, Menu::count()); }