| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071 | 
							- <?php
 
- namespace App\Admin\Controllers\Content;
 
- use App\Admin\Extensions\Field\Template;
 
- use App\Admin\Extensions\Form\ValueForm;
 
- use App\Http\Controllers\Controller;
 
- use App\Models\Ad;
 
- use App\Models\AdCategory;
 
- use App\Models\Subsite;
 
- use App\Models\SubsiteAd;
 
- use Encore\Admin\Controllers\HasResourceActions;
 
- use Encore\Admin\Facades\Admin;
 
- use Encore\Admin\Form;
 
- use Encore\Admin\Grid;
 
- use Encore\Admin\Grid\Filter;
 
- use Encore\Admin\Layout\Content;
 
- use Encore\Admin\Show;
 
- use Illuminate\Http\Request;
 
- use Illuminate\Support\Facades\Cache;
 
- //use Encore\Admin\Grid;
 
- class AdController extends Controller
 
- {
 
-     use HasResourceActions;
 
-     /**
 
-      * Index interface.
 
-      *
 
-      * @param Content $content
 
-      * @return Content
 
-      */
 
-     public function index(Content $content)
 
-     {
 
-         return $content
 
-             ->header('广告列表')
 
-             ->description(' ')
 
-             ->body(view('admin.content.ad_list')->with(['grid' => $this->grid()]));
 
-     }
 
-     /**
 
-      * Show interface.
 
-      *
 
-      * @param mixed $id
 
-      * @param Content $content
 
-      * @return Content
 
-      */
 
-     public function show($id, Content $content)
 
-     {
 
-         return $content
 
-             ->header('广告列表')
 
-             ->description(' ')
 
-             ->body($this->detail($id));
 
-     }
 
-     /**
 
-      * Edit interface.
 
-      *
 
-      * @param mixed $id
 
-      * @param Content $content
 
-      * @return Content
 
-      */
 
-     public function edit($id, Content $content)
 
-     {
 
-         $info    = Ad::find($id);
 
-         $form    = new ValueForm();
 
-         $ad_info = Ad::findOrFail($id);
 
-         //$form->action('/admin/content/ads/update');
 
-         $form->action(route('admin.ad.update'));
 
-         $form->attribute('enctype', 'multipart/form-data');
 
-         $form->disablePjax();
 
-         $form->text('title', '广告标题')->default($ad_info->title)->help('(区分不同广告条目,并不在广告中显示)')->setWidth(4)->setMustMark();
 
-         $display_option = [
 
-             'on'  => ['value' => 1, 'text' => '是', 'color' => 'success'],
 
-             'off' => ['value' => 0, 'text' => '否', 'color' => 'danger'],
 
-         ];
 
-         $form->switch('is_display', '显示状态')->states($display_option)->default($ad_info->is_display)->setMustMark();
 
-         if ($info->subsite_id == 0) {
 
-             $subsites = Subsite::where(['effective' => 1])->orderBy('order', 'asc')->get()->pluck('sitename', 'id');
 
-         } else {
 
-             $subsites      = Subsite::where([['effective', '=', 1], ['id', '<>', $info->subsite_id]])->orderBy('order', 'asc')->get()->pluck('sitename', 'id')->toArray();
 
-             $subsites['0'] = '总站';
 
-             $subsites      = collect($subsites);
 
-         }
 
-         if ($subsites->isNotEmpty() && $info->subsite_id == 0) {
 
-             $relations = SubsiteAd::where(['ad_id' => $id])->get()->pluck('subsite_id')->toArray();
 
-             $form->multipleSelect('relate_subsites', '同步分站')->options($subsites)->default($relations);
 
-         } else {
 
-             $form->hidden('relate_subsites');
 
-         }
 
-         $form->ignore(['relate_subsites']);
 
-         $cate_option = AdCategory::all()->pluck('category_name', 'id');
 
-         $form->select('category_id', '广告位')->options($cate_option)->default($ad_info->category_id)->setWidth(4)->attribute(['id' => 'sub_category'])->setMustMark();
 
-         $form->number('list_order', '显示顺序')->default($ad_info->list_order)->min(0)->help('(数字越大越靠前)')->setMustMark();
 
-         $form->date('started_at', '开始日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->default($ad_info->started_at)
 
-             ->rules('required|date', ['required' => '开始日期不能为空。', 'date' => '开始日期格式不正确。'])
 
-             ->help('(设置广告起始日期,格式yyyy-mm-dd,留空为不限制起始日期)');
 
-         $form->date('ended_at', '结束日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->default($ad_info->ended_at)
 
-             ->rules('required|date', ['required' => '结束日期不能为空。', 'date' => '结束日期格式不正确。'])
 
-             ->help('(设置广告结束日期,格式yyyy-mm-dd,留空为不限制结束日期)');
 
-         $form->textarea('note', '备注')->default($ad_info->note);
 
-         $form->html("<div id='change_field'></div>")->plain();
 
-         $form->hidden('alias')->value($ad_info->alias)->attribute('id', 'alias');
 
-         $form->hidden('theme')->value($ad_info->theme);
 
-         $form->hidden('type_id')->value($ad_info->type_id)->attribute('id', 'type_id');
 
-         $form->hidden('id')->value($ad_info->id);
 
-         $template = new Template();
 
-         $template->setTemplatesId("text_div");
 
-         if ($ad_info->type_id == '1') {
 
-             $template->text('content', '文字内容')->default($ad_info->content)->help('(文字广告的显示内容)')->setMustMark();
 
-             $template->url('url', '文字链接')->default($ad_info->url)->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-             $template->color('text_color', '文字颜色')->default($ad_info->text_color)->setMustMark();
 
-         } else {
 
-             $template->text('content', '文字内容')->help('(文字广告的显示内容)')->setMustMark();
 
-             $template->url('url', '文字链接')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-             $template->color('text_color', '文字颜色')->setMustMark();
 
-         }
 
-         $template->setTemplatesId("image_div");
 
-         if ($ad_info->type_id == '2') {
 
-             $img_file = null;
 
-             $img_url  = null;
 
-             if (preg_match('/^http/', $ad_info->content)) {
 
-                 $img_url = $ad_info->content;
 
-             } else {
 
-                 $img_file = $ad_info->content;
 
-             }
 
-             $template->image('img_file', '本地上传')->uniqueName()->help('(允许格式为gif/jpg/bmp/png,文件大小1000KB)')->value($img_file)->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->text('img_url', '或图片地址')->default($img_url)->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/img/baidu_logo.gif)');
 
-             $template->url('url', '图片链接')->default($ad_info->url)->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-             $template->text('target', 'target')->default($ad_info->target)->help('(请输入_self等,默认_blank)');
 
-             $template->text('explain', '图片说明文字')->default($ad_info->explain);
 
-             $template->number('uid', '会员UID')->default($ad_info->uid)->min(0)->help('(设置会员UID后,当鼠标移动到图片上将会显示相关的职位和企业信息)');
 
-         } else {
 
-             $template->image('img_file', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为gif/jpg/bmp/png,文件大小1000KB)')->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->text('img_url', '或图片地址')->help('(请输入包含http://或https://的完整链接,如http://www.baidu.com/img/baidu_logo.gif)');
 
-             $template->url('url', '图片链接')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-             $template->text('explain', '图片说明文字');
 
-             $template->number('uid', '会员UID')->min(0)->help('(设置会员UID后,当鼠标移动到图片上将会显示相关的职位和企业信息)');
 
-         }
 
-         $template->setTemplatesId("code_div");
 
-         if ($ad_info->type_id == '3') {
 
-             $template->textarea('content', '代码')->default($ad_info->content)->rows(1)->help('(请直接输入需要展现的广告代码)')->setMustMark();
 
-         } else {
 
-             $template->textarea('content', '代码')->rows(1)->help('(请直接输入需要展现的广告代码)')->setMustMark();
 
-         }
 
-         $template->setTemplatesId("flash_div");
 
-         if ($ad_info->type_id == '4') {
 
-             $flash_file = null;
 
-             $flash_url  = null;
 
-             if (preg_match('/^images\//', $ad_info->content)) {
 
-                 $flash_file = $ad_info->content;
 
-             } else {
 
-                 $flash_url = $ad_info->content;
 
-             }
 
-             $template->image('content', '本地上传')->default($flash_file)->uniqueName()->setWidth(3)->help('(允许格式为:swf,文件大小:1000KB)')->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->url('url', '或者Flash地址')->default($flash_url)->help('(请输入包含http://或https://的完整链接,如: http://www.baidu.com/123.swf)');
 
-         } else {
 
-             $template->file('content', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为:swf,文件大小:1000KB)')->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->url('url', '或者Flash地址')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/123.swf)');
 
-         }
 
-         $template->setTemplatesId("vedio_div");
 
-         if ($ad_info->type_id == '5') {
 
-             $vedio_file = null;
 
-             $vedio_url  = null;
 
-             if (preg_match('/^images\//', $ad_info->content)) {
 
-                 $vedio_file = $ad_info->content;
 
-             } else {
 
-                 $vedio_url = $ad_info->content;
 
-             }
 
-             $template->file('content', '本地上传')->default($vedio_file)->uniqueName()->setWidth(3)->help('(允许格式为swf/flv/f4v,文件大小5000KB,大文件FTP上传)')->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->url('url', '或者视频地址')->default($vedio_url)->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/123.swf)');
 
-         } else {
 
-             $template->file('content', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为swf/flv/f4v,文件大小5000KB,大文件FTP上传)')->setMustMark()->options(['layoutTemplates' => ['actionDelete' => '']]);
 
-             $template->url('url', '或者视频地址')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/123.swf)');
 
-         }
 
-         $form->disableReset();
 
-         $data['custom_form'] = $form->render();
 
-         $data['temp']        = $template->render();
 
-         $data['ad_info']     = $ad_info;
 
-         return $content
 
-             ->header('广告')
 
-             ->description(' ')
 
-             ->body(view('admin.content.ad_edit')->with($data));
 
-     }
 
-     public function update(Request $request)
 
-     {
 
-         $ad      = Ad::findOrFail($request->input('id'));
 
-         $rules   = [
 
-             'title'       => 'required|max:50',
 
-             'is_display'  => 'required',
 
-             'category_id' => 'required',
 
-             'list_order'  => 'required|max:10',
 
-             'note'        => 'max:80',
 
-         ];
 
-         $message = [
 
-             'title.required'       => '广告标题不能为空。',
 
-             'title.max'            => '广告标题长度不能超过50。',
 
-             'is_display.required'  => '请选择显示状态。',
 
-             'category_id.required' => '请选择广告位。',
 
-             'list_order.required'  => '显示顺序不能为空。',
 
-             'list_order.max'       => '显示顺序长度不能大于10。',
 
-             'note.max'             => '备注长度不能超过80。',
 
-         ];
 
-         if ($request->input('started_at')) {
 
-             $rules['started_at']        = 'date';
 
-             $message['started_at.date'] = '开始日期格式不正确。';
 
-         }
 
-         if ($request->input('ended_at')) {
 
-             $rules['ended_at']                  = 'date|after_or_equal:started_at';
 
-             $message['ended_at.date']           = '结束日期格式不正确。';
 
-             $message['ended_at.after_or_equal'] = '结束日期不能早于开始日期。';
 
-         }
 
-         $type_id = $request->input('type_id');
 
-         if ($type_id == '1') {
 
-             $rules['content']               = 'required';
 
-             $rules['text_color']            = 'required';
 
-             $message['content.required']    = '文字内容不能为空。';
 
-             $message['text_color.required'] = '文字颜色不能为空。';
 
-         } else if ($type_id == '2') {
 
-             $rules['img_file']         = 'mimes:gif,jpeg,bmp,png|max:1024';
 
-             $rules['explain']          = 'max:80';
 
-             $rules['uid']              = 'nullable|numeric';
 
-             $message['img_file.mimes'] = '本地上传格式不正确。';
 
-             $message['img_file.max']   = '本地上传文件大小不能超过1M。';
 
-             $message['explain.max']    = '图片说明文字长度不能大于80。';
 
-             /*$message['uid.required']                 = 'UID不能为空。';*/
 
-             $message['uid.numeric'] = 'UID只能填写数字。';
 
-         } else if ($type_id == '3') {
 
-             $rules['content']            = 'required';
 
-             $message['content.required'] = '代码不能为空。';
 
-         } else if ($type_id == '4') {
 
-             $rules['content']         = 'mimes:swf';
 
-             $message['content.mimes'] = '本地上传格式不正确。';
 
-         } else if ($type_id == '5') {
 
-             $rules['content']         = 'mimes:swf,flv,f4v';
 
-             $message['content.mimes'] = '本地上传格式不正确。';
 
-         }
 
-         $request->validate($rules, $message);
 
-         $time       = date('Y-m-d H:i:s', time());
 
-         $is_display = $request->input('is_display') == 'on' ? 1 : 0;
 
-         $started_at = $request->input('started_at') ? strtotime($request->input('started_at')) : 0;
 
-         $ended_at   = $request->input('ended_at') ? strtotime($request->input('ended_at')) : 0;
 
-         $type_id    = $request->input('type_id');
 
-         $theme      = $request->input('theme') ? $request->input('theme') : 'default';
 
-         $note       = $request->input('note') ? $request->input('note') : '';
 
-         $ad->theme       = $theme;
 
-         $ad->alias       = $request->input('alias');
 
-         $ad->is_display  = $request->input('is_display') == 'on' ? 1 : 0;
 
-         $ad->category_id = $request->input('category_id');
 
-         $ad->type_id     = $type_id;
 
-         $ad->title       = $request->input('title');
 
-         $ad->note        = $request->input('note') ? $request->input('note') : '';
 
-         $ad->list_order  = $request->input('list_order');
 
-         $ad->started_at  = $request->input('started_at') ? strtotime($request->input('started_at')) : 0;
 
-         $ad->ended_at    = $request->input('ended_at') ? strtotime($request->input('ended_at')) : 0;
 
-         $ad->updated_at  = $time;
 
-         if ($type_id == '1') {   //文字广告
 
-             $ad->content    = $request->input('content');
 
-             $ad->url        = $request->input('url') ? $request->input('url') : '';
 
-             $ad->text_color = $request->input('text_color') ? $request->input('text_color') : '#000000';
 
-             $ad->uid        = 0;
 
-         } else if ($type_id == '2') {  //图片广告
 
-             $img_file = $request->input('img_file');
 
-             $img_url  = $request->input('img_url');
 
-             $url      = $request->input('url') ? $request->input('url') : '';
 
-             $target   = $request->input('target') ? $request->input('target') : '_blank';
 
-             $explain  = $request->input('explain');
 
-             $uid      = $request->input('uid');
 
-             $up_file  = null;
 
-             if ($request->hasFile('img_file')) {
 
-                 $file    = 'img_file';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.image'), config('admin.upload.disk'));
 
-             }
 
-             $content = $up_file ? $up_file : $img_url;
 
-             if ($content) {
 
-                 $ad->content = $content;
 
-             }
 
-             $ad->url        = $url;
 
-             $ad->target     = $target;
 
-             $ad->text_color = '#000000';
 
-             $ad->uid        = $uid ? $uid : 0;
 
-             $ad->explain    = $explain;
 
-         } else if ($type_id == '3') {    //代码广告
 
-             $content = $request->input('content') ? $request->input('content') : 0;
 
-             if ($content) {
 
-                 $ad->content = $content;
 
-             }
 
-             $ad->uid        = 0;
 
-             $ad->text_color = '#000000';
 
-             $ad->url        = '';
 
-         } else if ($type_id == '4' || $type_id == '5') {  //flash广告 、视频广告
 
-             $url     = $request->input('url') ? $request->input('url') : '';
 
-             $up_file = null;
 
-             if ($request->hasFile('content')) {
 
-                 $file    = 'content';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.file'), config('admin.upload.disk'));
 
-             }
 
-             $content = $up_file ? $up_file : $url;
 
-             if ($content) {
 
-                 $ad->content = $content;
 
-             }
 
-             $ad->url        = '';
 
-             $ad->uid        = 0;
 
-             $ad->text_color = '#000000';
 
-         }
 
-         $set_data = [];
 
-         $subsites = $request->input('relate_subsites');
 
-         if (empty($subsites)) {
 
-             $subsites = [];
 
-         }
 
-         $subsites = array_merge([$ad->subsite_id], $subsites);
 
-         foreach ($subsites as $k => $v) {
 
-             if ($v !== null) {
 
-                 $set_data[] = [
 
-                     'ad_id'      => $ad->id,
 
-                     'subsite_id' => $v,
 
-                 ];
 
-             }
 
-         }
 
-         if ($ad->save()) {
 
-             if ($set_data) {
 
-                 SubsiteAd::where('ad_id', $ad->id)->delete();
 
-                 SubsiteAd::insert($set_data);
 
-             }
 
-             admin_toastr(trans('admin.save_succeeded'), 'success');
 
-             return redirect(admin_base_path() . '/content/ad/index');
 
-         } else {
 
-             throw new \Exception(trans('admin.save_failed'));
 
-         }
 
-     }
 
