+
+ private static final MailTemplate passwordResetMail = new MailTemplate(PasswordResetPage.class.getResource("PasswordResetMail.templ"));
+
+ public static void initPasswordResetProcess(User targetUser, HttpServletRequest req, String aword, Language l, String method, String subject) {
+ String ptok = RandomToken.generateToken(32);
+ int id = targetUser.generatePasswordResetTicket(Page.getUser(req), ptok, aword);
+ try {
+ HashMap<String, Object> vars = new HashMap<>();
+ vars.put("subject", subject);
+ vars.put("method", method);
+ vars.put("link", "https://" + ServerConstants.getWwwHostNamePortSecure() + PasswordResetPage.PATH //
+ + "?id=" + id + "&token=" + URLEncoder.encode(ptok, "UTF-8"));
+ vars.put("hour_max", HOUR_MAX);
+
+ passwordResetMail.sendMail(l, vars, targetUser.getEmail());
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ }