12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- namespace App\Admin\Extensions\Field;
- use Encore\Admin\Form\Field;
- class SyncFile extends Field
- {
- protected $view = 'admin.field.sync_file';
- protected static $css = [
- '/vendor/laravel-admin/bootstrap-fileinput/css/fileinput.min.css',
- '/vendor/laravel-admin/bootstrap-fileinput/themes/explorer/theme.min.css',
- ];
- protected static $js = [
- '/vendor/laravel-admin/bootstrap-fileinput/js/plugins/sortable.min.js',
- '/vendor/laravel-admin/bootstrap-fileinput/js/plugins/purify.min.js',
- '/vendor/laravel-admin/bootstrap-fileinput/js/plugins/piexif.min.js',
- '/vendor/laravel-admin/bootstrap-fileinput/js/fileinput.min.js',
- '/vendor/laravel-admin/bootstrap-fileinput/js/locales/zh.js',
- '/vendor/laravel-admin/bootstrap-fileinput/themes/explorer/theme.min.js',
- ];
-
- protected function setupDefaultOptions()
- {
- $defaultOptions = [
- 'language' => 'zh',
-
- 'uploadUrl' => route('api.fileinput'),
- 'initialPreviewAsData' => true,
- ];
- $this->options($defaultOptions);
- }
-
- public function render()
- {
- $this->options([]);
- $this->setupDefaultOptions();
- $options = json_encode($this->options);
- $this->script = <<<EOT
- $("input{$this->getElementClassSelector()}").fileinput({$options});
- EOT;
- return parent::render();
- }
- }
|