import org.cacert.gigi.pages.MainPage;
import org.cacert.gigi.pages.Page;
import org.cacert.gigi.pages.TestSecure;
+import org.cacert.gigi.pages.account.MyDetails;
import org.cacert.gigi.pages.main.RegisterPage;
import org.eclipse.jetty.util.log.Log;
pages.put("/login", new LoginPage("CACert - Login"));
pages.put("/", new MainPage("CACert - Home"));
pages.put("/secure", new TestSecure());
+ pages.put(MyDetails.PATH, new MyDetails());
pages.put(RegisterPage.PATH, new RegisterPage());
String templ = "";
try {
--- /dev/null
+package org.cacert.gigi.pages.account;
+
+import static org.cacert.gigi.Gigi.USER;
+
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.io.UnsupportedEncodingException;
+import java.util.HashMap;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.cacert.gigi.User;
+import org.cacert.gigi.output.DateSelector;
+import org.cacert.gigi.output.Template;
+import org.cacert.gigi.pages.Page;
+import org.cacert.gigi.util.HTMLEncoder;
+
+public class MyDetails extends Page {
+ private Template t;
+
+ public MyDetails() {
+ super("My Details");
+ try {
+ t = new Template(new InputStreamReader(
+ MyDetails.class.getResourceAsStream(MyDetails.class
+ .getSimpleName() + ".templ"), "UTF-8"));
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public static final String PATH = "/account/myDetails";
+
+ @Override
+ public void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws IOException {
+ User u = (User) req.getSession().getAttribute(USER);
+
+ PrintWriter out = resp.getWriter();
+ HashMap<String, Object> map = new HashMap<String, Object>();
+ map.put("fname", HTMLEncoder.encodeHTML(u.getFname()));
+ map.put("mname",
+ u.getMname() == null
+ ? ""
+ : HTMLEncoder.encodeHTML(u.getMname()));
+ map.put("lname", HTMLEncoder.encodeHTML(u.getLname()));
+ map.put("suffix",
+ u.getSuffix() == null ? "" : HTMLEncoder.encodeHTML(u
+ .getSuffix()));
+ DateSelector ds = new DateSelector("day", "month", "year");
+ map.put("DoB", ds);
+ map.put("details", "");
+ t.output(out, getLanguage(req), map);
+
+ }
+}
--- /dev/null
+<form method="post" action="/account/myDetails">
+<table align="center" valign="middle" border="0" cellspacing="0" cellpadding="0" class="wrapper" width="400">
+ <tr>
+ <td colspan="2" class="title"><?=_My Details?></td>
+ </tr>
+ <tr>
+ <td class="DataTD" width="125"><?=_First Name?>: </td>
+ <td class="DataTD" width="125"><input type="text" name="fname" value="<?=$fname?>"></td>
+ </tr>
+ <tr>
+ <td class="DataTD" valign="top"><?=_Middle Name(s)?><br>
+ (<?=_optional?>)
+ </td>
+ <td class="DataTD"><input type="text" name="mname" value="<?=$mname?>"></td>
+ </tr>
+ <tr>
+ <td class="DataTD"><?=_Last Name?>: </td>
+ <td class="DataTD"><input type="text" name="lname" value="<?=$lname?>"></td>
+ </tr>
+ <tr>
+ <td class="DataTD"><?=_Suffix?><br>
+ (<?=_optional?>)</td>
+ <td class="DataTD"><input type="text" name="suffix" value="<?=$suffix?>"></td>
+ </tr>
+ <tr>
+ <td class="DataTD"><?=_Date of Birth?><br>
+ (<?=_dd/mm/yyyy?>)</td>
+ <td class="DataTD"><?=$DoB?></td>
+ </tr>
+ <tr>
+ <td colspan="2" class="title"><?=_('Show account history')?></td>
+ </tr>
+ <tr>
+ <td colspan="2" class="title"><?=_View secret question & answers and OTP phrases?></td>
+ </tr>
+ <?=$details?>
+ <tr><td class="DataTD" colspan="2"><input type="submit" name="process" value="<?=_Update?>"></td>
+ </tr>
+</table>
+</form>