remove file

This commit is contained in:
James Campos 2011-08-06 20:01:07 -07:00
parent e5d33fadaf
commit 7310c2e9d3
2 changed files with 20 additions and 12 deletions

View File

@ -1242,13 +1242,15 @@
return $('#recaptcha_response_field').id = ''; return $('#recaptcha_response_field').id = '';
}, },
attach: function() { attach: function() {
var file, files; var fileDiv, files;
$('#auto', qr.el).checked = true; $('#auto', qr.el).checked = true;
file = $.el('input', {
type: 'file',
name: 'upfile'
});
files = $('#files', qr.el); files = $('#files', qr.el);
fileDiv = $.el('div', {
innerHTML: '<input type=file name=upfile><a>X</a>'
});
$.bind(fileDiv.lastChild, 'click', (function() {
return $.rm(this.parentNode);
}));
return $.prepend(files, file); return $.prepend(files, file);
}, },
autoPost: function() { autoPost: function() {
@ -1309,7 +1311,7 @@
return $.append(d.body, qr.el); return $.append(d.body, qr.el);
}, },
message: function(e) { message: function(e) {
var data, duration, file, oldFile; var data, duration, file, fileDiv, oldFile;
Recaptcha.reload(); Recaptcha.reload();
$('iframe[name=iframe]').src = 'about:blank'; $('iframe[name=iframe]').src = 'about:blank';
data = e.data; data = e.data;
@ -1324,10 +1326,12 @@
return; return;
} }
if (qr.el) { if (qr.el) {
file = $('#files input', qr.el); fileDiv = $('#files div:last-child', qr.el);
if (g.REPLY && (conf['Persistent QR'] || file)) { if (g.REPLY && (conf['Persistent QR'] || file)) {
qr.refresh(); qr.refresh();
if (file) { if (fileDiv) {
$.rm(fileDiv);
file = fileDiv.firstChild;
oldFile = $('#qr_form input[type=file]', qr.el); oldFile = $('#qr_form input[type=file]', qr.el);
$.replace(oldFile, file); $.replace(oldFile, file);
} }

View File

@ -969,9 +969,10 @@ qr =
# remove file # remove file
# error handling # error handling
# persistent captcha # persistent captcha
# code review
# rm Recaptcha # rm Recaptcha
# group captcha # group captcha
# error too large error should happen on attach
# attaching = persistent qr
init: -> init: ->
g.callbacks.push qr.node g.callbacks.push qr.node
$.bind window, 'message', qr.message $.bind window, 'message', qr.message
@ -988,8 +989,9 @@ qr =
attach: -> attach: ->
$('#auto', qr.el).checked = true $('#auto', qr.el).checked = true
file = $.el 'input', type: 'file', name: 'upfile'
files = $ '#files', qr.el files = $ '#files', qr.el
fileDiv = $.el 'div', innerHTML: '<input type=file name=upfile><a>X</a>'
$.bind fileDiv.lastChild, 'click', (-> $.rm @parentNode)
$.prepend files, file $.prepend files, file
autoPost: -> autoPost: ->
@ -1074,10 +1076,12 @@ qr =
return return
if qr.el if qr.el
file = $ '#files input', qr.el fileDiv = $ '#files div:last-child', qr.el
if g.REPLY and (conf['Persistent QR'] or file) if g.REPLY and (conf['Persistent QR'] or file)
qr.refresh() qr.refresh()
if file if fileDiv
$.rm fileDiv
file = fileDiv.firstChild
oldFile = $ '#qr_form input[type=file]', qr.el oldFile = $ '#qr_form input[type=file]', qr.el
$.replace oldFile, file $.replace oldFile, file
else else