Mercurial Hosting > nabble
diff src/nabble/view/web/tools/AdminNotice.java @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/nabble/view/web/tools/AdminNotice.java Thu Mar 21 19:15:52 2019 -0600 @@ -0,0 +1,65 @@ + +package nabble.view.web.tools; + +import nabble.model.SystemProperties; +import nabble.view.lib.Jtp; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.PrintWriter; + + +public final class AdminNotice extends HttpServlet { + + protected void service(HttpServletRequest request,HttpServletResponse response) + throws ServletException, IOException + { + PrintWriter out = response.getWriter(); + + boolean isSave = request.getParameter("save") != null; + boolean isPreview = request.getParameter("preview") != null; + String errorMsg = null; + String text = request.getParameter("text"); + if (isSave) { + if (text == null || text.trim().length() == 0) { + SystemProperties.remove("administrator.notice"); + } else { + SystemProperties.set("administrator.notice", text.trim()); + String version = SystemProperties.get("administrator.notice.version"); + int versionNumber = version == null? 0 : Integer.valueOf(version); + versionNumber++; + SystemProperties.set("administrator.notice.version", String.valueOf(versionNumber)); + } + response.sendRedirect("/tools/"); + return; + } else { + text = text == null? SystemProperties.get("administrator.notice") : text; + } + + out.print( "\n<html>\n <head>\n <title>Administrator Notice</title>\n </head>\n <body style=\"font: .8em Verdana, Serif;\">\n <div>\n <a href=\"/tools/\">Tools</a>\n </div>\n\n <h1>Administrator Notice</h1>\n\n " ); + if (errorMsg != null) { + out.print( "\n <div style=\"color:red;padding:.5em;margin-bottom:1em\">" ); + out.print( (errorMsg) ); + out.print( "</div>\n " ); + } + out.print( "\n\n " ); + if (isPreview) { + out.print( "\n <div style=\"background:#ffffcc;padding:.5em;margin:.5em 0 1em\">" ); + out.print( (text) ); + out.print( "</div>\n " ); + } + out.print( "\n\n <form action=\"AdminNotice.jtp\">\n <textarea name=\"text\" style=\"width:100%;height:10em\">" ); + out.print( (Jtp.hideNull(text)) ); + out.print( "</textarea>\n <input type=\"submit\" name=\"preview\" value=\"Preview >>\">\n " ); + if (isPreview) { + out.print( "\n <input type=\"submit\" name=\"save\" value=\"Save Notice\">\n " ); + } + out.print( "\n </form>\n\n </body>\n</html>\n" ); + + } + +} +