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 <[email protected]> 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">
