]> WPIA git - gigi.git/commitdiff
Implement store Date in dateSelector.
authorFelix Dörre <felix@dogcraft.de>
Mon, 23 Jun 2014 15:04:11 +0000 (17:04 +0200)
committerFelix Dörre <felix@dogcraft.de>
Mon, 23 Jun 2014 15:09:40 +0000 (17:09 +0200)
src/org/cacert/gigi/output/DateSelector.java
src/org/cacert/gigi/pages/main/Signup.java

index ba39b3422442cca72a660c2325979b142a2d0aec..afeaa34648de95c47ee9a55183d1ea33479ebca7 100644 (file)
@@ -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\"></nobr>");
        }
+
+       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 + "]";
+       }
+
 }
index 007a58a60c10be233235159f2629adb6e8afb027..060f82ba20e383ccf39968cf986615370bbc1a7f 100644 (file)
@@ -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 {
                                                "</a>"));
                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("<div class='formError'>");