try {
type = AssuranceType.valueOf(val);
} catch (IllegalArgumentException e) {
- gae.mergeInto(new GigiApiException("Assurance Type wrong."));
+ gae.mergeInto(new GigiApiException("Verification Type wrong."));
}
}
int pointsI = 0;
String points = req.getParameter("points");
if (points == null || "".equals(points)) {
- gae.mergeInto(new GigiApiException("For an assurance, you need to enter points."));
+ gae.mergeInto(new GigiApiException("For a verification, you need to enter points."));
} else {
try {
pointsI = Integer.parseInt(points);
gae.mergeInto(new GigiApiException("The points entered were not a number."));
}
}
- HashSet<String> data = new HashSet<>(Arrays.asList(req.getParameterValues("assuredName")));
+ String[] parameterValues = req.getParameterValues("assuredName");
+ HashSet<String> data = new HashSet<>(Arrays.asList(parameterValues == null ? new String[0] : parameterValues));
for (int i = 0; i < assureeNames.length; i++) {
selected[i] = data.contains(Integer.toString(assureeNames[i].getId()));
}
if ( !gae.isEmpty()) {
throw gae;
}
+
+ LinkedList<Name> toAssure = new LinkedList<Name>();
for (int i = 0; i < selected.length; i++) {
if (selected[i]) {
- Notary.assure(assurer, assuree, assureeNames[i], dob, pointsI, location, req.getParameter("date"), type);
+ toAssure.add(assureeNames[i]);
}
}
+ if (toAssure.size() == 0) {
+ throw new GigiApiException("You must confirm at least one name to verify an account.");
+ }
+
+ Notary.assureAll(assurer, assuree, dob, pointsI, location, req.getParameter("date"), type, toAssure.toArray(new Name[toAssure.size()]));
+
if (aword != null && !aword.equals("")) {
- Language l = Language.getInstance(assuree.getPreferredLocale());
- String method = l.getTranslation("A password reset was triggered. If you did a password reset by assurance, please enter your secret password using this form:");
- String subject = l.getTranslation("Password reset by assurance");
- PasswordResetPage.initPasswordResetProcess(out, assuree, req, aword, l, method, subject);
+ Language langApplicant = Language.getInstance(assuree.getPreferredLocale());
+ String method = langApplicant.getTranslation("A password reset was triggered. If you did a password reset by verification, please enter your secret password using this form:");
+ String subject = langApplicant.getTranslation("Password reset by verification");
+ PasswordResetPage.initPasswordResetProcess(out, assuree, req, aword, langApplicant, method, subject);
}
return true;
}