-     public function updates(Request $request)
 
-     {
 
-         $rules   = [
 
-             'title'       => 'required|max:50',
 
-             'is_display'  => 'required',
 
-             'category_id' => 'required',
 
-             'list_order'  => 'required|max:10',
 
-             'note'        => 'max:80',
 
-         ];
 
-         $message = [
 
-             'title.required'       => '广告标题不能为空。',
 
-             'title.max'            => '广告标题长度不能超过50。',
 
-             'is_display.required'  => '请选择显示状态。',
 
-             'category_id.required' => '请选择广告位。',
 
-             'list_order.required'  => '显示顺序不能为空。',
 
-             'list_order.max'       => '显示顺序长度不能大于10。',
 
-             'note.max'             => '备注长度不能超过80。',
 
-         ];
 
-         if ($request->input('started_at')) {
 
-             $rules['started_at']        = 'date';
 
-             $message['started_at.date'] = '开始日期格式不正确。';
 
-         }
 
-         if ($request->input('ended_at')) {
 
-             $rules['ended_at']                  = 'date|after_or_equal:started_at';
 
-             $message['ended_at.date']           = '结束日期格式不正确。';
 
-             $message['ended_at.after_or_equal'] = '结束日期不能早于开始日期。';
 
-         }
 
-         $type_id = $request->input('type_id');
 
-         if ($type_id == '1') {
 
-             $rules['content']               = 'required';
 
-             $rules['text_color']            = 'required';
 
-             $message['content.required']    = '文字内容不能为空。';
 
-             $message['text_color.required'] = '文字颜色不能为空。';
 
-         } else if ($type_id == '2') {
 
-             $rules['img_file']                    = 'required_without:img_url|mimes:gif,jpeg,bmp,png';
 
-             $rules['img_url']                     = 'required_without:img_file';
 
-             $rules['explain']                     = 'max:80';
 
-             $rules['uid']                         = 'required|numeric';
 
-             $message['img_file.required_without'] = '本地上传或者图片地址填写一项。';
 
-             $message['img_file.mimes']            = '本地上传格式不正确。';
 
-             $message['img_url.required_without']  = '本地上传或者图片地址填写一项。';
 
-             $message['explain.max']               = '图片说明文字长度不能大于80。';
 
-             $message['uid.required']              = 'UID不能为空。';
 
-             $message['uid.numeric']               = 'UID只能填写数字。';
 
-         } else if ($type_id == '3') {
 
-             $rules['content']            = 'required';
 
-             $message['content.required'] = '代码不能为空。';
 
-         } else if ($type_id == '4') {
 
-             $rules['content']                    = 'required_without:url|mimes:swf';
 
-             $rules['url']                        = 'required_without:content';
 
-             $message['content.required_without'] = '本地上传或者Flash地址填写一项。';
 
-             $message['content.mimes']            = '本地上传格式不正确。';
 
-             $message['url.required_without']     = '本地上传或者Flash地址填写一项。';
 
-         } else if ($type_id == '5') {
 
-             $rules['content']                    = 'required_without:url|mimes:swf,flv,f4v';
 
-             $rules['url']                        = 'required_without:content';
 
-             $message['content.required_without'] = '本地上传或者填写视频地址填写一项。';
 
-             $message['content.mimes']            = '本地上传格式不正确。';
 
-             $message['url.required_without']     = '本地上传或者填写视频地址填写一项。';
 
-         }
 
-         $request->validate($rules, $message);
 
-         $is_display = $request->input('is_display') == 'on' ? 1 : 0;
 
-         $time       = date('Y-m-d H:i:s', time());
 
-         $started_at = $request->input('started_at') ? strtotime($request->input('started_at')) : 0;
 
-         $ended_at   = $request->input('ended_at') ? strtotime($request->input('ended_at')) : 0;
 
-         $type_id    = $request->input('type_id');
 
-         $theme      = $request->input('theme') ? $request->input('theme') : 'default';
 
-         $note       = $request->input('note') ? $request->input('note') : '';
 
-         $form_data = [
 
-             'theme'       => $theme,
 
-             'alias'       => $request->input('alias'),
 
-             'is_display'  => $is_display,
 
-             'category_id' => $request->input('category_id'),
 
-             'type_id'     => $type_id,
 
-             'title'       => $request->input('title'),
 
-             'note'        => $note,
 
-             'list_order'  => $request->input('list_order'),
 
-             'started_at'  => $started_at,
 
-             'ended_at'    => $ended_at,
 
-             'updated_at'  => $time,
 
-         ];
 
-         if ($type_id == '1') {
 
-             //文字广告
 
-             $form_data['content']    = $request->input('content');
 
-             $form_data['url']        = $request->input('url');
 
-             $form_data['text_color'] = $request->input('text_color') ? $request->input('text_color') : '#000000';
 
-             $form_data['uid']        = 0;
 
-         } else if ($type_id == '2') {
 
-             //图片广告
 
-             $img_file = $request->input('img_file');
 
-             $img_url  = $request->input('img_url');
 
-             $url      = $request->input('url');
 
-             $explain  = $request->input('explain');
 
-             $uid      = $request->input('uid');
 
-             $up_file  = null;
 
-             if ($request->hasFile('img_file')) {
 
-                 $file    = 'img_file';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.image'), config('admin.upload.disk'));
 
-             }
 
-             $content                 = $up_file ? $up_file : $img_url;
 
-             $form_data['content']    = $content;
 
-             $form_data['url']        = $url;
 
-             $form_data['text_color'] = '#000000';
 
-             $form_data['uid']        = $uid;
 
-             $form_data['explain']    = $explain;
 
-         } else if ($type_id == '3') {
 
-             //代码广告
 
-             $content                 = $request->input('content') ? $request->input('content') : 0;
 
-             $form_data['content']    = $content;
 
-             $form_data['uid']        = 0;
 
-             $form_data['text_color'] = '#000000';
 
-             $form_data['url']        = '';
 
-         } else if ($type_id == '4' || $type_id == '5') {
 
-             //flash广告 、视频广告
 
-             $url     = $request->input('url') ? $request->input('url') : '';
 
-             $up_file = null;
 
-             if ($request->hasFile('content')) {
 
-                 $file    = 'content';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.file'), config('admin.upload.disk'));
 
-             }
 
-             $content                 = $up_file ? $up_file : $url;
 
-             $form_data['content']    = $content;
 
-             $form_data['url']        = '';
 
-             $form_data['uid']        = 0;
 
-             $form_data['text_color'] = '#000000';
 
-         }
 
-         if (Ad::where(['id' => $request->input('id')])->update($form_data)) {
 
-             admin_toastr(trans('admin.save_succeeded'), 'success');
 
-             return redirect(admin_base_path() . '/content/ad/index');
 
-         } else {
 
-             throw new \Exception(trans('admin.save_failed'));
 
-         }
 
-     }
 
