trad-file.blade.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  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. .web-uploader .dnd-area.webuploader-dnd-over {
  13. border: 3px dashed #999 !important;
  14. }
  15. .web-uploader .dnd-area.webuploader-dnd-over .placeholder {
  16. border: none;
  17. }
  18. .trad-file-container .web-uploader {
  19. margin-top: 0px;
  20. }
  21. .trad-file-container .web-uploader .placeholder {
  22. border: none;
  23. text-align: left;
  24. }
  25. .trad-file-container .web-uploader .placeholder:before {
  26. content: "";
  27. display: block;
  28. position: absolute;
  29. }
  30. .trad-file-container .web-uploader .placeholder .webuploader-pick {
  31. margin: 0px;
  32. }
  33. .trad-file-container .form-group {
  34. margin-bottom: 0px;
  35. }
  36. .trad-file-container .web-uploader .statusBar .info {
  37. display: none;
  38. }
  39. .trad-file-container .web-uploader.file .filelist li {
  40. margin-bottom: 0px;
  41. }
  42. </style>
  43. <div class="{{$viewClass['form-group']}} {{ $class }} trad-file-outer-container">
  44. <label for="{{$column}}" class="{{$viewClass['label']}} control-label">{!! $label !!}</label>
  45. <div class="{{$viewClass['field']}} trad-file-container">
  46. @include('admin::form.error')
  47. <input name="{{ $name }}" class="file-input" type="hidden" {!! $attributes !!}/>
  48. <div class="web-uploader {{ $fileType }}">
  49. <div class="queueList dnd-area" @if(!empty($upimgdemo)) style="width: 220px;float: left;" @endif>
  50. <div class="placeholder">
  51. <div class="file-picker"></div>
  52. </div>
  53. </div>
  54. {{-- 上传图片示例--}}
  55. @include('admin::form.upload-img-demo')
  56. <div class="statusBar" style="display:none;">
  57. <div class="upload-progress progress progress-bar-primary pull-left">
  58. <div class="progress-bar progress-bar-striped active" style="line-height:18px">0%</div>
  59. </div>
  60. <div class="info"></div>
  61. <div class="btns">
  62. <div class="add-file-button"></div>
  63. @if($showUploadBtn)
  64. &nbsp;
  65. <div class="upload-btn btn btn-primary"><i class="feather icon-upload"></i> &nbsp;{{trans('admin.upload')}}</div>
  66. @endif
  67. </div>
  68. </div>
  69. </div>
  70. @include('admin::form.help-block')
  71. </div>
  72. </div>
  73. <script require="@webuploader" init="{!! $selector !!}">
  74. var uploader,
  75. newPage,
  76. options = {!! $options !!},
  77. events = options.events;
  78. init();
  79. function init() {
  80. var opts = $.extend({
  81. selector: $this,
  82. addFileButton: $this.find('.add-file-button'),
  83. inputSelector: $this.find('.file-input'),
  84. }, options);
  85. opts.upload = $.extend({
  86. pick: {
  87. id: $this.find('.file-picker'),
  88. name: '_file_',
  89. label: '<i class="feather icon-folder"><\/i>&nbsp; {!! trans('admin.uploader.add_new_media') !!}'
  90. },
  91. dnd: $this.find('.dnd-area'),
  92. paste: $this.find('.web-uploader')
  93. }, opts);
  94. uploader = Dcat.Uploader(opts);
  95. uploader.build();
  96. uploader.preview();
  97. for (var i = 0; i < events.length; i++) {
  98. var evt = events[i];
  99. if (evt.event && evt.script) {
  100. if (evt.once) {
  101. uploader.uploader.once(evt.event, evt.script.bind(uploader))
  102. } else {
  103. uploader.uploader.on(evt.event, evt.script.bind(uploader))
  104. }
  105. }
  106. }
  107. function resize() {
  108. setTimeout(function () {
  109. if (! uploader) return;
  110. uploader.refreshButton();
  111. resize();
  112. if (! newPage) {
  113. newPage = 1;
  114. $(document).one('pjax:complete', function () {
  115. uploader = null;
  116. });
  117. }
  118. }, 250);
  119. }
  120. resize();
  121. }
  122. </script>