Select reply in replies list done.
This commit is contained in:
parent
2263d2ba7a
commit
76b84c9a14
@ -1311,12 +1311,16 @@
|
||||
reply: (function() {
|
||||
|
||||
function _Class(file) {
|
||||
var previous, _ref;
|
||||
var previous, _ref,
|
||||
_this = this;
|
||||
_ref = (previous = qr.replies[qr.replies.length - 1]) ? [previous.name, /^sage$/.test(previous.email) ? null : previous.email, conf['Remember Subject'] ? previous.sub : null] : [$.get("qr_name", null), $.get("qr_email", null), conf['Remember Subject'] ? $.get("qr_sub", null) : null], this.name = _ref[0], this.email = _ref[1], this.sub = _ref[2];
|
||||
this.com = null;
|
||||
this.el = $.el('li', {
|
||||
textContent: 'no file'
|
||||
});
|
||||
$.on(this.el, 'click', function() {
|
||||
return _this.select();
|
||||
});
|
||||
if (file) this.setFile(file);
|
||||
$.before($('#addReply', qr.el), this.el);
|
||||
qr.replies.push(this);
|
||||
@ -1327,14 +1331,18 @@
|
||||
return this.el.textContent = this.file.fileName;
|
||||
};
|
||||
|
||||
_Class.prototype.load = function() {
|
||||
var data, _ref;
|
||||
for (data in this) {
|
||||
if ((_ref = $("[name=" + data + "]", qr.el)) != null) {
|
||||
_ref.value = this[data];
|
||||
}
|
||||
_Class.prototype.select = function() {
|
||||
var data, _i, _len, _ref, _ref2, _results;
|
||||
if ((_ref = qr.selected) != null) _ref.el.id = null;
|
||||
qr.selected = this;
|
||||
this.el.id = 'selected';
|
||||
_ref2 = ['name', 'email', 'sub', 'com'];
|
||||
_results = [];
|
||||
for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
|
||||
data = _ref2[_i];
|
||||
_results.push($("[name=" + data + "]", qr.el).value = this[data]);
|
||||
}
|
||||
return log(this);
|
||||
return _results;
|
||||
};
|
||||
|
||||
_Class.prototype.rm = function() {};
|
||||
@ -1376,15 +1384,17 @@
|
||||
return qr.el.classList.toggle('dump');
|
||||
});
|
||||
$.on($('#addReply', qr.el), 'click', function() {
|
||||
return new qr.reply().load();
|
||||
return new qr.reply().select();
|
||||
});
|
||||
$.on($('form', qr.el), 'submit', qr.submit);
|
||||
$.on($('[type=file]', qr.el), 'change', qr.fileInput);
|
||||
new qr.reply().load();
|
||||
new qr.reply().select();
|
||||
_ref2 = ['name', 'email', 'sub', 'com'];
|
||||
for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
|
||||
input = _ref2[_j];
|
||||
$.on($("[name=" + input + "]", qr.el), 'change', function() {});
|
||||
$.on($("[name=" + input + "]", qr.el), 'change', function() {
|
||||
return qr.selected[this.name] = this.value;
|
||||
});
|
||||
}
|
||||
return $.add(d.body, qr.el);
|
||||
},
|
||||
@ -1406,7 +1416,7 @@
|
||||
$.set("qr_name", reply.name);
|
||||
$.set("qr_email", /^sage$/.test(reply.email) ? null : reply.email);
|
||||
if (conf['Remember Subject']) $.set("qr_sub", reply.sub);
|
||||
if (qr.replies.length === 1) new qr.reply().load();
|
||||
if (qr.replies.length === 1) new qr.reply().select();
|
||||
return reply.rm();
|
||||
}
|
||||
};
|
||||
|
||||
@ -986,18 +986,19 @@ qr =
|
||||
@com = null
|
||||
@el = $.el 'li',
|
||||
textContent: 'no file'
|
||||
$.on @el, 'click', => @select()
|
||||
@setFile file if file
|
||||
$.before $('#addReply', qr.el), @el
|
||||
qr.replies.push @
|
||||
# set/rm this reply's file
|
||||
setFile: (@file) ->
|
||||
# update UI
|
||||
@el.textContent = @file.fileName
|
||||
load: ->
|
||||
for data of @
|
||||
$("[name=#{data}]", qr.el)?.value = @[data]
|
||||
# visual feedback in the list
|
||||
log @
|
||||
select: ->
|
||||
qr.selected?.el.id = null
|
||||
qr.selected = @
|
||||
@el.id = 'selected'
|
||||
for data in ['name', 'email', 'sub', 'com']
|
||||
$("[name=#{data}]", qr.el).value = @[data]
|
||||
rm: ->
|
||||
# rm reply from qr.replies and the UI
|
||||
|
||||
@ -1125,14 +1126,14 @@ textarea.field {
|
||||
$.on $('#autohide', qr.el), 'click', qr.hide
|
||||
$.on $('.close', qr.el), 'click', qr.close
|
||||
$.on $('#dump', qr.el), 'click', -> qr.el.classList.toggle 'dump'
|
||||
$.on $('#addReply', qr.el), 'click', -> new qr.reply().load()
|
||||
$.on $('#addReply', qr.el), 'click', -> new qr.reply().select()
|
||||
$.on $('form', qr.el), 'submit', qr.submit
|
||||
$.on $('[type=file]', qr.el), 'change', qr.fileInput
|
||||
|
||||
new qr.reply().load()
|
||||
new qr.reply().select()
|
||||
# save selected reply's data
|
||||
for input in ['name', 'email', 'sub', 'com']
|
||||
$.on $("[name=#{input}]", qr.el), 'change', -> # (getReply?)[@name] = @value
|
||||
$.on $("[name=#{input}]", qr.el), 'change', -> qr.selected[@name] = @value
|
||||
# sync between tabs
|
||||
# $.on window, 'storage', (e) ->
|
||||
# if match = e.key.match /qr_(.+)$/
|
||||
@ -1164,7 +1165,7 @@ textarea.field {
|
||||
$.set "qr_email", if /^sage$/.test reply.email then null else reply.email
|
||||
$.set "qr_sub", reply.sub if conf['Remember Subject']
|
||||
|
||||
new qr.reply().load() if qr.replies.length is 1
|
||||
new qr.reply().select() if qr.replies.length is 1
|
||||
reply.rm()
|
||||
|
||||
options =
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user