X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=webcit-ng%2Fstatic%2Fjs%2Fviews.js;h=171fdf93576dc4b3fe54d5c336db5249ef0b6121;hp=12642210f40a46b3b65b7ecd6e3bc32c4347e038;hb=3da35ead77f2920042ddd54c3559d58a21abe3e3;hpb=d41e1a56e4f10994ea88d2dd3680f273c4e8eb8d diff --git a/webcit-ng/static/js/views.js b/webcit-ng/static/js/views.js index 12642210f..171fdf935 100644 --- a/webcit-ng/static/js/views.js +++ b/webcit-ng/static/js/views.js @@ -144,9 +144,33 @@ function forum_readmessages(target_div, gt_msg, lt_msg) // function render_messages(msgs, prefix, view) { - for (var i in msgs) + for (i=0; i"; + render_one(prefix+msgs[i], msgs[i], view); } +} + +// We have to put each XHR for render_messages() into its own stack frame, otherwise it jumbles them together. I don't know why. +function render_one(div, msgnum, view) +{ + var request = new XMLHttpRequest(); + request.open("GET", "/ctdl/r/" + escapeHTMLURI(current_room) + "/" + msgs[i] + "/html", true); + request.onreadystatechange = function() + { + if (this.readyState === 4) + { + if ((this.status / 100) == 2) + { + document.getElementById(div).innerHTML = this.responseText; // FIXME don't let the C server render it. do JSON now. + } + else + { + document.getElementById(div).innerHTML = "ERROR"; + } + } + }; + request.send(); + request = null; } +