You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by ju...@apache.org on 2021/10/16 16:06:12 UTC

[jspwiki] 05/08: JSPWIKI-1140: Autogenerate changenote on page comments

This is an automated email from the ASF dual-hosted git repository.

juanpablo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jspwiki.git

commit d231ea0a085b9c5da10a053d0fb30f745f4adaef
Author: Juan Pablo Santos Rodríguez <ju...@gmail.com>
AuthorDate: Thu Oct 14 17:20:26 2021 +0200

    JSPWIKI-1140: Autogenerate changenote on page comments
---
 .../src/main/resources/CoreResources.properties    |  3 +++
 .../src/main/resources/CoreResources_es.properties |  3 +++
 .../src/main/resources/CoreResources_fr.properties |  3 +++
 jspwiki-war/src/main/webapp/Comment.jsp            | 30 ++++++++++------------
 .../webapp/templates/default/editors/CKeditor.jsp  |  2 ++
 .../webapp/templates/default/editors/TinyMCE.jsp   |  2 ++
 .../webapp/templates/default/editors/plain.jsp     |  2 ++
 .../webapp/templates/default/editors/preview.jsp   |  1 -
 .../webapp/templates/default/editors/wysiwyg.jsp   |  2 ++
 9 files changed, 31 insertions(+), 17 deletions(-)

diff --git a/jspwiki-main/src/main/resources/CoreResources.properties b/jspwiki-main/src/main/resources/CoreResources.properties
index 196f6ba..cebdbdc 100644
--- a/jspwiki-main/src/main/resources/CoreResources.properties
+++ b/jspwiki-main/src/main/resources/CoreResources.properties
@@ -141,6 +141,9 @@ captcha.asirra.a.get.challenge=Request different images.
 captcha.asirra.a.whatsthis=What is this?
 captcha.submit=Submit
 
+# Comment.jsp
+comment.changenote=Comment added on {0} by {1}
+
 # Install.jsp
 install.jsp.title=JSPWiki Installer
 install.jsp.intro.title=JSPWiki Installer
diff --git a/jspwiki-main/src/main/resources/CoreResources_es.properties b/jspwiki-main/src/main/resources/CoreResources_es.properties
index 00c279b..032dd08 100644
--- a/jspwiki-main/src/main/resources/CoreResources_es.properties
+++ b/jspwiki-main/src/main/resources/CoreResources_es.properties
@@ -140,6 +140,9 @@ captcha.asirra.a.get.challenge=Pedir otras im
 captcha.asirra.a.whatsthis=�Qu� es esto?
 captcha.submit=Enviar
 
+# Comment.jsp
+comment.changenote=Comentario a�adido el {0} por {1}
+
 # Install.jsp
 install.jsp.title=Instalador de JSPWiki
 install.jsp.intro.title=Instalador de JSPWiki
diff --git a/jspwiki-main/src/main/resources/CoreResources_fr.properties b/jspwiki-main/src/main/resources/CoreResources_fr.properties
index 1b959d4..372f62e 100644
--- a/jspwiki-main/src/main/resources/CoreResources_fr.properties
+++ b/jspwiki-main/src/main/resources/CoreResources_fr.properties
@@ -144,6 +144,9 @@ captcha.asirra.a.get.challenge=Obtenir diff\u00E9rentes images.
 captcha.asirra.a.whatsthis=Qu\u0027est-ce donc?
 captcha.submit=Soumettre
 
+# Comment.jsp
+comment.changenote=commentaire ajoutered le {0} pour {1}
+
 # Install.jsp
 install.jsp.title=Installeur JSPWiki
 install.jsp.intro.title=Installeur JSPWiki
diff --git a/jspwiki-war/src/main/webapp/Comment.jsp b/jspwiki-war/src/main/webapp/Comment.jsp
index 4393f4f..dc6a422 100644
--- a/jspwiki-war/src/main/webapp/Comment.jsp
+++ b/jspwiki-war/src/main/webapp/Comment.jsp
@@ -20,8 +20,9 @@
 <%@ page import="org.apache.logging.log4j.Logger" %>
 <%@ page import="org.apache.logging.log4j.LogManager" %>
 <%@ page import="java.util.*" %>
+<%@ page import="java.text.MessageFormat" %>
 <%@ page import="java.text.SimpleDateFormat" %>