-     /**
 
-      * Create interface.
 
-      *
 
-      * @param Content $content
 
-      * @return Content
 
-      */
 
-     public function create(Content $content)
 
-     {
 
-         $form = new ValueForm();
 
-         $form->action(route('ad.index'));
 
-         $form->text('title', '广告标题')->help('(区分不同广告条目,并不在广告中显示)')->setWidth(4)->setMustMark();
 
-         $display_option = [
 
-             'on'  => ['value' => 1, 'text' => '是', 'color' => 'success'],
 
-             'off' => ['value' => 0, 'text' => '否', 'color' => 'danger'],
 
-         ];
 
-         $form->switch('is_display', '显示状态')->states($display_option)->default('1')->setMustMark();
 
-         if (get_subsite_id() == 0) {
 
-             $subsites = Subsite::where(['effective' => 1])->orderBy('order', 'asc')->get()->pluck('sitename', 'id');
 
-         } else {
 
-             $subsites      = Subsite::where([['effective', '=', 1], ['id', '<>', get_subsite_id()]])->orderBy('order', 'asc')->get()->pluck('sitename', 'id')->toArray();
 
-             $subsites['0'] = '总站';
 
-             $subsites      = collect($subsites);
 
-         }
 
-         if ($subsites->isNotEmpty() && get_subsite_id() == 0) {
 
-             $form->multipleSelect('relate_subsites', '同步分站')->options($subsites);
 
-         } else {
 
-             $form->hidden('relate_subsites');
 
-         }
 
-         $form->ignore(['relate_subsites']);
 
-         $form->hidden('subsite_id')->value(get_subsite_id());
 
-         $cate_option = AdCategory::all()->pluck('category_name', 'id');
 
-         $form->select('category_id', '广告位')->options($cate_option)
 
-             ->rules('required', ['required' => '请选择广告位。'])
 
-             ->setWidth(4)->attribute(['id' => 'sub_category'])->setMustMark();
 
-         $form->number('list_order', '显示顺序')->min(0)->default(0)->help('(数字越大越靠前)')->setMustMark();
 
-         $form->date('started_at', '开始日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->rules('required|date', ['required' => '开始日期不能为空。', 'date' => '开始日期格式不正确。'])
 
-             ->help('(设置广告起始日期,格式yyyy-mm-dd,留空为不限制起始日期)');
 
-         $form->date('ended_at', '结束日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->rules('required|date', ['required' => '结束日期不能为空。', 'date' => '结束日期格式不正确。'])
 
-             ->help('(设置广告结束日期,格式yyyy-mm-dd,留空为不限制结束日期)');
 
-         $form->textarea('note', '备注');
 
-         $form->html("<div id='change_field'></div>")->plain();
 
-         $form->hidden('alias')->attribute('id', 'alias');
 
-         $form->hidden('theme')->value('default');
 
-         $form->hidden('type_id')->attribute('id', 'type_id');
 
-         $template = new Template();
 
-         $template->setTemplatesId("text_div");
 
-         $template->text('content', '文字内容')->help('(文字广告的显示内容)')->setMustMark();
 
-         $template->url('url', '文字链接')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-         $template->color('text_color', '文字颜色')->default('#000000')->setMustMark();
 
-         $template->setTemplatesId("image_div");
 
-         $template->image('img_file', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为gif/jpg/bmp/png,文件大小1000KB)')->setMustMark();
 
-         $template->text('img_url', '或图片地址')->help('(如/images/logo.gif 或 http://www.baidu.com/img/baidu_logo.gif)');
 
-         $template->url('url', '图片链接')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com)');
 
-         $template->text('target', 'target')->help('(请输入_self等,默认_blank)');
 
-         $template->text('explain', '图片说明文字');
 
-         $template->number('uid', '会员UID')->min(0)->default(0)
 
-             ->help('(设置会员UID后,当鼠标移动到图片上将会显示相关的职位和企业信息)')
 
-             ->attribute(['maxlength' => '10', 'onkeyup' => 'if(event.keyCode !=37 && event.keyCode != 39) value=value.replace(/\D/g,\'\');', 'onbeforepaste' => "clipboardData.setData('text',clipboardData.getData('text').replace(/\D/g,''))"]);
 
-         $template->setTemplatesId("code_div");
 
-         $template->textarea('content', '代码')->rows(1)->help('(请直接输入需要展现的广告代码)')->setMustMark();
 
-         $template->setTemplatesId("flash_div");
 
-         $template->image('content', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为:swf,文件大小:1000KB)')->setMustMark();
 
-         $template->url('url', '或者Flash地址')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/123.swf)');
 
-         $template->setTemplatesId("vedio_div");
 
-         $template->image('content', '本地上传')->uniqueName()->setWidth(3)->help('(允许格式为swf/flv/f4v,文件大小5000KB,大文件FTP上传)')->setMustMark();
 
-         $template->url('url', '或者视频地址')->help('(请输入包含http://或https://的完整链接,如:http://www.baidu.com/123.swf)');
 
-         $form->disableReset();
 
-         $data['custom_form'] = $form->render();
 
-         $data['temp']        = $template->render();
 
-         return $content
 
-             ->header('广告')
 
-             ->description(' ')
 
-             ->body(view('admin.content.ad')->with($data));
 
-     }
 
