import java.net.URLEncoder;
import java.security.GeneralSecurityException;
import java.security.cert.X509Certificate;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import org.cacert.gigi.Certificate;
import org.cacert.gigi.User;
-import org.cacert.gigi.database.DatabaseConnection;
-import org.cacert.gigi.output.CertificateTable;
+import org.cacert.gigi.output.CertificateIterable;
import org.cacert.gigi.output.template.Template;
import org.cacert.gigi.pages.LoginPage;
import org.cacert.gigi.pages.Page;
public class Certificates extends Page {
- CertificateTable myTable = new CertificateTable("mailcerts");
-
- Template certDisplay = new Template(Certificates.class.getResource("CertificateDisplay.templ"));
+ private Template certDisplay = new Template(Certificates.class.getResource("CertificateDisplay.templ"));
public static final String PATH = "/account/certs";
return true;
}
+ private Template certTable = new Template(CertificateIterable.class.getResource("CertificateTable.templ"));
+
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
PrintWriter out = resp.getWriter();
HashMap<String, Object> vars = new HashMap<String, Object>();
User us = LoginPage.getUser(req);
- try {
- PreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT `id`, `CN`, `serial`, `revoked`, `expire`, `disablelogin` FROM `certs` WHERE `memid`=?");
- ps.setInt(1, us.getId());
- ResultSet rs = ps.executeQuery();
- vars.put("mailcerts", rs);
- myTable.output(out, getLanguage(req), vars);
- rs.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
+ vars.put("certs", new CertificateIterable(us.getCertificates()));
+ certTable.output(out, getLanguage(req), vars);
}
}