Finish proofreading.

This commit is contained in:
Nicolas Stepien 2012-01-28 20:22:39 +01:00
parent 962ad27222
commit f30cc383ec
2 changed files with 122 additions and 106 deletions

View File

@ -1229,7 +1229,7 @@
var i, spoiler, _i, _len, _ref; var i, spoiler, _i, _len, _ref;
qr.el.hidden = true; qr.el.hidden = true;
qr.message.send({ qr.message.send({
abort: true req: 'abort'
}); });
d.activeElement.blur(); d.activeElement.blur();
$.removeClass(qr.el, 'dump'); $.removeClass(qr.el, 'dump');
@ -1639,7 +1639,7 @@
return; return;
} }
qr.message.send({ qr.message.send({
abort: true req: 'abort'
}); });
reply = qr.replies[0]; reply = qr.replies[0];
if (!(reply.com || reply.file)) { if (!(reply.com || reply.file)) {
@ -1775,21 +1775,20 @@
}); });
ready = function() { ready = function() {
if (location.hostname === 'sys.4chan.org') { if (location.hostname === 'sys.4chan.org') {
$.rm(script);
return qr.message.send({ return qr.message.send({
status: true, req: 'status',
ready: true ready: true
}); });
} }
}; };
if (d.documentElement) { if (d.documentElement) {
$.add(d.documentElement, script); $.add(d.documentElement, script);
$.rm(script);
ready(); ready();
return; return;
} }
return $.ready(function() { return $.ready(function() {
$.add(d.head, script); $.add(d.head, script);
$.rm(script);
return ready(); return ready();
}); });
}, },
@ -1799,23 +1798,23 @@
return postMessage(data, '*'); return postMessage(data, '*');
}, },
receive: function(data) { receive: function(data) {
var bb, form, i, l, name, ui8a, url, val, _ref; var _ref;
if (data.abort) { switch (data.req) {
case 'abort':
if ((_ref = qr.ajax) != null) _ref.abort(); if ((_ref = qr.ajax) != null) _ref.abort();
qr.message.send({ return qr.message.send({
status: true req: 'status'
}); });
return; case 'response':
return qr.response(data.html);
case 'status':
return qr.status(data);
default:
return qr.message.post(data);
} }
if (data.response) { },
qr.response(data.html); post: function(data) {
return; var bb, callbacks, form, i, l, name, opts, ui8a, url, val;
}
if (data.status) qr.status(data);
delete data.qr;
if (data.mode === 'regist') {
url = "http://sys.4chan.org/" + data.board + "/post";
delete data.board;
form = new FormData(); form = new FormData();
if (engine === 'gecko' && data.upfile) { if (engine === 'gecko' && data.upfile) {
l = data.upfile.buffer.length; l = data.upfile.buffer.length;
@ -1828,36 +1827,40 @@
form.append('upfile', bb.getBlob(data.upfile.type), data.upfile.name); form.append('upfile', bb.getBlob(data.upfile.type), data.upfile.name);
delete data.upfile; delete data.upfile;
} }
url = "http://sys.4chan.org/" + data.board + "/post";
delete data.board;
delete data.qr;
for (name in data) { for (name in data) {
val = data[name]; val = data[name];
if (val) form.append(name, val); if (val) form.append(name, val);
} }
return qr.ajax = $.ajax(url, { callbacks = {
onload: (function() { onload: function() {
return qr.message.send({ return qr.message.send({
response: true, req: 'response',
html: this.response html: this.response
}); });
}) }
}, { };
opts = {
form: form, form: form,
type: 'post', type: 'post',
upCallbacks: { upCallbacks: {
onload: function() { onload: function() {
return qr.message.send({ return qr.message.send({
status: true, req: 'status',
progress: '...' progress: '...'
}); });
}, },
onprogress: function(e) { onprogress: function(e) {
return qr.message.send({ return qr.message.send({
status: true, req: 'status',
progress: "" + (Math.round(e.loaded / e.total * 100)) + "%" progress: "" + (Math.round(e.loaded / e.total * 100)) + "%"
}); });
} }
} }
}); };
} return qr.ajax = $.ajax(url, callbacks, opts);
} }
} }
}; };
@ -2303,7 +2306,7 @@
d.title = d.title.match(/^.+-/)[0] + ' 404'; d.title = d.title.match(/^.+-/)[0] + ' 404';
g.dead = true; g.dead = true;
qr.message.send({ qr.message.send({
abort: true req: 'abort'
}); });
qr.status(); qr.status();
Favicon.update(); Favicon.update();

View File

