125 lines
4.2 KiB
Java
125 lines
4.2 KiB
Java
package it.acxent.pg.servlet;
|
|
|
|
import it.acxent.db.CRAdapter;
|
|
import it.acxent.db.DBAdapter;
|
|
import it.acxent.pg.Users;
|
|
import it.acxent.pg.UsersCR;
|
|
import it.acxent.util.CodiceFiscale;
|
|
import java.sql.Date;
|
|
import java.util.Calendar;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
public class RegistraSvlt extends PgSvlt {
|
|
private static final String PARM_REG_VLD = "REG_VLD";
|
|
|
|
protected void addRows(HttpServletRequest req, HttpServletResponse res) {}
|
|
|
|
protected void fillComboAfterDetail(DBAdapter bean, HttpServletRequest req, HttpServletResponse res) {}
|
|
|
|
protected void fillComboAfterSearch(CRAdapter CR, HttpServletRequest req, HttpServletResponse res) {}
|
|
|
|
protected DBAdapter getBean(HttpServletRequest req) {
|
|
return new Users(getApFull());
|
|
}
|
|
|
|
protected CRAdapter getBeanCR(HttpServletRequest req) {
|
|
return new UsersCR(getApFull());
|
|
}
|
|
|
|
protected void prepareNewRecord(HttpServletRequest req, HttpServletResponse res) {}
|
|
|
|
protected boolean isSecureServlet(HttpServletRequest req) {
|
|
return false;
|
|
}
|
|
|
|
protected String getBeanPageName(HttpServletRequest req) {
|
|
return "registra";
|
|
}
|
|
|
|
protected String getCmd(HttpServletRequest req) {
|
|
if (super.getCmd(req).isEmpty())
|
|
return "ni";
|
|
return super.getCmd(req);
|
|
}
|
|
|
|
protected String newDispathcerAfterShowBean(DBAdapter beanA, HttpServletRequest req, HttpServletResponse res) {
|
|
String msg;
|
|
Users bean = (Users)beanA;
|
|
if (bean.getDBState() == 1) {
|
|
msg = "Salvataggio effettuato";
|
|
if (!mailConfermaCambiamentoDati(req, bean)) {
|
|
msg = msg + " Attenzione!! Impossibile mandare email di conferma.";
|
|
} else {
|
|
msg = msg + " Inviata mail di conferma.";
|
|
}
|
|
setJspPageRelative("registraOk.jsp", req);
|
|
} else {
|
|
msg = "ERRORE!. Non è stato possibile salvare. Contattare l'amministratore o immettere login diverso";
|
|
}
|
|
forceMessage(req, msg);
|
|
return "";
|
|
}
|
|
|
|
private boolean mailConfermaCambiamentoDati(HttpServletRequest req, Users bean) {
|
|
return bean.sendUserDataMailMessage().getStatus();
|
|
}
|
|
|
|
protected String getRegistrazioneMailMessage() {
|
|
return getParm("MAIL_REG").getTesto();
|
|
}
|
|
|
|
protected void sqlActions(HttpServletRequest req, HttpServletResponse res) {
|
|
Users bean = new Users(getApFull());
|
|
fillObject(req, bean);
|
|
String msg = "Impossibile Registrare un nuovo utente:";
|
|
if (bean.isLogonDuplicated()) {
|
|
msg = msg + " Login già presente in archivio";
|
|
forceMessage(req, msg);
|
|
setJspPageRelative("registra.jsp", req);
|
|
req.setAttribute("bean", bean);
|
|
callJsp(req, res);
|
|
} else if (bean.isEmailDuplicated()) {
|
|
msg = msg + " Email già presente in archivio";
|
|
forceMessage(req, msg);
|
|
setJspPageRelative("registra.jsp", req);
|
|
req.setAttribute("bean", bean);
|
|
callJsp(req, res);
|
|
} else if (bean.isCodFiscDuplicated(bean.getCodFisc())) {
|
|
msg = msg + " Codice Fiscale già presente in archivio";
|
|
forceMessage(req, msg);
|
|
setJspPageRelative("registra.jsp", req);
|
|
req.setAttribute("bean", bean);
|
|
callJsp(req, res);
|
|
} else if (!bean.getCodFisc().isEmpty() &&
|
|
!CodiceFiscale.controlloFormale(bean.getCodFisc())) {
|
|
msg = msg + " Il codice fiscale non è valido:";
|
|
forceMessage(req, msg);
|
|
setJspPageRelative("registra.jsp", req);
|
|
req.setAttribute("bean", bean);
|
|
callJsp(req, res);
|
|
} else {
|
|
if ((long)getParm("REG_VLD").getNumeroInt() == 1L) {
|
|
req.setAttribute("flgValido", "S");
|
|
} else {
|
|
req.setAttribute("flgValido", "N");
|
|
}
|
|
if (getParm("GG_VALIDITA").getNumeroInt() > 0) {
|
|
Calendar cal = Calendar.getInstance();
|
|
cal.add(6, getParm("GG_VALIDITA")
|
|
.getNumeroInt());
|
|
req.setAttribute("dataScadenza",
|
|
getDataFormat().format(new Date(cal.getTimeInMillis())));
|
|
}
|
|
if (getParm("N_FOTO_MAX").getNumeroInt() > 0)
|
|
req.setAttribute("nFotoMax",
|
|
String.valueOf(getParm("N_FOTO_MAX").getNumeroLong()));
|
|
req.setAttribute("flgMiniature", "1");
|
|
super.sqlActions(req, res);
|
|
}
|
|
}
|
|
|
|
protected it.acxent.common.Users getUser() {
|
|
return new Users(getApFull());
|
|
}
|
|
}
|