-<%@ page import="org.apache.wiki.util.HttpUtil" %>
+<%@ page import="org.apache.commons.lang3.StringUtils" %>
 <%@ page import="org.apache.wiki.*" %>
 <%@ page import="org.apache.wiki.api.core.*" %>
 <%@ page import="org.apache.wiki.api.spi.Wiki" %>
@@ -33,7 +34,6 @@
 <%@ page import="org.apache.wiki.pages.PageLock" %>
 <%@ page import="org.apache.wiki.pages.PageManager" %>
 <%@ page import="org.apache.wiki.preferences.Preferences" %>
-<%@ page import="org.apache.wiki.preferences.Preferences" %>
 <%@ page import="org.apache.wiki.preferences.Preferences.TimeFormat" %>
 <%@ page import="org.apache.wiki.ui.EditorManager" %>
 <%@ page import="org.apache.wiki.ui.TemplateManager" %>
@@ -76,18 +76,21 @@
     ResourceBundle rb = Preferences.getBundle( wikiContext, "CoreResources" );
     Session wikiSession = wikiContext.getWikiSession();
     String storedUser = wikiSession.getUserPrincipal().getName();
+    String commentedBy = storedUser;
 
     if( wikiSession.isAnonymous() ) {
         storedUser  = TextUtil.replaceEntities( request.getParameter( "author" ) );
+        commentedBy = rb.getString( "varmgr.anonymous" );
     }
+    String commentDate = Preferences.renderDate( wikiContext, Calendar.getInstance().getTime(), TimeFormat.DATETIME );
 
-    String ok      = request.getParameter("ok");
-    String preview = request.getParameter("preview");
-    String cancel  = request.getParameter("cancel");
-    String author  = TextUtil.replaceEntities( request.getParameter("author") );
-    String link    = TextUtil.replaceEntities( request.getParameter("link") );
-    String remember = TextUtil.replaceEntities( request.getParameter("remember") );
-    String changenote = TextUtil.replaceEntities( request.getParameter( "changenote" ) );
+    String ok       = request.getParameter( "ok" );
+    String preview  = request.getParameter( "preview" );
+    String cancel   = request.getParameter( "cancel" );
+    String author   = TextUtil.replaceEntities( request.getParameter( "author" ) );
+    String link     = TextUtil.replaceEntities( request.getParameter( "link" ) );
+    String remember = TextUtil.replaceEntities( request.getParameter( "remember" ) );
+    String changenote = MessageFormat.format( rb.getString( "comment.changenote" ), commentDate, commentedBy );
 
     Page wikipage = wikiContext.getPage();
     Page latestversion = wiki.getManager( PageManager.class ).getPage( pagereq );
@@ -118,7 +121,7 @@
         author = storedUser;
     }
     if( author == null || author.length() == 0 ) {
-        author = "AnonymousCoward";
+        author = StringUtils.capitalize( rb.getString( "varmgr.anonymous" ) );
     }
 
     session.setAttribute("author",author);