-     public function changeCategory(Request $request)
 
-     {
 
-         $cate_option = AdCategory::all()->toArray();
 
-         return response()->json(['data' => $cate_option, 'status' => '1']);
 
-     }
 
-     public function store(Request $request)
 
-     {
 
-         $rules   = [
 
-             'title'       => 'required|max:50',
 
-             'is_display'  => 'required',
 
-             'category_id' => 'required',
 
-             'list_order'  => 'required|max:10',
 
-             'note'        => 'max:80',
 
-         ];
 
-         $message = [
 
-             'title.required'       => '广告标题不能为空。',
 
-             'title.max'            => '广告标题长度不能超过50。',
 
-             'is_display.required'  => '请选择显示状态。',
 
-             'category_id.required' => '请选择广告位。',
 
-             'list_order.required'  => '显示顺序不能为空。',
 
-             'list_order.max'       => '显示顺序长度不能大于10。',
 
-             'note.max'             => '备注长度不能超过80。',
 
-         ];
 
-         if ($request->input('started_at')) {
 
-             $rules['started_at']        = 'date';
 
-             $message['started_at.date'] = '开始日期格式不正确。';
 
-         }
 
-         if ($request->input('ended_at')) {
 
-             $rules['ended_at']                  = 'date|after_or_equal:started_at';
 
-             $message['ended_at.date']           = '结束日期格式不正确。';
 
-             $message['ended_at.after_or_equal'] = '结束日期不能早于开始日期。';
 
-         }
 
-         $type_id = $request->input('type_id');
 
-         if ($type_id == '1') {
 
-             $rules['content']               = 'required';
 
-             $rules['text_color']            = 'required';
 
-             $message['content.required']    = '文字内容不能为空。';
 
-             $message['text_color.required'] = '文字颜色不能为空。';
 
-         } else if ($type_id == '2') {
 
-             $rules['img_file']                    = 'required_without:img_url|mimes:gif,jpeg,bmp,png|max:1024';
 
-             $rules['img_url']                     = 'required_without:img_file';
 
-             $rules['explain']                     = 'max:80';
 
-             $rules['uid']                         = 'nullable|numeric';
 
-             $message['img_file.required_without'] = '本地上传或者图片地址填写一项。';
 
-             $message['img_file.mimes']            = '本地上传格式不正确。';
 
-             $message['img_file.max']              = '本地上传文件大小不能超过1M。';
 
-             $message['img_url.required_without']  = '本地上传或者图片地址填写一项。';
 
-             $message['explain.max']               = '图片说明文字长度不能大于80。';
 
-             //$message['uid.required']                 = 'UID不能为空。';
 
-             $message['uid.numeric'] = 'UID只能填写数字。';
 
-         } else if ($type_id == '3') {
 
-             $rules['content']            = 'required';
 
-             $message['content.required'] = '代码不能为空。';
 
-         } else if ($type_id == '4') {
 
-             $rules['content']                    = 'required_without:url|mimes:swf';
 
-             $rules['url']                        = 'required_without:content';
 
-             $message['content.required_without'] = '本地上传或者Flash地址填写一项。';
 
-             $message['content.mimes']            = '本地上传格式不正确。';
 
-             $message['url.required_without']     = '本地上传或者Flash地址填写一项。';
 
-         } else if ($type_id == '5') {
 
-             $rules['content']                    = 'required_without:url|mimes:swf,flv,f4v';
 
-             $rules['url']                        = 'required_without:content';
 
-             $message['content.required_without'] = '本地上传或者填写视频地址填写一项。';
 
-             $message['content.mimes']            = '本地上传格式不正确。';
 
-             $message['url.required_without']     = '本地上传或者填写视频地址填写一项。';
 
-         }
 
-         $request->validate($rules, $message);
 
-         $is_display = $request->input('is_display') == 'on' ? 1 : 0;
 
-         $time       = date('Y-m-d H:i:s', time());
 
-         $started_at = $request->input('started_at') ? strtotime($request->input('started_at')) : 0;
 
-         $ended_at   = $request->input('ended_at') ? strtotime($request->input('ended_at')) : 0;
 
-         $subsite_id = $request->input('subsite_id');
 
-         $theme      = $request->input('theme') ? $request->input('theme') : 'default';
 
-         $note       = $request->input('note') ? $request->input('note') : '';
 
-         $form_data = [
 
-             'theme'       => $theme,
 
-             'alias'       => $request->input('alias'),
 
-             'is_display'  => $is_display,
 
-             'category_id' => $request->input('category_id'),
 
-             'type_id'     => $type_id,
 
-             'title'       => $request->input('title'),
 
-             'note'        => $note,
 
-             'list_order'  => $request->input('list_order'),
 
-             'started_at'  => $started_at,
 
-             'ended_at'    => $ended_at,
 
-             'subsite_id'  => $subsite_id,
 
-             'created_at'  => $time,
 
-             'updated_at'  => $time,
 
-         ];
 
-         if ($type_id == '1') {
 
-             //文字广告
 
-             $form_data['content']    = $request->input('content');
 
-             $form_data['url']        = $request->input('url') ? $request->input('url') : '';
 
-             $form_data['text_color'] = $request->input('text_color') ? $request->input('text_color') : '#000000';
 
-             $form_data['uid']        = 0;
 
-         } else if ($type_id == '2') {
 
-             //图片广告
 
-             $img_file = $request->input('img_file');
 
-             $img_url  = $request->input('img_url');
 
-             $url      = $request->input('url') ? $request->input('url') : '';
 
-             $target   = $request->input('target') ? $request->input('target') : '_blank';
 
-             $explain  = $request->input('explain');
 
-             $uid      = $request->input('uid', 0);
 
-             $up_file  = null;
 
-             if ($request->hasFile('img_file')) {
 
-                 $file    = 'img_file';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.image'), config('admin.upload.disk'));
 
-             }
 
-             $content                 = $up_file ? $up_file : $img_url;
 
-             $form_data['content']    = $content;
 
-             $form_data['url']        = $url;
 
-             $form_data['target']     = $target;
 
-             $form_data['text_color'] = '#000000';
 
-             $form_data['uid']        = $uid ? $uid : 0;
 
-             $form_data['explain']    = $explain;
 
-         } else if ($type_id == '3') {
 
-             //代码广告
 
-             $content                 = $request->input('content') ? $request->input('content') : 0;
 
-             $form_data['content']    = $content;
 
-             $form_data['uid']        = 0;
 
-             $form_data['text_color'] = '#000000';
 
-             $form_data['url']        = '';
 
-         } else if ($type_id == '4' || $type_id == '5') {
 
-             //flash广告 、视频广告
 
-             $url     = $request->input('url') ? $request->input('url') : '';
 
-             $up_file = null;
 
-             if ($request->hasFile('content')) {
 
-                 $file    = 'content';
 
-                 $up_file = $request->$file->store(config('admin.upload.directory.file'), config('admin.upload.disk'));
 
-             }
 
-             $content                 = $up_file ? $up_file : $url;
 
-             $form_data['content']    = $content;
 
-             $form_data['url']        = '';
 
-             $form_data['uid']        = 0;
 
-             $form_data['text_color'] = '#000000';
 
-         }
 
-         $subsites = $request->input('relate_subsites');
 
-         if (empty($subsites)) {
 
-             $subsites = [];
 
-         }
 
-         if ($ad = Ad::create($form_data)) {
 
-             $set_data   = [];
 
-             $set_data[] = [
 
-                 'ad_id'      => $ad->id,
 
-                 'subsite_id' => get_subsite_id(),
 
-             ];
 
-             if ($subsites) {
 
-                 foreach ($subsites as $k => $v) {
 
-                     if ($v) {
 
-                         $set_data[] = [
 
-                             'ad_id'      => $ad->id,
 
-                             'subsite_id' => $v,
 
-                         ];
 
-                     }
 
-                 }
 
-             }
 
-             if ($set_data) {
 
-                 SubsiteAd::insert($set_data);
 
-             }
 
-             admin_toastr(trans('admin.save_succeeded'), 'success');
 
-             return redirect(admin_base_path() . '/content/ad/index');
 
-         } else {
 
-             throw new \Exception(trans('admin.save_failed'));
 
-         }
 
-     }
 
