]> git.mxchange.org Git - friendica.git/blobdiff - view/js/dropzone-factory.js
spelling: bootstrap
[friendica.git] / view / js / dropzone-factory.js
index fe6c4448b2e3f6e3cc97343673f3e2036ca63273..ca77bb6d500652fcfbb4fbe3d4b36164bdc39555 100644 (file)
@@ -1,26 +1,27 @@
 var DzFactory = function () {
-       this.createDropzone = function(element, target, maxImagesize) {
-               return new Dropzone( element, {
+       this.createDropzone = function(dropSelector, textareaElementId) {
+               return new Dropzone(dropSelector, {
                        paramName: 'userfile', // The name that will be used to transfer the file
-                       maxFilesize: maxImagesize, // MB
-                       url: '/media/photo/upload?response=url&album=',
+                       maxFilesize: max_imagesize, // MB
+                       url: '/media/photo/upload?album=',
+                       acceptedFiles: 'image/*',
+                       clickable: true,
                        accept: function(file, done) {
                                done();
                        },
                        init: function() {
                                this.on('success', function(file, serverResponse) {
-                                       var _target = $(target)
-                                       var resp = $(serverResponse).find('div#content').text()
-                                       if (_target.setRangeText) {
+                                       const targetTextarea = document.getElementById(textareaElementId);
+                                       if (targetTextarea.setRangeText) {
                                                //if setRangeText function is supported by current browser
-                                               _target.setRangeText(' ' + $.trim(resp) + ' ')
+                                               targetTextarea.setRangeText(' ' + $.trim(serverResponse) + ' ');
                                        } else {
-                                               _target.focus()
-                                               document.execCommand('insertText', false /*no UI*/, ' ' + $.trim(resp) + ' ');
+                                               targetTextarea.focus();
+                                               document.execCommand('insertText', false /*no UI*/, '\n' + $.trim(serverResponse) + '\n');
                                        }
                                });
                                this.on('complete', function(file) {
-                                       var dz = this;
+                                       const dz = this;
                                        // Remove just uploaded file from dropzone, makes interface more clear.
                                        // Image can be seen in posting-preview
                                        // We need preview to get optical feedback about upload-progress.
@@ -35,7 +36,7 @@ var DzFactory = function () {
                                items.forEach((item) => {
                                        if (item.kind === 'file') {
                                                // adds the file to your dropzone instance
-                                               dz.addFile(item.getAsFile())
+                                               dz.addFile(item.getAsFile());
                                        }
                                })
                        },
@@ -47,15 +48,14 @@ var DzFactory = function () {
                items.forEach((item) => {
                        if (item.kind === 'file') {
                                // adds the file to your dropzone instance
-                               dz.addFile(item.getAsFile())
+                               dz.addFile(item.getAsFile());
                        }
                })
        };
 
-       this.setupDropzone = function(element, target, maxImagesize) {
-               var dropzone = this.createDropzone(element, target, maxImagesize)
-               $(element).on('paste', function(event) {
-
+       this.setupDropzone = function(dropSelector, textareaElementId) {
+               var dropzone = this.createDropzone(dropSelector, textareaElementId);
+               $(dropSelector).on('paste', function(event) {
                        dzFactory.copyPaste(event, dropzone);
                })
        };