|
21 | 21 | var allowedImageExtensions = gdn.definition('allowedImageExtensions');
|
22 | 22 | var allowedFileExtensions = gdn.definition('allowedFileExtensions');
|
23 | 23 | var allowedFileMimeTypes = gdn.definition('allowedFileMimeTypes');
|
| 24 | + var allowedFileMimeTypeWithExts = gdn.definition('allowedFileMimeTypeWithExts'); |
24 | 25 | var maxFileUploads = gdn.definition('maxFileUploads');
|
25 | 26 | var debug = false;
|
26 | 27 |
|
|
29 | 30 | logMessage('allowedImageExtensions:' + allowedImageExtensions);
|
30 | 31 | logMessage('allowedFileExtensions:' + allowedFileExtensions);
|
31 | 32 | logMessage('allowedFileMimeTypes:' + allowedFileMimeTypes);
|
| 33 | + logMessage('allowedFileMimeTypeWithExts:' + allowedFileMimeTypeWithExts); |
32 | 34 | logMessage('maxFileUploads:' + maxFileUploads);
|
33 | 35 |
|
34 | 36 | function logMessage(message) {
|
|
127 | 129 | return CodeMirror.Pass;
|
128 | 130 | }
|
129 | 131 |
|
| 132 | + function resetFileInput(editor){ |
| 133 | + var imageInput = editor.gui.toolbar.getElementsByClassName('imageInput')[0]; |
| 134 | + imageInput.value =''; |
| 135 | + } |
| 136 | + |
130 | 137 | function customUploadImage(file, onSuccess, onError) {
|
131 | 138 | var self = this;
|
132 | 139 | var position = {};
|
133 | 140 |
|
134 | 141 | onSuccess = function onSuccess(jsonData) {
|
135 | 142 | updateMediaIDs(self, jsonData);
|
136 | 143 | afterFileUploaded(self, jsonData, position);
|
| 144 | + resetFileInput(self); |
137 | 145 | };
|
138 | 146 |
|
139 | 147 | onError = function onError(errorMessage) {
|
140 |
| - showErrorMessage(self,errorMessage) |
| 148 | + showErrorMessage(self,errorMessage); |
141 | 149 | if(position && position.start && position.end) {
|
142 | 150 | self.codemirror.replaceRange("", position.start, position.end);
|
143 | 151 | }
|
| 152 | + resetFileInput(self); |
144 | 153 | }
|
145 | 154 |
|
146 | 155 | function onErrorSup(errorMessage) {
|
|
233 | 242 | if (this.status === 201 && response && !response.error && response.mediaID > 0 && response.size > 0) {
|
234 | 243 | onSuccess(response);
|
235 | 244 | } else {
|
236 |
| - if (response.errors) { // server side generated error message |
| 245 | + if (response.errors || response.message) { // server side generated error message |
237 | 246 | onErrorSup(parseServerErrors(response));
|
238 |
| - } else { //unknown error |
239 |
| - console.error('EasyMDE: Received an unexpected response after uploading the image.' |
240 |
| - + this.status + ' (' + this.statusText + ')'); |
241 |
| - onErrorSup(fillErrorMessage(self.options.errorMessages.importError)); |
| 247 | + } else { |
| 248 | + //unknown error |
| 249 | + console.error('EasyMDE: Received an unexpected response after uploading the image.' |
| 250 | + + this.status + ' (' + this.statusText + ')'); |
| 251 | + onErrorSup(fillErrorMessage(self.options.errorMessages.importError)); |
242 | 252 | }
|
243 | 253 | }
|
244 | 254 | };
|
|
555 | 565 | sbOnUploaded: 'Uploaded #image_name#',
|
556 | 566 | sizeUnits: ' B, KB, MB',
|
557 | 567 | },
|
558 |
| - uploadImage: true, |
| 568 | + uploadImage: canUpload, |
559 | 569 | imageMaxSize: maxUploadSize, //Maximum image size in bytes
|
560 |
| - imageAccept: allowedFileMimeTypes, //A comma-separated list of mime-types |
| 570 | + imageAccept: allowedFileMimeTypeWithExts, //A comma-separated list of mime-types and extensions |
561 | 571 | imageUploadFunction: customUploadImage,
|
562 | 572 | beforeUploadingImagesFunction: beforeUploadingImages,
|
563 | 573 | errorCallback: errorCallback,// A callback function used to define how to display an error message.
|
|
0 commit comments