-     /**
 
-      * Make a grid builder.
 
-      *
 
-      * @return Grid
 
-      */
 
-     protected function grid()
 
-     {
 
-         $grid = new Grid(new Ad);
 
-         $grid->model()->when(get_subsite_id() > 0, function ($query) {
 
-             $query->where('subsite_id', get_subsite_id());
 
-         })->orderBy('list_order', 'DESC')->orderBy('created_at', 'DESC');
 
-         $grid->title('广告标题')->display(function () {
 
-             $logo_html = '';
 
-             if ($this->type_id == '2') {
 
-                 //判断图片中是否包含http
 
-                 if (preg_match('/^http/', $this->content)) {
 
-                     $logo_html = '<span class="vtip" title="<img src=\'' . $this->content . '\'  height=120>">
 
-                             <img class="avatar small" src="' . $this->content . '" align="absmiddle" style="width: 22px;height: 22px;">
 
-                         </span>';
 
-                 } else {
 
-                     $logo_html = '<span class="vtip" title="<img src=\'' . upload_asset($this->content) . '\'  height=120>">
 
-                             <img class="avatar small" src="' . upload_asset($this->content) . '" align="absmiddle" style="width: 22px;height: 22px;">
 
-                         </span>';
 
-                 }
 
-             }
 
-             return $logo_html . $this->title;
 
-         })->width(250);
 
-         $grid->show_category()->category_name('所属广告位')->width(200);
 
-         $grid->type_id('广告类型')->display(function () {
 
-             if ($this->type_id == '1') {
 
-                 return '文字';
 
-             } else if ($this->type_id == '2') {
 
-                 return '图片';
 
-             } else if ($this->type_id == '3') {
 
-                 return '代码';
 
-             } else if ($this->type_id == '4') {
 
-                 return 'Flash';
 
-             } else if ($this->type_id == '5') {
 
-                 return '视频';
 
-             }
 
-         });
 
-         if (get_subsite_open()) {
 
-             $grid->subsite_id('所属分站')->display(function () {
 
-                 $subsites = Cache::get('subsites_list');
 
-                 if (array_has($subsites, $this->subsite_id)) {
 
-                     return $subsites[$this->subsite_id]['sitename'];
 
-                 }
 
-                 return '';
 
-             });
 
-         }
 
-         $grid->started_at('开始日期')->display(function () {
 
-             if (!$this->started_at) {
 
-                 return date('Y-m-d', strtotime($this->created_at));
 
-             } else {
 
-                 return $this->started_at;
 
-             }
 
-         });
 
-         $grid->ended_at('到期日期')->display(function () {
 
-             if ($this->ended_at > 0 && strtotime($this->ended_at) <= strtotime(date('Y-m-d'))) {
 
-                 return '<span style="color:#FF6600">已经到期</span>';
 
-             } else {
 
-                 return $this->ended_at ? $this->ended_at : '无限制';
 
-             }
 
-         });
 
-         $grid->is_display('状态')->display(function () {
 
-             return $this->is_display ? '正常' : '暂停';
 
-         });
 
-         $grid->list_order('排序');
 
-         //新增按钮
 
-         if (Admin::user()->can('content_ad_list_create')) {
 
-             $grid->disableCreateButton(false);
 
-         }
 
-         //批量删除
 
-         if (Admin::user()->can('content_ad_list_delete')) {
 
-             $grid->tools(function ($tools) {
 
-                 $tools->batch(function ($batch) {
 
-                     $batch->disableDelete(false);
 
-                 });
 
-             });
 
-         } else {
 
-             $grid->disableRowSelector();
 
-         }
 
-         $grid->actions(function ($actions) {
 
-             if (Admin::user()->can('content_ad_list_edit')) {
 
-                 if ($actions->row['subsite_id'] == get_subsite_id() || get_subsite_id() == 0) {
 
-                     $actions->disableEdit(false);
 
-                 }
 
-             }
 
-             if (Admin::user()->can('content_ad_list_delete')) {
 
-                 if ($actions->row['subsite_id'] == get_subsite_id() || get_subsite_id() == 0) {
 
-                     $actions->disableDelete(false);
 
-                 }
 
-             }
 
-         });
 
-         $grid->filter(function (Filter $filter) {
 
-             $filter->disableIdFilter();
 
-             $filter->column(2 / 3, function ($filter) {
 
-                 $display_option = ['' => '不限', '1' => '正常', '0' => '暂停'];
 
-                 $filter->equal('is_display', '显示状态')->radio($display_option);
 
-                 $date1 = strtotime(date('Y-m-d', strtotime("+1 day") - 1)) - 1;
 
-                 $date3 = strtotime(date('Y-m-d', strtotime("+4 day") - 1)) - 1;
 
-                 $date7 = strtotime(date('Y-m-d', strtotime("+8 day") - 1)) - 1;
 
-                 $date_option = [
 
-                     ''     => '不限',
 
-                     $date1 => '已经到期',
 
-                     $date3 => '三天内',
 
-                     $date7 => '一周内',
 
-                 ];
 
-                 $filter->where(function ($query) {
 
-                     $ended_at   = "{$this->input}";
 
-                     $start      = strtotime(date('Y-m-d', strtotime("+1 day") - 1)) - 1;
 
-                     $start_time = 0;
 
-                     if ($ended_at > $start) {
 
-                         $start_time = strtotime(date('Y-m-d', time())) - 1;
 
-                     }
 
-                     $query->whereRaw('ended_at > ' . $start_time . ' and ended_at < ' . "{$this->input}");
 
-                 }, '到期时间', 'ended_at')->radio($date_option);
 
-                 $subsites = Subsite::where(['effective' => 1])->orderBy('order', 'asc')->get()->pluck('sitename', 'id')->toArray();
 
-                 if ($subsites) {
 
-                     $subsites = ['' => '不限', '0' => '总站'] + $subsites;
 
-                     $filter->equal('subsite_id', '所属分站')->select($subsites);
 
-                 }
 
-                 $cates   = AdCategory::get(['id', 'category_name'])->toArray();
 
-                 $pre_arr = ['id' => '', 'category_name' => '不限'];
 
-                 array_unshift($cates, $pre_arr);
 
-                 $cates = collect($cates)->pluck('category_name', 'id');
 
-                 $filter->equal('category_id', '广告位')->select($cates);
 
-                 $filter->like('title', '广告标题');
 
-             });
 
-         });
 
-         return $grid;
 
-     }
 
