nitdoc: Added a function to display the edit mode of a comment
authorStefan Lage <lagestfan@gmail.com>
Thu, 23 May 2013 21:09:07 +0000 (17:09 -0400)
committerStefan Lage <lagestfan@gmail.com>
Fri, 24 May 2013 02:26:49 +0000 (22:26 -0400)
This function load comment content in a "texterea" and display it with two
buttons "commit" and "cancel". Actually cancel can hide/disable the edit
mode.

signed-off by: Stefan Lage <lagestfan@gmail.com>

share/nitdoc/scripts/js-facilities.js

index 0041b54..b3e5d9d 100644 (file)
@@ -1,6 +1,7 @@
 // User\r
 var userB64 = null;\r
 var sessionStarted = false;\r
+var editComment = 0;\r
 \r
 /*\r
 * JQuery Case Insensitive :icontains selector\r
@@ -397,6 +398,54 @@ $(document).ready(function() {
                }       \r
                displayLogginModal();\r
        });\r
+\r
+       // Open edit file\r
+       $('pre[class=text_label]').click(function(){\r
+               // the customer is loggued ?\r
+               if(!sessionStarted || userName == ""){\r
+                       // No => nothing happen\r
+                       return;\r
+               }\r
+               else{\r
+                       var arrayNew = $(this).text().split('\n');\r
+                       var lNew = arrayNew.length - 1;\r
+                       var adapt = "";\r
+\r
+                       for (var i = 0; i < lNew; i++) {\r
+                               adapt += arrayNew[i];\r
+                               if(i < lNew-1){ adapt += "\n"; }\r
+                       }\r
+                       editComment += 1;\r
+                       // hide comment\r
+                       $(this).hide();\r
+                       // Show edit box \r
+                       $(this).next().show();\r
+                       // Show cancel button\r
+                       $(this).next().next().show();\r
+                       // Show commit button\r
+                       $(this).next().next().next().show();\r
+                       // Add text in edit box\r
+                       if($(this).next().val() == ""){ $(this).next().val(adapt); }\r
+                       // Resize edit box \r
+                       $(this).next().height($(this).next().prop("scrollHeight"));\r
+                       // Select it\r
+                       $(this).next().select();\r
+                       preElement = $(this);\r
+               }\r
+       });\r
+\r
+       $('a[id=cancelBtn]').click(function(){\r
+               if(editComment > 0){ editComment -= 1; }\r
+               // Hide itself\r
+               $(this).hide();\r
+               // Hide commitBtn\r
+               $(this).next().hide();\r
+               // Hide Textarea\r
+               $(this).prev().hide();\r
+               // Show comment\r
+               $(this).prev().prev().show();\r
+        });\r
+\r
 });\r
 \r
 /* Parse current URL and return anchor name */\r