mirror of https://github.com/PiyushXCoder/lupt.git
47 lines
1.7 KiB
JavaScript
47 lines
1.7 KiB
JavaScript
let Images = class {
|
|
static setupImages() {
|
|
$('#file-input')[0].addEventListener('change', function(e) {
|
|
const file = e.target.files[0];
|
|
if (!file) {
|
|
return;
|
|
}
|
|
$('#progress_clip').removeClass('is-hidden');
|
|
$('#action_clip').addClass('is-hidden');
|
|
Images.compressImage(file, 0.1, 'image/webp');
|
|
});
|
|
}
|
|
|
|
static compressImage(file, qual, mime) {
|
|
new Compressor(file, {
|
|
quality: qual,
|
|
width: 320,
|
|
mimeType: mime,
|
|
success(result) {
|
|
var reader = new FileReader();
|
|
reader.readAsDataURL(result);
|
|
reader.onloadend = function() {
|
|
var base64data = reader.result;
|
|
console.log('a')
|
|
if(base64data.length > 63488 && mime != 'image/jpeg') {
|
|
base64data = null;
|
|
result = null;
|
|
Images.compressImage(file, 0.7, 'image/jpeg');
|
|
return;
|
|
} else if(base64data.length > 63488 && mime == 'image/jpeg') {
|
|
var prop = {
|
|
title: 'Warning',
|
|
text: 'file is too large!',
|
|
check: false
|
|
}; dialog(prop, function() {});
|
|
return;
|
|
}
|
|
socket.send(JSON.stringify({
|
|
cmd: "img",
|
|
src: base64data
|
|
}));
|
|
$('#progress_clip').addClass('is-hidden');
|
|
}
|
|
},
|
|
});
|
|
}
|
|
} |