]> WPIA git - gigi.git/blob - src/org/cacert/gigi/output/GroupSelector.java
a26be9b8bbae20174ac3165d62b4da5f3e64a841
[gigi.git] / src / org / cacert / gigi / output / GroupSelector.java
1 package org.cacert.gigi.output;
2
3 import java.io.PrintWriter;
4 import java.util.Map;
5
6 import javax.servlet.http.HttpServletRequest;
7
8 import org.cacert.gigi.GigiApiException;
9 import org.cacert.gigi.dbObjects.Group;
10 import org.cacert.gigi.localisation.Language;
11 import org.cacert.gigi.output.template.Outputable;
12 import org.cacert.gigi.util.HTMLEncoder;
13
14 public class GroupSelector implements Outputable {
15
16     String name;
17
18     Group value = null;
19
20     public GroupSelector(String name) {
21         this.name = HTMLEncoder.encodeHTML(name);
22     }
23
24     public void update(HttpServletRequest r) throws GigiApiException {
25         String vS = r.getParameter(name);
26         value = null;
27         for (Group g : Group.values()) {
28             if (g.getDatabaseName().equals(vS)) {
29                 value = g;
30             }
31         }
32     }
33
34     @Override
35     public void output(PrintWriter out, Language l, Map<String, Object> vars) {
36         out.println("<select name='" + name + "'>");
37         for (Group g : Group.values()) {
38             out.print("<option name='" + g.getDatabaseName());
39             if (g.equals(value)) {
40                 out.print(" selected");
41             }
42             out.println("'>" + g.getDatabaseName() + "</option>");
43         }
44         out.println("</select>");
45     }
46
47     public Group getGroup() {
48         return value;
49     }
50 }