Hide reply creation input text fields until “comment” link is clicked.
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Mon, 18 Oct 2010 07:52:18 +0000 (09:52 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Mon, 18 Oct 2010 07:52:18 +0000 (09:52 +0200)
src/main/resources/templates/include/viewPost.html
src/main/resources/templates/index.html

index 00ee653..74fe29a 100644 (file)
@@ -1,4 +1,4 @@
-<div class="post">
+<div id="<% post.id>" class="post">
        <div>
                <div class="author profile-link"><a href="viewSone.html?sone=<% post.sone.id>"><% post.sone.niceName|html></a></div>
                <div class="text"><% post.text|html></div>
@@ -20,7 +20,7 @@
                                </div>
                        </div>
                <%/foreach>
-               <div class="create-reply">
+               <div class="create-reply" id="create-reply-<% post.id>">
                        <form method="post" action="createReply.html">
                                <input type="hidden" name="formPassword" value="<% formPassword|html>" />
                                <input type="hidden" name="post" value="<% post.id>" />
index 2b21e91..8cbf77e 100644 (file)
@@ -7,10 +7,16 @@
                        registerInputTextareaSwap("#sone input.create-reply", "Write a Reply…");
 
                        /* hide all the “create reply” forms until a link is clicked. */
-                       commentElement = $("<div>Comment</div>").addClass("show-reply-form").click(function() {
+                       $("#sone .post").each(function() {
+                               postId = $(this).attr("id");
+                               (function(postId) {
+                                       commentElement = $("<div>Comment</div>").addClass("show-reply-form").click(function() {
+                                               $("#sone .post#" + postId + " .create-reply").removeClass("hidden");
+                                       });
+                               })(postId);
+                               $(this).find(".create-reply").addClass("hidden");
+                               $(this).find(".status-line .time").after(commentElement);
                        });
-                       $("#sone .post > .status-line .time").after(commentElement);
-                       $("#sone .post .create-reply").addClass("hidden");
                });
        </script>