attach next file if dup detected
This commit is contained in:
parent
0ea0b43f38
commit
2a74af9b3b
@ -1242,16 +1242,22 @@
|
|||||||
return $('#recaptcha_response_field').id = '';
|
return $('#recaptcha_response_field').id = '';
|
||||||
},
|
},
|
||||||
attach: function() {
|
attach: function() {
|
||||||
var fileDiv, files;
|
var fileDiv;
|
||||||
$('#auto', qr.el).checked = true;
|
$('#auto', qr.el).checked = true;
|
||||||
files = $('#files', qr.el);
|
|
||||||
fileDiv = $.el('div', {
|
fileDiv = $.el('div', {
|
||||||
innerHTML: '<input type=file name=upfile><a>X</a>'
|
innerHTML: '<input type=file name=upfile><a>X</a>'
|
||||||
});
|
});
|
||||||
$.bind(fileDiv.lastChild, 'click', (function() {
|
$.bind(fileDiv.lastChild, 'click', (function() {
|
||||||
return $.rm(this.parentNode);
|
return $.rm(this.parentNode);
|
||||||
}));
|
}));
|
||||||
return $.prepend(files, file);
|
return $.prepend(qr.files, fileDiv);
|
||||||
|
},
|
||||||
|
attachNext: function() {
|
||||||
|
var file, fileDiv, oldFile;
|
||||||
|
fileDiv = $.rm(qr.files.lastChild);
|
||||||
|
file = fileDiv.firstChild;
|
||||||
|
oldFile = $('#qr_form input[type=file]', qr.el);
|
||||||
|
return $.replace(oldFile, file);
|
||||||
},
|
},
|
||||||
autoPost: function() {
|
autoPost: function() {
|
||||||
var captcha, responseField;
|
var captcha, responseField;
|
||||||
@ -1307,6 +1313,7 @@
|
|||||||
top: '0px',
|
top: '0px',
|
||||||
left: '0px'
|
left: '0px'
|
||||||
}, html);
|
}, html);
|
||||||
|
qr.files = $('#files', qr.el);
|
||||||
qr.refresh();
|
qr.refresh();
|
||||||
$('textarea', qr.el).value = $('textarea').value;
|
$('textarea', qr.el).value = $('textarea').value;
|
||||||
$.bind($('input[name=name]', qr.el), 'mousedown', function(e) {
|
$.bind($('input[name=name]', qr.el), 'mousedown', function(e) {
|
||||||
@ -1321,7 +1328,7 @@
|
|||||||
return $.append(d.body, qr.el);
|
return $.append(d.body, qr.el);
|
||||||
},
|
},
|
||||||
message: function(e) {
|
message: function(e) {
|
||||||
var data, duration, file, fileDiv, oldFile;
|
var data, duration;
|
||||||
Recaptcha.reload();
|
Recaptcha.reload();
|
||||||
$('iframe[name=iframe]').src = 'about:blank';
|
$('iframe[name=iframe]').src = 'about:blank';
|
||||||
data = e.data;
|
data = e.data;
|
||||||
@ -1331,19 +1338,22 @@
|
|||||||
$('#recaptcha_response_field', qr.el).value = '';
|
$('#recaptcha_response_field', qr.el).value = '';
|
||||||
$('#autohide', qr.el).checked = false;
|
$('#autohide', qr.el).checked = false;
|
||||||
if (data.textContent === 'You seem to have mistyped the verification.') {
|
if (data.textContent === 'You seem to have mistyped the verification.') {
|
||||||
qr.autoPost();
|
if (qr.captcha.length) {
|
||||||
|
qr.autoPost();
|
||||||
|
}
|
||||||
|
} else if (data.textContent === 'Error: Duplicate file entry detected.' && qr.files.childElementCount) {
|
||||||
|
qr.attachNext();
|
||||||
|
if (qr.captcha.length) {
|
||||||
|
qr.autoPost();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (qr.el) {
|
if (qr.el) {
|
||||||
fileDiv = $('#files div:last-child', qr.el);
|
if (g.REPLY && (conf['Persistent QR'] || qr.files.childElementCount)) {
|
||||||
if (g.REPLY && (conf['Persistent QR'] || fileDiv)) {
|
|
||||||
qr.refresh();
|
qr.refresh();
|
||||||
if (fileDiv) {
|
if (qr.files.childElementCount) {
|
||||||
$.rm(fileDiv);
|
qr.attachNext();
|
||||||
file = fileDiv.firstChild;
|
|
||||||
oldFile = $('#qr_form input[type=file]', qr.el);
|
|
||||||
$.replace(oldFile, file);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
qr.close();
|
qr.close();
|
||||||
|
|||||||
@ -966,10 +966,10 @@ cooldown =
|
|||||||
qr.autoPost()
|
qr.autoPost()
|
||||||
|
|
||||||
qr =
|
qr =
|
||||||
|
# TODO
|
||||||
# error handling
|
# error handling
|
||||||
# persistent captcha
|
# persistent captcha
|
||||||
# rm Recaptcha
|
# rm Recaptcha
|
||||||
# group captcha
|
|
||||||
# error too large error should happen on attach
|
# error too large error should happen on attach
|
||||||
init: ->
|
init: ->
|
||||||
g.callbacks.push qr.node
|
g.callbacks.push qr.node
|
||||||
@ -987,10 +987,15 @@ qr =
|
|||||||
|
|
||||||
attach: ->
|
attach: ->
|
||||||
$('#auto', qr.el).checked = true
|
$('#auto', qr.el).checked = true
|
||||||
files = $ '#files', qr.el
|
|
||||||
fileDiv = $.el 'div', innerHTML: '<input type=file name=upfile><a>X</a>'
|
fileDiv = $.el 'div', innerHTML: '<input type=file name=upfile><a>X</a>'
|
||||||
$.bind fileDiv.lastChild, 'click', (-> $.rm @parentNode)
|
$.bind fileDiv.lastChild, 'click', (-> $.rm @parentNode)
|
||||||
$.prepend files, file
|
$.prepend qr.files, fileDiv
|
||||||
|
|
||||||
|
attachNext: ->
|
||||||
|
fileDiv = $.rm qr.files.lastChild
|
||||||
|
file = fileDiv.firstChild
|
||||||
|
oldFile = $ '#qr_form input[type=file]', qr.el
|
||||||
|
$.replace oldFile, file
|
||||||
|
|
||||||
autoPost: ->
|
autoPost: ->
|
||||||
responseField = $ '#recaptcha_response_field', qr.el
|
responseField = $ '#recaptcha_response_field', qr.el
|
||||||
@ -1053,6 +1058,7 @@ qr =
|
|||||||
<a id=error class=error></a>
|
<a id=error class=error></a>
|
||||||
"
|
"
|
||||||
qr.el = ui.dialog 'qr', top: '0px', left: '0px', html
|
qr.el = ui.dialog 'qr', top: '0px', left: '0px', html
|
||||||
|
qr.files = $ '#files', qr.el
|
||||||
|
|
||||||
qr.refresh()
|
qr.refresh()
|
||||||
$('textarea', qr.el).value = $('textarea').value
|
$('textarea', qr.el).value = $('textarea').value
|
||||||
@ -1078,18 +1084,19 @@ qr =
|
|||||||
$('#recaptcha_response_field', qr.el).value = ''
|
$('#recaptcha_response_field', qr.el).value = ''
|
||||||
$('#autohide', qr.el).checked = false
|
$('#autohide', qr.el).checked = false
|
||||||
if data.textContent is 'You seem to have mistyped the verification.'
|
if data.textContent is 'You seem to have mistyped the verification.'
|
||||||
qr.autoPost()
|
if qr.captcha.length
|
||||||
|
qr.autoPost()
|
||||||
|
else if data.textContent is 'Error: Duplicate file entry detected.' and qr.files.childElementCount
|
||||||
|
qr.attachNext()
|
||||||
|
if qr.captcha.length
|
||||||
|
qr.autoPost()
|
||||||
return
|
return
|
||||||
|
|
||||||
if qr.el
|
if qr.el
|
||||||
fileDiv = $ '#files div:last-child', qr.el
|
if g.REPLY and (conf['Persistent QR'] or qr.files.childElementCount)
|
||||||
if g.REPLY and (conf['Persistent QR'] or fileDiv)
|
|
||||||
qr.refresh()
|
qr.refresh()
|
||||||
if fileDiv
|
if qr.files.childElementCount
|
||||||
$.rm fileDiv
|
qr.attachNext()
|
||||||
file = fileDiv.firstChild
|
|
||||||
oldFile = $ '#qr_form input[type=file]', qr.el
|
|
||||||
$.replace oldFile, file
|
|
||||||
else
|
else
|
||||||
qr.close()
|
qr.close()
|
||||||
if conf['Cooldown']
|
if conf['Cooldown']
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user