1 package org.cacert.gigi.pages;
3 import java.io.IOException;
4 import java.io.InputStream;
5 import java.io.InputStreamReader;
6 import java.io.UnsupportedEncodingException;
8 import javax.servlet.ServletRequest;
9 import javax.servlet.http.HttpServletRequest;
10 import javax.servlet.http.HttpServletResponse;
12 import org.cacert.gigi.Language;
13 import org.cacert.gigi.output.Template;
15 public abstract class Page {
17 private Template defaultTemplate;
19 public Page(String title) {
22 InputStream resource = getClass().getResourceAsStream(
23 getClass().getSimpleName() + ".templ");
24 if (resource != null) {
25 defaultTemplate = new Template(new InputStreamReader(resource,
28 } catch (UnsupportedEncodingException e) {
32 public Template getDefaultTemplate() {
33 return defaultTemplate;
36 public boolean beforeTemplate(HttpServletRequest req,
37 HttpServletResponse resp) throws IOException {
40 public abstract void doGet(HttpServletRequest req, HttpServletResponse resp)
43 public void doPost(HttpServletRequest req, HttpServletResponse resp)
48 public String getTitle() {
52 public void setTitle(String title) {
55 public static Language getLanguage(ServletRequest req) {
56 return Language.getInstance("de");
59 public static String translate(ServletRequest req, String string) {
60 Language l = getLanguage(req);
61 return l.getTranslation(string);
63 public boolean needsLogin() {