-     public function getCategory(Request $request)
 
-     {
 
-         $subsite_id = $request->input('q');
 
-         $where      = [];
 
-         if ($subsite_id === null) {
 
-             $where = [];
 
-         } else {
 
-             $where = ['subsite_id' => $subsite_id];
 
-         }
 
-         $cates   = AdCategory::where($where)->get(['id', 'category_name'])->toArray();
 
-         $pre_arr = ['id' => '', 'category_name' => '不限'];
 
-         array_unshift($cates, $pre_arr);
 
-         return collect($cates);
 
-     }
 
-     /**
 
-      * Make a show builder.
 
-      *
 
-      * @param mixed $id
 
-      * @return Show
 
-      */
 
-     protected function detail($id)
 
-     {
 
-         $show    = new Show(Ad::findOrFail($id));
 
-         $ad_info = Ad::findOrFail($id);
 
-         $show->id('ID');
 
-         $show->title('广告标题');
 
-         $show->is_display('显示状态')->as(function ($is_display) {
 
-             return $is_display ? '正常' : '暂停';
 
-         });
 
-         if (get_subsite_open()) {
 
-             $show->subsite_id('所属分站')->as(function ($subsite_id) {
 
-                 if ($subsite_id) {
 
-                     $Subsite = Subsite::findOrFail($subsite_id);
 
-                     return $Subsite->sitename;
 
-                 }
 
-                 return '总站';
 
-             });
 
-         }
 
-         $show->category_id('广告位')->as(function ($category_id) {
 
-             $cate_info = AdCategory::where(['id' => $category_id])->first();
 
-             if ($cate_info) {
 
-                 return $cate_info->category_name;
 
-             } else {
 
-                 return ' ';
 
-             }
 
-         });
 
-         $show->list_order('显示顺序');
 
-         $show->started_at('开始日期')->as(function ($started_at) {
 
-             return $started_at ? $started_at : '无限制';
 
-         });
 
-         $show->ended_at('结束日期')->as(function ($ended_at) {
 
-             return $ended_at ? $ended_at : '无限制';
 
-         });
 
-         $show->note('备注')->as(function ($note) {
 
-             return $note ? $note : ' ';
 
-         })->setEscape(false);
 
-         if ($ad_info->type_id == '1') {
 
-             $show->content('文字内容');
 
-             $show->url('文字链接')->as(function ($url) {
 
-                 return $url ? $url : ' ';
 
-             })->setEscape(false);
 
-             $show->text_color('文字颜色')->as(function ($text_color) {
 
-                 $html = '<i style="background-color: ' . $text_color . ';padding: 5px 15px;"></i>';
 
-                 return $html;
 
-             })->setEscape(false);
 
-         } else if ($ad_info->type_id == '2') {
 
-             $show->content('图片')->image();
 
-             $show->url('图片链接')->as(function ($url) {
 
-                 return $url ? $url : ' ';
 
-             })->setEscape(false);
 
-             $show->explain('图片说明文字')->as(function ($explain) {
 
-                 return $explain ? $explain : ' ';
 
-             })->setEscape(false);
 
-             $show->uid('会员UID');
 
-         } else if ($ad_info->type_id == '3') {
 
-             $show->content('代码');
 
-         } else if ($ad_info->type_id == '4') {
 
-             $show->content('Flash地址')->image();
 
-         } else if ($ad_info->type_id == '5') {
 
-             $show->content('视频地址')->image();
 
-         }
 
-         $show->created_at('添加时间');
 
-         $show->updated_at('更新时间');
 
-         return $show;
 
-     }
 
