Guest User

Untitled

a guest
Jan 17th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.14 KB | None | 0 0
  1. var uploadBtn = $(element);
  2. var uploadContainer = uploadBtn.closest('.uploader-container');
  3. var uploader = uploadBtn.data('uploader');
  4. var url = uploadBtn.data('uploader-url');
  5. var type = uploadBtn.data('uploader-type');
  6.  
  7. switch (uploader)
  8. {
  9. case 'dropzone':
  10. var dz = uploadBtn.dropzone({
  11. url: url,
  12. previewTemplate: '<span class="hidden"></span>',
  13. filesizeBase: 1024,
  14. maxFilesize: (type === 'image' ? 8 : 2),
  15. init: function () {
  16.  
  17. this.on('sending', function (file, xhr, formData) {
  18. var filter = uploadBtn.data('image-filter') || false;
  19.  
  20. if (false !== filter) {
  21. formData.append('filter_name', filter);
  22. }
  23.  
  24. uploadContainer.block();
  25. });
  26.  
  27. this.on('success', function (file, response) {
  28. if (type === 'file') {
  29. var downloadBtn = uploadContainer.find('.uploader-download');
  30. var emptyBtn = uploadContainer.find('.uploader-empty');
  31. var input = uploadContainer.find('.uploader-input');
  32.  
  33. if (downloadBtn.length) {
  34. downloadBtn.attr('href', response.url);
  35. downloadBtn.removeClass('hidden');
  36. }
  37.  
  38. if (input.length) {
  39. input.val(response.url);
  40. }
  41.  
  42. if (emptyBtn.length) {
  43. emptyBtn.remove();
  44. }
  45. } else if (type === 'image') {
  46. uploadBtn.attr('src', response.displayUrl ? response.displayUrl : response.url);
  47. }
  48. });
  49.  
  50. this.on('error', function (file, response, xhr) {
  51. if (undefined !== xhr) {
  52. if (response.message) {
  53. FLASHES.addFlash('error', Translator.trans(response.message));
  54. } else if (response.error) {
  55. FLASHES.addFlash('error', Translator.trans(response.error));
  56. } else {
  57. FLASHES.addFlash('error', Translator.trans('upload.error.generic'));
  58. }
  59. } else {
  60. if ($.type(response) === 'string') {
  61. FLASHES.addFlash('error', Translator.trans(response));
  62. }
  63. }
  64.  
  65. uploadContainer.unblock();
  66. });
  67.  
  68. this.on('complete', function (file) {
  69. this.removeFile(file);
  70. uploadContainer.unblock();
  71. });
  72. }
  73. });
  74. break;
  75. default:
  76. throw new Error('Wrong uploader type');
  77. }
  78. });
Add Comment
Please, Sign In to add comment