-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApplication-Form-Bootstrap-Image-Uploader.js
89 lines (64 loc) · 2.07 KB
/
Application-Form-Bootstrap-Image-Uploader.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
// Enter your imgbb api key below
var apikey = "";
/* ==========================================
SHOW UPLOADED IMAGE
* ========================================== */
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#imageResult')
.attr('src', e.target.result);
};
reader.readAsDataURL(input.files[0]);
}
}
$(function () {
$('#upload').on('change', function () {
readURL(input);
uploadimage('upload')
});
});
/* ==========================================
SHOW UPLOADED IMAGE NAME
* ========================================== */
var input = document.getElementById( 'upload' );
var infoArea = document.getElementById( 'upload-label' );
var urllink = document.getElementById( 'urllink' );
input.addEventListener( 'change', showFileName );
function showFileName( event ) {
var input = event.srcElement;
var fileName = input.files[0].name;
infoArea.textContent = 'File name: ' + fileName;
}
function uploadimage(input_tag) {
var file = document.getElementById(input_tag);
var form = new FormData();
form.append("image", file.files[0])
var settings = {
"url": "https://api.imgbb.com/1/upload?key="+apikey,
"method": "POST",
"timeout": 0,
"processData": false,
"mimeType": "multipart/form-data",
"contentType": false,
"data": form
};
$.ajax(settings).done(function (response) {
console.log(response);
var jx = JSON.parse(response);
console.log(jx.data.url);
urllink.innerHTML = jx.data.url ;
});
}
$(document).on('dragstart dragenter dragover', function(event) {
$('#image-drag-drop').removeClass('d-none'); // Show the drop zone
dropZoneVisible= true;
}).on('drop dragleave dragend', function (event) {
dropZoneTimer= setTimeout( function(){
if( !dropZoneVisible ) {
$('#image-drag-drop').addClass('d-none');
}
}, 50 ); // dropZoneHideDelay= 70, but anything above 50 is better
clearTimeout(dropZoneTimer);
});