import java.sql.Date;
+import org.cacert.gigi.GigiApiException;
import org.cacert.gigi.database.DatabaseConnection;
import org.cacert.gigi.database.GigiPreparedStatement;
this.ticket = ticket;
}
- public void setName(String fname, String mname, String lname, String suffix) {
+ public void setName(String fname, String mname, String lname, String suffix) throws GigiApiException {
writeSELog("SE Name change");
target.setName(new Name(fname, lname, mname, suffix));
}
- public void setDob(Date dob) {
+ public void setDob(Date dob) throws GigiApiException {
writeSELog("SE dob change");
target.setDoB(dob);
}
- public void revokeAllCertificates() {
+ public void revokeAllCertificates() throws GigiApiException {
writeSELog("SE Revoke certificates");
Certificate[] certs = target.getCertificates(false);
for (int i = 0; i < certs.length; i++) {
}
}
- public void writeSELog(String type) {
+ private void writeSELog(String type) throws GigiApiException {
+ if (ticket == null) {
+ throw new GigiApiException("No ticket set!");
+ }
GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("INSERT INTO adminLog SET uid=?, admin=?, type=?, information=?");
prep.setInt(1, target.getId());
prep.setInt(2, supporter.getId());
return ticket;
}
+ public User getTargetUser() {
+ return target;
+ }
+
}
import org.cacert.gigi.GigiApiException;
import org.cacert.gigi.dbObjects.Group;
import org.cacert.gigi.dbObjects.Name;
+import org.cacert.gigi.dbObjects.SupportedUser;
import org.cacert.gigi.dbObjects.User;
import org.cacert.gigi.localisation.Language;
import org.cacert.gigi.output.DateSelector;
private static Template t;
- private User user;
+ private SupportedUser user;
static {
t = new Template(FindDomainForm.class.getResource("SupportUserDetailsForm.templ"));
}
- public SupportUserDetailsForm(HttpServletRequest hsr, User user) {
+ public SupportUserDetailsForm(HttpServletRequest hsr, SupportedUser user) {
super(hsr);
this.user = user;
}
@Override
public boolean submit(PrintWriter out, HttpServletRequest req) throws GigiApiException {
+
return false;
}
@Override
protected void outputContent(PrintWriter out, Language l, Map<String, Object> vars) {
+ User user = this.user.getTargetUser();
Name name = user.getName();
vars.put("mail", user.getEmail());
vars.put("fname", name.getFname());
<tr>
<td colspan="2"><a href="./<?=$id?>/history"><?=_Show account history?></a></td>
</tr>
- <tr><td colspan="2"><input type="submit" value="<?=_Update?>"/></td></tr>
+ <tr><td colspan="2"><input name="detailupdate" type="submit" value="<?=_Update?>"/></td></tr>
</tbody>
</table>
<br/>
\ No newline at end of file
String[] idP = req.getPathInfo().split("/");
id = Integer.parseInt(idP[idP.length - 1]);
final User user = User.getById(id);
- SupportUserDetailsForm f = new SupportUserDetailsForm(req, user);
+ String ticket = (String) req.getSession().getAttribute("ticketNo" + user.getId());
+ SupportUserDetailsForm f = new SupportUserDetailsForm(req, new SupportedUser(user, getUser(req), ticket));
HashMap<String, Object> vars = new HashMap<String, Object>();
vars.put("details", f);
- String ticket = (String) req.getSession().getAttribute("ticketNo" + user.getId());
vars.put("ticketNo", ticket);
final EmailAddress[] addrs = user.getEmails();
vars.put("emails", new IterableDataset() {
if ( !Form.getForm(req, SupportRevokeCertificatesForm.class).submit(resp.getWriter(), req)) {
throw new GigiApiException("No ticket number set.");
}
+ } else if (req.getParameter("detailupdate") != null) {
+ if ( !Form.getForm(req, SupportUserDetailsForm.class).submit(resp.getWriter(), req)) {
+ throw new GigiApiException("No ticket number set.");
+ }
}
} catch (GigiApiException e) {
e.printStackTrace();