-     /**
 
-      * Make a form builder.
 
-      *
 
-      * @return Form
 
-      */
 
-     protected function form()
 
-     {
 
-         $form = new Form(new Ad);
 
-         $form->text('title', '广告标题')->help('(区分不同广告条目,并不在广告中显示)');
 
-         $display_option = [
 
-             'on'  => ['value' => 1, 'text' => '是', 'color' => 'success'],
 
-             'off' => ['value' => 0, 'text' => '否', 'color' => 'danger'],
 
-         ];
 
-         $form->switch('is_display', '显示状态')->states($display_option)->default('1');
 
-         $subsites = array_merge(['0' => '总站'], ['1' => '定海', '2' => '普陀']);
 
-         $form->checkbox('subsite_id', '所属分站')->options($subsites)->default('0');
 
-         $cate_option = AdCategory::all()->pluck('category_name', 'id');
 
-         $form->select('category_id', '广告位')->options($cate_option)->setWidth(3);
 
-         $form->number('list_order', '显示顺序')->help('(数字越大越靠前)');
 
-         $form->date('started_at', '开始日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->rules('required|date', ['required' => '开始日期不能为空。', 'date' => '开始日期格式不正确。'])
 
-             ->help('(设置广告起始日期,格式yyyy-mm-dd,留空为不限制起始日期)');
 
-         $form->date('ended_at', '结束日期')
 
-             ->format('YYYY-MM-DD')
 
-             ->rules('required|date', ['required' => '结束日期不能为空。', 'date' => '结束日期格式不正确。'])
 
-             ->help('(设置广告结束日期,格式yyyy-mm-dd,留空为不限制结束日期)');
 
-         $form->textarea('note', '备注');
 
-         return $form;
 
-     }
 
-     public function destroy($id)
 
-     {
 
-         $ids = [];
 
-         if ($id) {
 
-             $ids = explode(',', $id);
 
-         }
 
-         if (get_subsite_id() == 0) {
 
-             $filter_id = $id;
 
-         } else {
 
-             $seletctors = Ad::where(['subsite_id' => get_subsite_id()])->whereIn('id', $ids)->get()->pluck('id')->toarray();
 
-             if ($seletctors) {
 
-                 $filter_id = implode(',', $seletctors);
 
-             } else {
 
-                 $filter_id = '';
 
-             }
 
-         }
 
-         if ($filter_id) {
 
-             if ($this->form()->destroy($filter_id)) {
 
-                 $data = [
 
-                     'status'  => true,
 
-                     'message' => trans('admin.delete_succeeded'),
 
-                 ];
 
-             } else {
 
-                 $data = [
 
-                     'status'  => false,
 
-                     'message' => trans('admin.delete_failed'),
 
-                 ];
 
-             }
 
-         } else {
 
-             $data = [
 
-                 'status'  => false,
 
-                 'message' => '不能删除其它分站数据!',
 
-             ];
 
-         }
 
-         return response()->json($data);
 
-     }
 
- }
 
 
  |