@ -887,7 +887,7 @@ qr =
qr.dialog() qr.dialog()
close: -> close: ->
qr.el.hidden = true qr.el.hidden = true
qr.message.send abort: true qr.message.send req: 'abort'
d.activeElement.blur() d.activeElement.blur()
$.removeClass qr.el, 'dump' $.removeClass qr.el, 'dump'
for i in qr.replies for i in qr.replies
@ -1212,7 +1212,7 @@ qr =
qr.cooldown.auto = !qr.cooldown.auto qr.cooldown.auto = !qr.cooldown.auto
qr.status() qr.status()
return return
qr.message.send abort: true qr.message.send req: 'abort'
reply = qr.replies[0] reply = qr.replies[0]
# prevent errors # prevent errors
@ -1355,37 +1355,36 @@ qr =
script = $.el 'script', textContent: "window.addEventListener('message',#{code},false)" script = $.el 'script', textContent: "window.addEventListener('message',#{code},false)"
ready = -> ready = ->
if location.hostname is 'sys.4chan.org' if location.hostname is 'sys.4chan.org'
qr.message.send status: true, ready: true $.rm script
qr.message.send req: 'status', ready: true
# Chrome can access the documentElement on document-start # Chrome can access the documentElement on document-start
if d.documentElement if d.documentElement
$.add d.documentElement, script $.add d.documentElement, script
$.rm script
ready() ready()
return return
# other browsers will have to wait # other browsers will have to wait
$.ready -> $.ready ->
$.add d.head, script $.add d.head, script
$.rm script
ready() ready()
send: (data) -> send: (data) ->
data.changeContext = true data.changeContext = true
data.qr = true data.qr = true
postMessage data, '*' postMessage data, '*'
receive: (data) -> receive: (data) ->
if data.abort switch data.req
when 'abort'
qr.ajax?.abort() qr.ajax?.abort()
qr.message.send status: true qr.message.send req: 'status'
return when 'response' # xhr response
if data.response # xhr response
qr.response data.html qr.response data.html
return when 'status'
if data.status
qr.status data qr.status data
delete data.qr else
if data.mode is 'regist' # reply object: we're posting qr.message.post data # Reply object: we're posting
url = "http://sys.4chan.org/#{data.board}/post"
delete data.board post: (data) ->
form = new FormData() form = new FormData()
if engine is 'gecko' and data.upfile if engine is 'gecko' and data.upfile
# binary string to ArrayBuffer code from Aeosynth's 4chan X # binary string to ArrayBuffer code from Aeosynth's 4chan X
l = data.upfile.buffer.length l = data.upfile.buffer.length
@ -1395,24 +1394,38 @@ qr =
bb = new MozBlobBuilder() bb = new MozBlobBuilder()
bb.append ui8a.buffer bb.append ui8a.buffer
# https://bugzilla.mozilla.org/show_bug.cgi?id=690659 # https://bugzilla.mozilla.org/show_bug.cgi?id=690659
# Firefox does not support assigning a filename when appending a blob to a FormData # Firefox does not support assigning a filename when appending a blob to a FormData.
form.append 'upfile', bb.getBlob(data.upfile.type), data.upfile.name form.append 'upfile', bb.getBlob(data.upfile.type), data.upfile.name
delete data.upfile delete data.upfile
url = "http://sys.4chan.org/#{data.board}/post"
# Do not append these values to the form.
delete data.board
delete data.qr
for name, val of data for name, val of data
form.append name, val if val form.append name, val if val
qr.ajax = $.ajax url, onload: (-> qr.message.send response: true, html: @response),
callbacks =
onload: ->
qr.message.send
req: 'response'
html: @response
opts =
form: form form: form
type: 'post' type: 'post'
upCallbacks: upCallbacks:
onload: -> onload: ->
qr.message.send qr.message.send
status: true req: 'status'
progress: '...' progress: '...'
onprogress: (e) -> onprogress: (e) ->
qr.message.send qr.message.send
status: true req: 'status'
progress: "#{Math.round e.loaded / e.total * 100}%" progress: "#{Math.round e.loaded / e.total * 100}%"
qr.ajax = $.ajax url, callbacks, opts
options = options =
init: -> init: ->
home = $ '#navtopr a' home = $ '#navtopr a'
@ -1798,7 +1811,7 @@ updater =
clearTimeout updater.timeoutID clearTimeout updater.timeoutID
d.title = d.title.match(/^.+-/)[0] + ' 404' d.title = d.title.match(/^.+-/)[0] + ' 404'
g.dead = true g.dead = true
qr.message.send abort: true qr.message.send req: 'abort'
qr.status() qr.status()
Favicon.update() Favicon.update()
return return