formNoteTrait.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. namespace App\Admin\Controllers\Traits\WxNoteTraits;
  3. use App\Wen\Utils\AdminUtils;
  4. use App\Wen\Utils\FieldUtils;
  5. use App\Wen\Utils\GatewayUtils;
  6. use App\Wen\Utils\Settings;
  7. use App\Wen\Utils\SiteUtils;
  8. use Dcat\Admin\Form\NestedForm;
  9. use Dcat\Admin\Layout\Content;
  10. use Dcat\Admin\Widgets\Form;
  11. use Illuminate\Http\Request;
  12. use Illuminate\Support\Facades\Cache;
  13. trait formNoteTrait{
  14. public function index_config(Content $content)
  15. {
  16. return $content->title('恋爱小纸条配置')
  17. // ->body($this->buildPreviewButton())
  18. // ->body($this->newline())
  19. ->body(
  20. <<<HTML
  21. <div class="card">{$this->form_config()->render()}</div>
  22. HTML
  23. );
  24. }
  25. protected function form_config(){
  26. $form = new Form();
  27. $form->confirm('您确定要提交表单吗?', 'content');
  28. $form->disableResetButton();
  29. $form->tab('基本', function (Form $form) {
  30. $form->table('app_note_middle_box','中间按钮', function (NestedForm $table) {
  31. $table->image('img', '图片')->url('files/uploads')->uniqueName()->autoUpload()->required();
  32. $table->text('text', '标题')->placeholder('抽纸条')->required();
  33. $table->radio('type', '类型')->options(FieldUtils::getUrlTypes())->default(0);
  34. $table->text('target', '跳转id')->help('<a href="https://doc.minisns.cn/doc/44/" target="_blank">路径大全</a>');
  35. })->default(Settings::get('app_note_middle_box', ''));
  36. $form->divider();
  37. $form->table('app_note_bottom_box','底部按钮', function (NestedForm $table) {
  38. $table->image('img', '图片')->url('files/uploads')->uniqueName()->autoUpload()->required();
  39. $table->text('title', '标题')->placeholder('邀请好友')->required();
  40. $table->text('desc', '描述')->placeholder('赚钱利器');
  41. $table->radio('type', '类型')->options(FieldUtils::getUrlTypes())->default(0);
  42. $table->text('target', '跳转id')->help('<a href="https://doc.minisns.cn/doc/44/" target="_blank">路径大全</a>');
  43. })->default(Settings::get('app_note_bottom_box', ''));
  44. });
  45. $form->action('note/action/config');
  46. return $form;
  47. }
  48. public function config(Request $request){
  49. SiteUtils::forget_config_data();
  50. Settings::set('app_note_bottom_box', AdminUtils::_table_data($request->input('app_note_bottom_box')), true);
  51. Settings::set('app_note_middle_box', AdminUtils::_table_data($request->input('app_note_middle_box')), true);
  52. $__global_config_version__ = Settings::get('__global_config_version__', 1) + 1;
  53. Settings::set('__global_config_version__', $__global_config_version__);
  54. GatewayUtils::success('all', 13, [ 'version' => $__global_config_version__, 'file' => basename(__FILE__) ]);
  55. return $this->response()->success('成功!');
  56. }
  57. }