view 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 source


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" );

	}

}