@@ -205,17 +208,12 @@
         log.debug("Author name ="+author);
         if( author != null && author.length() > 0 ) {
             String signature = author;
-
             if( link != null && link.length() > 0 ) {
                 link = HttpUtil.guessValidURI( link );
                 signature = "["+author+"|"+link+"]";
             }
 
-            Calendar cal = Calendar.getInstance();
-            SimpleDateFormat fmt = Preferences.getDateFormat( wikiContext , TimeFormat.DATETIME);
-
-            pageText.append("\n\n%%signature\n"+signature+", "+fmt.format(cal.getTime())+"\n/%");
-
+            pageText.append( "\n\n%%signature\n"+signature+", " + commentDate + "\n/%" );
         }
 
         if( TextUtil.isPositive(remember) ) {
diff --git a/jspwiki-war/src/main/webapp/templates/default/editors/CKeditor.jsp b/jspwiki-war/src/main/webapp/templates/default/editors/CKeditor.jsp
index b57635e..0e76da4 100644
--- a/jspwiki-war/src/main/webapp/templates/default/editors/CKeditor.jsp
+++ b/jspwiki-war/src/main/webapp/templates/default/editors/CKeditor.jsp
@@ -147,11 +147,13 @@
       <span class="caret"></span>
     </button>
     <ul class="dropdown-menu" data-hover-parent="div">
+      <wiki:CheckRequestContext context="!comment">
       <li class="dropdown-header">
         <input class="form-control" type="text" name="changenote" id="changenote" size="80" maxlength="80"
              placeholder="<fmt:message key='editor.plain.changenote'/>"
              value="${changenote}" />
       </li>
+      </wiki:CheckRequestContext>
       <wiki:CheckRequestContext context="comment">
       <li class="divider" />
       <li class="dropdown-header">
diff --git a/jspwiki-war/src/main/webapp/templates/default/editors/TinyMCE.jsp b/jspwiki-war/src/main/webapp/templates/default/editors/TinyMCE.jsp
index 963f81f..9fd7c8a 100644
--- a/jspwiki-war/src/main/webapp/templates/default/editors/TinyMCE.jsp
+++ b/jspwiki-war/src/main/webapp/templates/default/editors/TinyMCE.jsp
@@ -149,11 +149,13 @@
       <span class="caret"></span>
     </button>
     <ul class="dropdown-menu" data-hover-parent="div">
+      <wiki:CheckRequestContext context="!comment">
       <li class="dropdown-header">
         <input class="form-control" type="text" name="changenote" id="changenote" size="80" maxlength="80"
              placeholder="<fmt:message key='editor.plain.changenote'/>"
              value="${changenote}" />
       </li>
+      </wiki:CheckRequestContext>
       <wiki:CheckRequestContext context="comment">
       <li class="divider" />
       <li class="dropdown-header">
diff --git a/jspwiki-war/src/main/webapp/templates/default/editors/plain.jsp b/jspwiki-war/src/main/webapp/templates/default/editors/plain.jsp
index 3409e5d..18f1246 100644
--- a/jspwiki-war/src/main/webapp/templates/default/editors/plain.jsp
+++ b/jspwiki-war/src/main/webapp/templates/default/editors/plain.jsp
@@ -104,11 +104,13 @@
       <span class="caret"></span>
     </button>
     <ul class="dropdown-menu" data-hover-parent="div">
+      <wiki:CheckRequestContext context="!comment">
       <li class="dropdown-header">
         <input class="form-control" type="text" name="changenote" id="changenote" size="80" maxlength="80"
              placeholder="<fmt:message key='editor.plain.changenote'/>"
              value="${changenote}" />
       </li>
+      </wiki:CheckRequestContext>
       <wiki:CheckRequestContext context="comment">
       <li class="divider" />
       <li class="dropdown-header">
diff --git a/jspwiki-war/src/main/webapp/templates/default/editors/preview.jsp b/jspwiki-war/src/main/webapp/templates/default/editors/preview.jsp
index 3127dcf..f39a0af 100644
--- a/jspwiki-war/src/main/webapp/templates/default/editors/preview.jsp
+++ b/jspwiki-war/src/main/webapp/templates/default/editors/preview.jsp
@@ -50,7 +50,6 @@
     <input type="hidden" name="author" value="${author}" />
     <input type="hidden" name="link" value="${link}" />
     <input type="hidden" name="remember" value="${remember}" />
-    <input type="hidden" name="changenote" value="${changenote}" />
 
     <input type="hidden" name="page" value="<wiki:Variable var='pagename' />" />
     <input type="hidden" name="action" value="save" />
diff --git a/jspwiki-war/src/main/webapp/templates/default/editors/wysiwyg.jsp b/jspwiki-war/src/main/webapp/templates/default/editors/wysiwyg.jsp
index d8acf45..387bd70 100644
--- a/jspwiki-war/src/main/webapp/templates/default/editors/wysiwyg.jsp
+++ b/jspwiki-war/src/main/webapp/templates/default/editors/wysiwyg.jsp
@@ -141,11 +141,13 @@
       <span class="caret"></span>
     </button>
     <ul class="dropdown-menu" data-hover-parent="div">
+      <wiki:CheckRequestContext context="!comment">
       <li class="dropdown-header">
         <input class="form-control" type="text" name="changenote" id="changenote" size="80" maxlength="80"
              placeholder="<fmt:message key='editor.plain.changenote'/>"
              value="${changenote}" />
       </li>
+      </wiki:CheckRequestContext>
       <wiki:CheckRequestContext context="comment">
       <li class="divider" />
       <li class="dropdown-header">