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 boolean setName(Name newName) throws GigiApiException {
+ if (newName.equals(target.getName())) {
+ return false;
+ }
writeSELog("SE Name change");
- target.setName(new Name(fname, lname, mname, suffix));
+ target.setName(newName);
+ return true;
}
- public void setDob(Date dob) {
+ public boolean setDob(Date dob) throws GigiApiException {
+ if (dob.toString().equals(target.getDoB().toString())) {
+ return false;
+ }
writeSELog("SE dob change");
target.setDoB(dob);
+ return true;
}
- 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;
+ }
+
+ public void submitSupportAction() throws GigiApiException {
+ target.rawUpdateUserData();
+ }
+
}