1
|
|
|
document.addEventListener("DOMContentLoaded", function () { |
2
|
|
|
|
3
|
|
|
Dropzone.autoDiscover = false; |
|
|
|
|
4
|
|
|
|
5
|
|
|
Dropzone.prototype.queueButtonsInit = function () { |
6
|
|
|
this.queueButtonsObserve(); |
7
|
|
|
this.queueButtonsState(0); |
8
|
|
|
}; |
9
|
|
|
|
10
|
|
|
Dropzone.prototype.queueButtonsObserve = function () { |
|
|
|
|
11
|
|
|
var instance = this; |
12
|
|
|
document.querySelector("#actions .start").addEventListener("click", function () { |
13
|
|
|
instance.enqueueFiles(instance.getFilesWithStatus(Dropzone.ADDED)); |
|
|
|
|
14
|
|
|
}, false); |
15
|
|
|
document.querySelector("#actions .cancel").addEventListener("click", function () { |
16
|
|
|
instance.removeAllFiles(true); |
17
|
|
|
}, false); |
18
|
|
|
}; |
19
|
|
|
|
20
|
|
|
Dropzone.prototype.queueButtonsState = function (state) { |
|
|
|
|
21
|
|
|
if (state === 1) { |
22
|
|
|
document.querySelector("#actions .start").removeAttribute("disabled"); |
23
|
|
|
document.querySelector("#actions .start").style.opacity = "1"; |
24
|
|
|
document.querySelector("#actions .cancel").removeAttribute("disabled"); |
25
|
|
|
document.querySelector("#actions .cancel").style.opacity = "1"; |
26
|
|
|
} else { |
27
|
|
|
document.querySelector("#actions .start").setAttribute("disabled", "disabled"); |
28
|
|
|
document.querySelector("#actions .start").style.opacity = "0"; |
29
|
|
|
document.querySelector("#actions .cancel").setAttribute("disabled", "disabled"); |
30
|
|
|
document.querySelector("#actions .cancel").style.opacity = "0"; |
31
|
|
|
} |
32
|
|
|
}; |
33
|
|
|
|
34
|
|
|
// Get the template HTML and remove it from the doumenthe template HTML and remove it from the doument |
35
|
|
|
var previewNode = document.querySelector("#dropzone-file-template"); |
36
|
|
|
previewNode.id = ""; |
37
|
|
|
|
38
|
|
|
var previewTemplate = previewNode.parentNode.innerHTML; |
39
|
|
|
previewNode.parentNode.removeChild(previewNode); |
40
|
|
|
|
41
|
|
|
|
42
|
|
|
var myDropzone = new Dropzone('form.dropzone-gallery', { // Make the whole body a dropzone |
|
|
|
|
43
|
|
|
thumbnailWidth: 200, |
44
|
|
|
thumbnailHeight: 200, |
45
|
|
|
parallelUploads: 20, |
46
|
|
|
previewTemplate: previewTemplate, |
47
|
|
|
previewsContainer: "#dropzone-previews", |
48
|
|
|
autoQueue: false, // Make sure the files aren't queued until manually added |
49
|
|
|
clickable: ".fileinput-button", // Define the element that should be used as click trigger to select files. |
50
|
|
|
|
51
|
|
|
init: function () { |
52
|
|
|
this.queueButtonsInit(); |
53
|
|
|
|
54
|
|
|
this.on("addedfile", function (file) { |
55
|
|
|
// Hookup the start button |
56
|
|
|
file.previewElement.querySelector(".start").onclick = function () { |
57
|
|
|
myDropzone.enqueueFile(file); |
58
|
|
|
}; |
59
|
|
|
|
60
|
|
|
this.queueButtonsState(1); |
61
|
|
|
}); |
62
|
|
|
|
63
|
|
|
// Update the total progress bar |
64
|
|
|
this.on("totaluploadprogress", function (progress) { |
65
|
|
|
document.querySelector("#total-progress .progress-bar").style.width = progress + "%"; |
66
|
|
|
}); |
67
|
|
|
|
68
|
|
|
this.on("sending", function (file) { |
69
|
|
|
// Show the total progress bar when upload starts |
70
|
|
|
document.querySelector("#total-progress").style.opacity = "1"; |
71
|
|
|
// And disable the start button |
72
|
|
|
file.previewElement.querySelector(".start").setAttribute("disabled", "disabled"); |
73
|
|
|
}); |
74
|
|
|
|
75
|
|
|
this.on("success", function (file, response) { |
|
|
|
|
76
|
|
|
file.previewElement.querySelector('.dz-progress').style.opacity = "0"; |
77
|
|
|
file.previewElement.querySelector('.dz-size').style.opacity = "0"; |
78
|
|
|
file.previewElement.querySelector('.dz-error-message').style.opacity = "0"; |
79
|
|
|
|
80
|
|
|
$(file.previewElement.querySelector(".cancel")).hide(); |
81
|
|
|
file.previewElement.querySelector(".delete").style.display = "inline"; |
82
|
|
|
}); |
83
|
|
|
|
84
|
|
|
this.on("error", function (file, response, XMLHttpRequest) { |
|
|
|
|
85
|
|
|
}); |
86
|
|
|
|
87
|
|
|
// Hide the total progress bar when nothing's uploading anymore |
88
|
|
|
this.on("queuecomplete", function (progress) { |
|
|
|
|
89
|
|
|
document.querySelector("#total-progress").style.opacity = "0"; |
90
|
|
|
|
91
|
|
|
this.queueButtonsState(0); |
92
|
|
|
}); |
93
|
|
|
} |
94
|
|
|
}); |
95
|
|
|
|
96
|
|
|
// function () { |
97
|
|
|
// |
98
|
|
|
// } |
99
|
|
|
|
100
|
|
|
// Dropzone.options.myAwesomeDropzone = { |
101
|
|
|
// paramName: "file", |
102
|
|
|
// maxFilesize: 10, |
103
|
|
|
// url: 'UploadImages', |
104
|
|
|
// previewsContainer: "#dropzone-previews", |
105
|
|
|
// uploadMultiple: true, |
106
|
|
|
// parallelUploads: 5, |
107
|
|
|
// maxFiles: 20, |
108
|
|
|
// init: function () { |
109
|
|
|
// var cd; |
110
|
|
|
// this.on("success", function (file, response) { |
111
|
|
|
// $('.dz-progress').hide(); |
112
|
|
|
// $('.dz-size').hide(); |
113
|
|
|
// $('.dz-error-mark').hide(); |
114
|
|
|
// console.log(response); |
115
|
|
|
// console.log(file); |
116
|
|
|
// cd = response; |
117
|
|
|
// }); |
118
|
|
|
// this.on("addedfile", function (file) { |
119
|
|
|
// var removeButton = Dropzone.createElement("<a href=\"#\">Remove file</a>"); |
120
|
|
|
// var _this = this; |
121
|
|
|
// removeButton.addEventListener("click", function (e) { |
122
|
|
|
// e.preventDefault(); |
123
|
|
|
// e.stopPropagation(); |
124
|
|
|
// _this.removeFile(file); |
125
|
|
|
// var name = "largeFileName=" + cd.pi.largePicPath + "&smallFileName=" + cd.pi.smallPicPath; |
126
|
|
|
// $.ajax({ |
127
|
|
|
// type: 'POST', |
128
|
|
|
// url: 'DeleteImage', |
129
|
|
|
// data: name, |
130
|
|
|
// dataType: 'json' |
131
|
|
|
// }); |
132
|
|
|
// }); |
133
|
|
|
// file.previewElement.appendChild(removeButton); |
134
|
|
|
// }); |
135
|
|
|
// } |
136
|
|
|
// }; |
137
|
|
|
}); |
This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.
To learn more about declaring variables in Javascript, see the MDN.