From 1ceb80a76f013fc55a12feb93e8798b0bae1735e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Mon, 23 Jun 2014 17:04:11 +0200 Subject: [PATCH] Implement store Date in dateSelector. --- src/org/cacert/gigi/output/DateSelector.java | 35 ++++++++++++++++++++ src/org/cacert/gigi/pages/main/Signup.java | 6 ++-- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/src/org/cacert/gigi/output/DateSelector.java b/src/org/cacert/gigi/output/DateSelector.java index ba39b342..afeaa346 100644 --- a/src/org/cacert/gigi/output/DateSelector.java +++ b/src/org/cacert/gigi/output/DateSelector.java @@ -2,9 +2,12 @@ package org.cacert.gigi.output; import java.io.PrintWriter; import java.text.SimpleDateFormat; +import java.util.Arrays; import java.util.Calendar; import java.util.Map; +import javax.servlet.http.HttpServletRequest; + import org.cacert.gigi.Language; public class DateSelector implements Outputable { @@ -50,10 +53,42 @@ public class DateSelector implements Outputable { } out.print("\" size=\"4\" autocomplete=\"off\">"); } + + public void update(HttpServletRequest r) { + String dayS = r.getParameter(names[0]); + if (dayS != null) { + day = parseIntSafe(dayS); + } + + String monthS = r.getParameter(names[1]); + if (monthS != null) { + month = parseIntSafe(monthS); + } + + String yearS = r.getParameter(names[2]); + if (yearS != null) { + year = parseIntSafe(yearS); + } + } + private int parseIntSafe(String dayS) { + try { + return Integer.parseInt(dayS); + } catch (NumberFormatException e) { + + } + return 0; + } public boolean isValid() { if (!(1900 < year && 1 <= month && month <= 12 && 1 <= day && day <= 32)) { return false; } return true; // TODO checkdate } + + @Override + public String toString() { + return "DateSelector [names=" + Arrays.toString(names) + ", day=" + day + + ", month=" + month + ", year=" + year + "]"; + } + } diff --git a/src/org/cacert/gigi/pages/main/Signup.java b/src/org/cacert/gigi/pages/main/Signup.java index 007a58a6..060f82ba 100644 --- a/src/org/cacert/gigi/pages/main/Signup.java +++ b/src/org/cacert/gigi/pages/main/Signup.java @@ -10,6 +10,7 @@ import java.util.Date; import java.util.HashMap; import javax.servlet.ServletRequest; +import javax.servlet.http.HttpServletRequest; import org.cacert.gigi.Language; import org.cacert.gigi.User; @@ -61,7 +62,7 @@ public class Signup { "")); t.output(out, l, vars); } - private void update(ServletRequest r) { + private void update(HttpServletRequest r) { if (r.getParameter("fname") != null) { buildup.setFname(r.getParameter("fname")); } @@ -81,9 +82,10 @@ public class Signup { country = "1".equals(r.getParameter("country")); regional = "1".equals(r.getParameter("regional")); radius = "1".equals(r.getParameter("radius")); + myDoB.update(r); } - public boolean submit(PrintWriter out, ServletRequest req) { + public boolean submit(PrintWriter out, HttpServletRequest req) { update(req); boolean failed = false; out.println("
"); -- 2.39.2