+++ /dev/null
-<%@ page import = "java.util.*" %>
-<%@ page import = "javax.servlet.*" %>
-<%@ page import = "org.ibex.mail.*" %>
-<%@ page import = "org.prevayler.*" %>
-<%@ page import = "org.ibex.mail.target.*" %>
-<%@ page import = "org.ibex.mail.List" %>
-<html>
- <title> Mailing Lists </title>
- <body>
- <form method=get>
- <%
- String action = request.getParameter("action");
- boolean admin = "true".equals(request.getParameter("admin"));
-
- // Display //////////////////////////////////////////////////////////////////////////////
- if (action == null) {
- %> <table border=1> <tr><td>List Address</td> <td>Description</td></tr> <%
- List[] all = (List[])List.p.execute(List.all());
- for(int i=0; i<all.length; i++) {
- %>
- <tr>
- <td> <a href="?action=List&list=<%=all[i].address%>"> <%= all[i].address %> </td>
- <td> <%= all[i].one_line_description %> </td>
- if (admin) {
- <td><input type=submit name=action
- value="Delete <%=all[i].address.user+"@"+all[i].address.host%>"></td>
- }
- </tr>
- <%
- }
- if (admin) {
- %> <tr>
- <td> <input type=text size=20 name=name> </td>
- <td> <input type=text size=40 name=description> </td>
- <td> <input type=submit name=action value=Add> </td>
- </tr> </table> <%
- }
-
- // Add //////////////////////////////////////////////////////////////////////////////
- } else if ("Add".equals(action)) {
- Address a = new Address(request.getParameter("name"));
- Transaction t =
- List.create(a,
- FileBasedMailbox.getFileBasedMailbox(List.ROOT + "/" + a.user + "@" + a.host + "/pending", true),
- FileBasedMailbox.getFileBasedMailbox(List.ROOT + "/" + a.user + "@" + a.host + "/archive", true));
- List.p.execute((Transaction)t);
-
- // Specific List ///////////////////////////////////////////////////////////////////////
- } else if (action.startsWith("List")) {
- List list = (List)List.p.execute(List.forAddress(Address.parse(request.getParameter("list"))));
- %><table border=1>
- <tr><td>List:</td><td><%=list.address%></td></tr>
- <tr><td>Description:</td><td><%=list.one_line_description%></td></tr>
- </table>
- <input type=hidden name=list value=<%=list.address%>>
- <input type=text size=30 name=email>
- <input type=submit name=action value=Subscribe>
- <%
-
- // Subscribe //////////////////////////////////////////////////////////////////////////////
- } else if (action.startsWith("Subscribe")) {
- List.p.execute(List.subscribeNewUser(Address.parse(request.getParameter("email")), request.getParameter("list")));
- %><h3>Please check your email</h3>
- A confirmation message has been sent to you.
- response.sendRedirect("");
- <%
-
- // Delete //////////////////////////////////////////////////////////////////////////////
- } else if (action.startsWith("Delete")) {
- Transaction t = List.delete(new Address(action.substring(6).trim()));
- List.p.execute((Transaction)t);
- response.sendRedirect("");
- }
- %>
- </form>
-
- </body>
-</html>
\ No newline at end of file