file.blade.php 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <style>
  2. .webuploader-pick {
  3. background-color: @primary;
  4. }
  5. .web-uploader .placeholder .flashTip a {
  6. color: @primary(-10);
  7. }
  8. .web-uploader .statusBar .upload-progress span.percentage,
  9. .web-uploader .filelist li p.upload-progress span {
  10. background: @primary(-8);
  11. }
  12. </style>
  13. <div class="{{$viewClass['form-group']}} {{ $class }}">
  14. <label for="{{$column}}" class="{{$viewClass['label']}} control-label">{!! $label !!}</label>
  15. <div class="{{$viewClass['field']}}">
  16. @include('admin::form.error')
  17. <input name="{{ $name }}" class="file-input" type="hidden" />
  18. <div class="web-uploader {{ $fileType }}">
  19. <div class="queueList">
  20. <div class="placeholder dnd-area">
  21. <div class="file-picker"></div>
  22. <p>{{trans('admin.uploader.drag_file')}}</p>
  23. </div>
  24. </div>
  25. <div class="statusBar" style="display:none;">
  26. <div class="upload-progress progress progress-bar-primary pull-left">
  27. <div class="progress-bar progress-bar-striped active" style="line-height:18px">0%</div>
  28. </div>
  29. <div class="info"></div>
  30. <div class="btns">
  31. <div class="add-file-button"></div>
  32. @if($showUploadBtn)
  33. &nbsp;
  34. <div class="upload-btn btn btn-primary"><i class="feather icon-upload"></i> &nbsp;{{trans('admin.upload')}}</div>
  35. @endif
  36. </div>
  37. </div>
  38. </div>
  39. @include('admin::form.help-block')
  40. </div>
  41. </div>
  42. <script require="@webuploader" init="{!! $selector !!}">
  43. var uploader,
  44. newPage,
  45. options = {!! $options !!};
  46. init();
  47. function init() {
  48. var opts = $.extend({
  49. selector: $this,
  50. addFileButton: $this.find('.add-file-button'),
  51. inputSelector: $this.find('.file-input'),
  52. }, options);
  53. opts.upload = $.extend({
  54. pick: {
  55. id: $this.find('.file-picker'),
  56. name: '_file_',
  57. label: '<i class="feather icon-folder"></i>&nbsp; {!! trans('admin.uploader.add_new_media') !!}'
  58. },
  59. dnd: $this.find('.dnd-area'),
  60. paste: $this.find('.web-uploader')
  61. }, opts);
  62. uploader = Dcat.Uploader(opts);
  63. uploader.build();
  64. uploader.preview();
  65. function resize() {
  66. setTimeout(function () {
  67. if (! uploader) return;
  68. uploader.refreshButton();
  69. resize();
  70. if (! newPage) {
  71. newPage = 1;
  72. $(document).one('pjax:complete', function () {
  73. uploader = null;
  74. });
  75. }
  76. }, 250);
  77. }
  78. resize();
  79. }
  80. </script>