X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FdbObjects%2FSupportedUser.java;h=975ef9b51e02055fb444819a4330d43a42cadbab;hp=7affe34caa18c35625e8a0cff56ab02d10248469;hb=f0409c63fad3833d4a2d4d8c3fd60f0ab829b299;hpb=8862fb3f5a428afff2a0321ee83e880e14b1a252 diff --git a/src/org/cacert/gigi/dbObjects/SupportedUser.java b/src/org/cacert/gigi/dbObjects/SupportedUser.java index 7affe34c..975ef9b5 100644 --- a/src/org/cacert/gigi/dbObjects/SupportedUser.java +++ b/src/org/cacert/gigi/dbObjects/SupportedUser.java @@ -1,18 +1,15 @@ package org.cacert.gigi.dbObjects; import java.io.IOException; -import java.io.PrintWriter; -import java.io.StringWriter; import java.util.HashMap; import java.util.Locale; import org.cacert.gigi.GigiApiException; import org.cacert.gigi.database.GigiPreparedStatement; import org.cacert.gigi.dbObjects.Certificate.CertificateStatus; -import org.cacert.gigi.email.SendMail; import org.cacert.gigi.localisation.Language; +import org.cacert.gigi.output.template.MailTemplate; import org.cacert.gigi.output.template.Outputable; -import org.cacert.gigi.output.template.SprintfCommand; import org.cacert.gigi.util.DayDate; import org.cacert.gigi.util.ServerConstants; @@ -30,21 +27,12 @@ public class SupportedUser { this.ticket = ticket; } - public boolean setName(Name newName) throws GigiApiException { - if (newName.equals(target.getName())) { - return false; - } - writeSELog("SE Name change"); - target.setName(newName); - return true; - } - public boolean setDob(DayDate dob) throws GigiApiException { if (dob.equals(target.getDoB())) { return false; } writeSELog("SE dob change"); - target.setDoB(dob); + target.setDoBAsSupport(dob); return true; } @@ -88,10 +76,6 @@ public class SupportedUser { return target; } - public void submitSupportAction() throws GigiApiException { - target.rawUpdateUserData(); - } - public void grant(Group toMod) { target.grantGroup(supporter, toMod); } @@ -100,19 +84,18 @@ public class SupportedUser { target.revokeGroup(supporter, toMod); } + private static final MailTemplate supportNotification = new MailTemplate(SupportedUser.class.getResource("SupportNotificationMail.templ")); + public void sendSupportNotification(String subject, Outputable message) { try { - StringWriter sw = new StringWriter(); - PrintWriter outMail = new PrintWriter(sw); - outMail.print("Hi," + "\n\n"); - SprintfCommand.createSimple("supporter {0} triggered:", supporter.getName().toString()).output(outMail, Language.getInstance(Locale.ENGLISH), new HashMap()); - outMail.print("\n\n"); - message.output(outMail, Language.getInstance(Locale.ENGLISH), new HashMap()); - outMail.print("\n\n"); - outMail.print("RA DB"); - outMail.close(); + HashMap vars = new HashMap<>(); + vars.put("supporter", supporter.getPreferredName().toString()); + vars.put("action", message); + vars.put("ticket", this.getTicket()); + vars.put("subject", subject); + String supportemailaddress = "support@" + ServerConstants.getWwwHostName().replaceFirst("^www\\.", ""); - SendMail.getInstance().sendMail(supportemailaddress, "[" + this.getTicket() + "] RA DB " + subject, sw.toString(), supportemailaddress, null, null, null, null, false); + supportNotification.sendMail(Language.getInstance(Locale.ENGLISH), vars, supportemailaddress); } catch (IOException e) { e.printStackTrace(); }