public function anyUsers() { Admin::grid(App\User::class, function (Admin\Grid $grid) { $grid->id('ID'); $grid->username('用户名'); $grid->email('邮箱')->attrs(['class' => 'email']); $grid->profile()->mobile('手机号')->value(function ($mobile) { return "+86{$mobile}"; }); $grid->profile()->avatar('头像')->value(function ($avatar) { return "<img src='{$avatar}' />"; }); $grid->created_at('创建时间')->sortable(); $grid->updated_at('修改时间'); $grid->column('profile.mobile', '手机号'); $grid->column('profile.avatar', '头像'); $grid->column('profile.address', '地址'); $grid->tags('标签'); $grid->actions('view|delete|update'); $grid->model()->where('id', '>', 100)->orderBy('id', 'asc')->paginate(20); $grid->rows(function ($row) { if ($row->id()->value % 2) { $row->id()->style(['color' => '#f00']); $row->attrs(['class' => 'highlight']); } }); })->render(); Admin::edit(App\User::class, function ($edit) { $edit->id('id', 'ID')->readonly(); $edit->text('text', '用户名'); $edit->email('email', '邮箱'); $edit->password('password', '密码'); $edit->hidden('hidden', '隐藏域'); $edit->textarea('summary', '简介'); $edit->editor('detail', '详细介绍'); $edit->markdown('markdown', 'markdown文档'); $edit->date('date', '日期')->rules('required'); $edit->time('time', '时间'); $edit->datetime('datetime', '日期时间'); $edit->dateRange('start', 'end', '日期范围'); $edit->dateTimeRange('start', 'end', '日期时间范围'); $edit->ip('ip', 'ip地址')->save(function ($input) { return ip2long($input); })->show(function ($value) { return long2ip($value); }); $edit->select('category', '分类')->options([]); $edit->multipleSelect('category', '分类')->options([]); $edit->radio('recommend', '是否推荐')->options([0 => '是', 3 => '否']); $edit->checkbox('category')->value([0, 1]); $edit->checkboxGroup('category')->options([0 => '是', 2 => '否']); $edit->color('color', '颜色'); $edit->file('document', '附件')->upload(); $edit->image('picture')->upload()->size()->preview(); $edit->map('lan', 'lon', '位置')->driver('baidu'); $edit->json('setting', '配置'); $edit->submit('提交'); $edit->reset('撤销'); }); }
/** * Send error response page. * * @param \Exception $e */ protected static function error() { $content = Admin::content(function ($content) { $content->body(view('admin::deny')); }); response($content)->send(); exit; }
/** * Render a tree. * * @return \Illuminate\Http\JsonResponse|string */ public function render() { if (Request::capture()->has('_tree')) { return response()->json(['status' => $this->saveTree(Request::capture()->get('_tree'))]); } $this->buildupScript(); AdminManager::script($this->script); view()->share(['path' => $this->path]); return view('admin::tree', $this->variables())->render(); }
/** * Make a form builder. * * @return Form */ public function form() { return Admin::form(Permission::class, function (Form $form) { $form->display('id', 'ID'); $form->text('slug', trans('admin::lang.slug'))->rules('required'); $form->text('name', trans('admin::lang.name'))->rules('required'); $form->display('created_at', trans('admin::lang.created_at')); $form->display('updated_at', trans('admin::lang.updated_at')); }); }
/** * Make a form builder. * * @return Form */ public function form() { return Admin::form(Role::class, function (Form $form) { $form->display('id', 'ID'); $form->text('slug', trans('admin::lang.slug'))->rules('required'); $form->text('name', trans('admin::lang.name'))->rules('required'); $form->multipleSelect('permissions', trans('admin::lang.permissions'))->options(Permission::all()->pluck('name', 'id')); $form->display('created_at', trans('admin::lang.created_at')); $form->display('updated_at', trans('admin::lang.updated_at')); }); }
/** * @return string */ public function render() { $data = json_encode($this->data); $options = json_encode($this->options); $script = <<<SCRIPT var data = { labels: ["January", "February", "March", "April", "May", "June", "July"], datasets: [ { label: "My First dataset", fillColor: "rgba(220,220,220,0.2)", strokeColor: "rgba(220,220,220,1)", pointColor: "rgba(220,220,220,1)", pointStrokeColor: "#fff", pointHighlightFill: "#fff", pointHighlightStroke: "rgba(220,220,220,1)", data: [65, 59, 80, 81, 56, 55, 40] }, { label: "My Second dataset", fillColor: "rgba(151,187,205,0.2)", strokeColor: "rgba(151,187,205,1)", pointColor: "rgba(151,187,205,1)", pointStrokeColor: "#fff", pointHighlightFill: "#fff", pointHighlightStroke: "rgba(151,187,205,1)", data: [28, 48, 40, 19, 86, 27, 90] } ] }; var ctx = \$("#chart").get(0).getContext("2d"); var myNewChart = new Chart(ctx).Line(data); SCRIPT; Admin::script($script); Admin::js($this->js); return view('admin::chart')->render(); }
/** * Create routes file. * * @return void */ protected function createRoutesFile() { $file = $this->directory . '/routes.php'; $contents = $this->getStub('routes'); $this->laravel['files']->put($file, str_replace('DummyNamespace', Admin::controllerNamespace(), $contents)); $this->line('<info>Routes file was created:</info> ' . str_replace(base_path(), '', $file)); }
/** * Prepare admin route group attributes. * * @return void */ protected function prepareAttributes() { $this->attributes = ['prefix' => config('admin.prefix'), 'namespace' => Admin::controllerNamespace(), 'middleware' => ['web', 'admin.auth']]; }
/** * Make a form builder. * * @return Form */ public function form() { return Admin::form(Administrator::class, function (Form $form) { $form->display('id', 'ID'); $form->text('username', trans('admin::lang.username'))->rules('required'); $form->text('name', trans('admin::lang.name'))->rules('required'); $form->password('password', trans('admin::lang.password'))->rules('required'); $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')); $form->saving(function (Form $form) { if ($form->password && $form->model()->password != $form->password) { $form->password = bcrypt($form->password); } }); }); }
/** * 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')); }); }
/** * Execute the console command. * * @return void */ public function fire() { $menu = Admin::menu(); echo json_encode($menu, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE), "\r\n"; }