diff -r 000000000000 -r 8083d21c0020 web/support/hsbook.js
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/web/support/hsbook.js Mon Jan 25 18:56:45 2010 +0530
@@ -0,0 +1,95 @@
+function qid(id) {
+ return id.replace(/([.:])/g, "\\$1");
+}
+
+function beforeComment(formData, jqForm, options) {
+ var form = jqForm[0];
+ if (!form.comment.value) {
+ $(options.target + " span.comment_error").empty().append(
+ "Your comment is empty");
+ return false;
+ }
+ if (!form.name.value) {
+ $(options.target + " span.comment_error").empty().append(
+ "Please provide a name");
+ return false;
+ }
+ $(options.target + " span.comment_error").empty().after(
+ "");
+ $(options.target + " input[@name=submit]").attr("disabled", true);
+}
+
+function ajaxifyForm(id) {
+ var q = qid(id);
+
+ $("#form_" + q).ajaxForm({ beforeSubmit: beforeComment,
+ success: function() { ajaxifyForm(id); },
+ target: "#comments_" + q });
+}
+
+function toggleComment(id) {
+ $("#toggle_" + qid(id)).nextAll().toggle();
+ return false;
+}
+
+function loadComments(id) {
+ $("#comments_" + qid(id)).load(location.protocol + "//" + location.host +
+ "/review/comments/single/" + id + "/", function() {
+ ajaxifyForm(id);
+ });
+ return false;
+}
+
+function loadAllComments() {
+ $("a.commenttoggle").each(function() {
+ var id = $(this).attr("pid");
+ if (id) {
+ loadComments(id);
+ }
+ });
+}
+
+$(document).ready(function() {
+ function loading(id) {
+ return " " +
+ "Loading..." +
+ "";
+ }
+ $("div.toc>p")
+ .after("