PortaleOrdiniGruppo/SPAdministration/spadministration_usersBL.java
2025-03-24 15:28:26 +01:00

1845 lines
85 KiB
Java

import java.util.*;
public class spadministration_usersBL extends spadministration_usersWV implements CPLib.QueryFilterFromApplication {
// Variabile che indica se il record è stato caricato
public boolean m_bLoaded;
// Variabile che indica se il record è stato variato
public boolean m_bUpdated;
// Variabile che memorizza lo stato subito dopo una Load o una Save
public String m_cPreviousState;
// Variabile che mantiene il vecchio timestamp
public String m_cOldCPCCCHK;
public java.util.List<String> m_oParameters;
protected String m_cPassword;
protected String m_cOTP;
// Variabile che indica il tipo dell'ultimo
// errore, o messaggio da comunicare all'interfaccia,
// che si è verificato impostando una variabile di work.
// I valori ammessi sono:
// - 1 : errore di campo obbligatorio
// - 2 : errore di check
// - 3 : valore non ammesso nel link
// - 4 : richiesta password
// - 5 : richiesto otp
public int m_nLastError;
public String m_cLastMsgError;
public String m_cLastWorkVarError;
// m_bCalculating==true la Calculate e' in esecuzione
public boolean m_bCalculating = false;
public static final String i_EntityName = "spadministration_users";
public static final String i_EntityType = "master";
public static final boolean i_IsSon = false;
public boolean m_bSkipCheckOTPSecurity = true;
// Variabile di collegamento con il database: passata nel costruttore
public CPSql m_Sql;
// Variabile di contesto (variabili globali): passata nel costruttore
public CPContext m_Ctx;
// Variabili che contengono il nome fisico e la connessione per la tabella collegata
public String m_cPhName_cpusers;
public String m_cServer_cpusers;
public CPPhTableWrInfo m_oWrInfo_cpusers;
// Variabile che contiene il nome virtuale della tabella
public String m_cVirtName_cpusers;
public String m_cPhName_cplangs;
public String m_cServer_cplangs;
public CPPhTableWrInfo m_oWrInfo_cplangs;
public String m_cPhName_cpazi;
public String m_cServer_cpazi;
public CPPhTableWrInfo m_oWrInfo_cpazi;
// gestori eventi esterni al business object sono collegati inserendoli nella coppia di strutture dati seguenti
// gestori associati a particolari eventi ('Blank')
public static volatile HashMap specificEventsHandlers;
// gestori associati a tutti gli eventi
public static volatile ArrayList allEventsHandlers;
// metadati resi disponibili ai gestori di eventi
public static String[] m_EntityTables = {"cpusers"};
// codice secondo sintassi delle business rules per produrre i dati da usare in un ideale documento che li rappresenti
public static final String i_StateStructure = "{'spadministration_usersgroups':spadministration_usersgroups,'spadministration_ssomap_child':spadministration_ssomap_child,'code':code,'fullname':fullname,'name':name,'accesstype_human':accesstype_human,'accesstype_service':accesstype_service,'accesstype_machine':accesstype_machine,'modifyPassword':modifyPassword,'pwd1':pwd1,'pwd2':pwd2,'pwdcomplexity_group':pwdcomplexity_group,'pwdcomplexity':pwdcomplexity,'forcepwdchange':forcepwdchange,'enabled':enabled,'language':language,'decimalseparator':decimalseparator,'thousandseparator':thousandseparator,'datepattern':datepattern,'datetimepattern':datetimepattern,'pwddaysduration':pwddaysduration,'pwdciclicity':pwdciclicity,'captchalevel':captchalevel,'spadministration_historypwd':spadministration_historypwd,'spadministration_usercompanies':spadministration_usercompanies,'datestart':datestart,'datestop':datestop,'printserver':printserver,'usesiarlicense':usesiarlicense,'selected_group':selected_group,'otp':otp,'companies':companies,'UFENABLEAZI':UFENABLEAZI"+FoundlingChildrenList("spadministration_users",true)+"}";
public static final String i_CompleteStateStructure = "{'spadministration_usersgroups':spadministration_usersgroups,'spadministration_ssomap_child':spadministration_ssomap_child,'code':code,'fullname':fullname,'name':name,'accesstype_human':accesstype_human,'accesstype_service':accesstype_service,'accesstype_machine':accesstype_machine,'modifyPassword':modifyPassword,'pwd1':pwd1,'calcomplex':calcomplex,'pwdratecause':pwdratecause,'pwd2':pwd2,'pwdcomplexity_group':pwdcomplexity_group,'pwdcomplexity':pwdcomplexity,'pwdcomplexity_reqired':pwdcomplexity_reqired,'forcepwdchange':forcepwdchange,'enabled':enabled,'language':language,'language_name':language_name,'decimalseparator':decimalseparator,'thousandseparator':thousandseparator,'datepattern':datepattern,'datetimepattern':datetimepattern,'pwddaysduration_group':pwddaysduration_group,'pwddaysduration':pwddaysduration,'pwdciclicity_groups':pwdciclicity_groups,'pwdciclicity':pwdciclicity,'pwdcaptchalevel_group':pwdcaptchalevel_group,'captchalevel':captchalevel,'spadministration_historypwd':spadministration_historypwd,'spadministration_usercompanies':spadministration_usercompanies,'datestart':datestart,'datestop':datestop,'failedlogins':failedlogins,'lastfailedlogin':lastfailedlogin,'lastsuccessfullogin':lastsuccessfullogin,'pwdcreate':pwdcreate,'pwddaysduration_applied':pwddaysduration_applied,'pwdciclicity_applied':pwdciclicity_applied,'pwdcaptchalevel_applied':pwdcaptchalevel_applied,'printserver':printserver,'init_code':init_code,'createdwhen':createdwhen,'pwd_modified':pwd_modified,'usesiarlicense':usesiarlicense,'IAR_LICENSE_VALID':IAR_LICENSE_VALID,'IAR_LICENSES':IAR_LICENSES,'IAR_USED':IAR_USED,'IAR_AVAILABLE':IAR_AVAILABLE,'selected_group':selected_group,'g_OTPisActive':g_OTPisActive,'otp':otp,'companies':companies,'UFENABLEAZI':UFENABLEAZI,'pwd1_view':pwd1_view,'pwd2_view':pwd2_view"+FoundlingChildrenList("spadministration_users",true)+"}";
public static final String i_ItemSequence = "spadministration_usersgroups,spadministration_ssomap_child,code,fullname,name,accesstype_human,accesstype_service,accesstype_machine,modifyPassword,pwd1,pwd2,pwdcomplexity_group,pwdcomplexity,forcepwdchange,enabled,language,decimalseparator,thousandseparator,datepattern,datetimepattern,pwddaysduration,pwdciclicity,captchalevel,spadministration_historypwd,spadministration_usercompanies,datestart,datestop,printserver,usesiarlicense,selected_group,otp,companies,UFENABLEAZI"+FoundlingChildrenList("spadministration_users",false)+"";
public static final com.zucchetti.sitepainter.EntityItem[] i_EditableEntityItems = com.zucchetti.sitepainter.EntityItem.buildEditableItemsForEntity(GetLinkDef(),FoundlingChildrenList("spadministration_users"),new String[][]{new String[]{"spadministration_usersgroups","User groups","","","","link_PC","","false",""},new String[]{"spadministration_ssomap_child","LinkPC","","","","link_PC","","false",""},new String[]{"code","ADMIN_CODE","N","9","0","campo","key1","false","false"},new String[]{"fullname","ADMIN_FULLNAME","C","2048","0","campo","nokey","false","false"},new String[]{"name","ADMIN_NAME","C","50","0","campo","nokey","false","true"},new String[]{"accesstype_human","&Human","L","1","0","campo","nokey","false","false"},new String[]{"accesstype_service","&Service","L","1","0","campo","nokey","false","false"},new String[]{"accesstype_machine","&Machine","L","1","0","campo","nokey","false","false"},new String[]{"modifyPassword","","N","1","0","variabile","nokey","false","false"},new String[]{"pwd1","Password","C","20","0","variabile","nokey","false","false"},new String[]{"pwd2","MSG_CONFIRM_PASSWORD","C","20","0","variabile","nokey","false","false"},new String[]{"pwdcomplexity_group","ADMIN_PWDCOMPLEXITY","N","3","0","variabile","nokey","false","false"},new String[]{"pwdcomplexity","ADMIN_PWDCOMPLEXITY","N","3","0","campo","nokey","false","false"},new String[]{"forcepwdchange","ADMIN_FORCEPWDCHANGE","L","1","0","campo","nokey","false","false"},new String[]{"enabled","ADMIN_DISABLED","C","1","0","campo","nokey","false","false"},new String[]{"language","ADMIN_LANGUAGE","C","3","0","campo","nokey","false","false"},new String[]{"decimalseparator","","C","3","0","campo","nokey","false","false"},new String[]{"thousandseparator","","C","3","0","campo","nokey","false","false"},new String[]{"datepattern","ADMIN_DATEPATTERN","C","12","0","campo","nokey","false","false"},new String[]{"datetimepattern","ADMIN_DATETIMEPATTERN","C","25","0","campo","nokey","false","false"},new String[]{"pwddaysduration","ADMIN_PWDDAYSDURATION","N","4","0","campo","nokey","false","false"},new String[]{"pwdciclicity","ADMIN_PWDCICLICITY","N","2","0","campo","nokey","false","false"},new String[]{"captchalevel","ADMIN_CAPTCHA_LEVEL","N","4","0","campo","nokey","false","false"},new String[]{"spadministration_historypwd","cphistorypwd","","","","link_PC","","false",""},new String[]{"spadministration_usercompanies","User companies","","","","link_PC","","false",""},new String[]{"datestart","ADMIN_VALIDITY_START","D","8","0","campo","nokey","false","false"},new String[]{"datestop","ADMIN_VALIDITY_END","D","8","0","campo","nokey","false","false"},new String[]{"printserver","ADMIN_PRINT_SERVER","C","60","0","campo","nokey","false","false"},new String[]{"usesiarlicense","SPAS_USES_IAR_LICENSE","C","1","0","campo","nokey","false","false"},new String[]{"selected_group","","N","4","0","variabile","nokey","false","false"},new String[]{"otp","","C","100","0","variabile","nokey","false","false"},new String[]{"companies","Companies","C","2000","0","campo","nokey","false","false"},new String[]{"UFENABLEAZI","Abilita l'utente su certe aziende","C","1","0","variabile","nokey","false","false"}});
// dati usati internamente dai metodi BRxxx di BRCallerImpl
private static boolean _involved=true;
protected void _setInvolvedInBR(boolean involved) {
_involved=involved;
}
protected boolean _involvedInBR() {
return _involved;
}
public spadministration_usersBL (CPContext p_ContextObject) {
/* Impostazione dell'ambiente globale: il businness object si collega
all'oggetto globale (unico per più istanze di una stessa applicazione)
per recuperare informazioni sul:
1) nome fisico della tabella di gestione;
2) nome fisico delle tabelle collegate nei link;
3) stringa di connessione.
L'azienda è contenuta nel global object. */
// Assegnazione delle variabili che contengono il nome fisico, il nome virtuale, e la connessione per la tabella collegata
m_cPhName_cpusers = p_ContextObject.GetPhName("cpusers",p_ContextObject.GetCompany(),false);
m_cServer_cpusers = p_ContextObject.GetServer("cpusers");
m_oWrInfo_cpusers = CPPhTableWrInfo.GetCPPhTableWrInfo(p_ContextObject,"cpusers",p_ContextObject.GetCompany());
m_cVirtName_cpusers = CPSql.ManipulateTablePhName("cpusers",m_cServer_cpusers);
// Assegnazione della variabile di collegamento con il database
m_Sql = p_ContextObject.GetSql();
m_Ctx = p_ContextObject;
m_cPhName_cplangs = p_ContextObject.GetPhName("cplangs");
m_cServer_cplangs = p_ContextObject.GetServer("cplangs");
m_oWrInfo_cplangs = CPPhTableWrInfo.GetCPPhTableWrInfo(p_ContextObject,"cplangs",p_ContextObject.GetCompany());
m_cPhName_cpazi = p_ContextObject.GetPhName("cpazi");
m_cServer_cpazi = p_ContextObject.GetServer("cpazi");
m_oWrInfo_cpazi = CPPhTableWrInfo.GetCPPhTableWrInfo(p_ContextObject,"cpazi",p_ContextObject.GetCompany());
// Istanziazione dei business object dei figli
spadministration_usersgroups = new spadministration_usersgroupsBO(p_ContextObject);
spadministration_ssomap_child = new spadministration_ssomap_childBO(p_ContextObject);
spadministration_historypwd = new spadministration_historypwdBO(p_ContextObject);
spadministration_usercompanies = new spadministration_usercompaniesBO(p_ContextObject);
m_MNTs = CPLib.MNTChilds("spadministration_users",p_ContextObject);
}
public void Blank() {
BlankStatusVariables();
// * --- Area Manuale = BO - Blank Record Init
// * --- Fine Area Manuale
w_fullname = "";
w_name = "";
w_pwdcomplexity = 0;
w_forcepwdchange = false;
w_language = "";
w_language_name = "";
w_decimalseparator = "";
w_thousandseparator = "";
w_datepattern = "";
w_datetimepattern = "";
w_pwddaysduration = 0;
w_pwdciclicity = 0;
w_captchalevel = 0;
w_datestart = CPLib.NullDate();
w_datestop = CPLib.NullDate();
w_failedlogins = 0;
w_lastfailedlogin = CPLib.NullDateTime();
w_lastsuccessfullogin = CPLib.NullDateTime();
w_printserver = "";
w_usesiarlicense = "";
w_selected_group = 0;
w_g_OTPisActive = m_Ctx.GetGlobalString("g_OTPisActive");
w_otp = "";
w_code = UserAdmin.Make(m_Ctx).GetNextCode("users");
Link_CIUGDDXJMR();
w_accesstype_human = true;
w_accesstype_service = true;
w_accesstype_machine = true;
w_modifyPassword = (CPLib.eq(EntityStatus(),"E")?0:1);
w_pwd1 = (CPLib.eq(EntityStatus(),"N")?"":"cambia la password");
w_calcomplex = 0;
w_calcomplex = UserAdmin.Make(m_Ctx).GetPasswordRating(w_pwd1);
w_pwdratecause = "";
w_pwdratecause = UserAdmin.Make(m_Ctx).GetPasswordRatingExplaination(w_pwd1);
w_pwd2 = (CPLib.eq(EntityStatus(),"N")?"":"cambia la password");
w_pwdcomplexity_group = 0;
w_pwdcomplexity_group = spadministration_getpwdcomplexity_groupR.Make(m_Ctx,this).Run(w_code);
w_pwdcomplexity_reqired = 0;
w_pwdcomplexity_reqired = CPLib.Max(w_pwdcomplexity,w_pwdcomplexity_group);
w_enabled = "E";
Link_XFCGDYJJAR();
w_pwddaysduration_group = 0;
w_pwddaysduration_group = spadministration_getpwdduration_groupR.Make(m_Ctx,this).Run(w_code);
w_pwdciclicity_groups = 0;
w_pwdciclicity_groups = spadministration_getpwdciclicity_groupR.Make(m_Ctx,this).Run(w_code);
w_pwdcaptchalevel_group = 0;
w_pwdcaptchalevel_group = spadministration_getcaptchalevel_groupR.Make(m_Ctx,this).Run(w_code);
w_pwdcreate = CPLib.DateTime();
w_pwddaysduration_applied = 0;
w_pwddaysduration_applied = (CPLib.gt(w_pwddaysduration,0) && CPLib.gt(w_pwddaysduration_group,0)?CPLib.Min(w_pwddaysduration,w_pwddaysduration_group):CPLib.Max(w_pwddaysduration,w_pwddaysduration_group));
w_pwdciclicity_applied = 0;
w_pwdciclicity_applied = CPLib.Max(w_pwdciclicity,w_pwdciclicity_groups);
w_pwdcaptchalevel_applied = 0;
w_pwdcaptchalevel_applied = (CPLib.gt(w_captchalevel,0) && CPLib.gt(w_pwdcaptchalevel_group,0)?CPLib.Min(w_captchalevel,w_pwdcaptchalevel_group):CPLib.Max(w_captchalevel,w_pwdcaptchalevel_group));
w_init_code = w_code;
w_createdwhen = CPLib.DateTime();
w_pwd_modified = false;
w_pwd_modified = true;
w_IAR_LICENSE_VALID = spas_fgetlicensevalidR.Make(m_Ctx,this).Run();
w_IAR_LICENSES = spas_flicensepurchasedR.Make(m_Ctx,this).Run();
w_IAR_USED = spas_fgetlicenseusedR.Make(m_Ctx,this).Run();
w_IAR_AVAILABLE = 0;
w_IAR_AVAILABLE = w_IAR_LICENSES-w_IAR_USED;
w_companies = "";
w_companies = (CPLib.eq(w_UFENABLEAZI,"n")?"":w_companies);
w_UFENABLEAZI = "";
w_UFENABLEAZI = (CPLib.Empty(w_companies)?"n":"s");
w_pwd1_view = false;
w_pwd2_view = false;
m_cWv_spadministration_usersgroups = "";
m_cWv_spadministration_ssomap_child = "";
m_cWv_spadministration_historypwd = "";
m_cWv_spadministration_usercompanies = "";
CPExtenderLib.BlankExtendedFields(extendedFields);
SaveDependsOn();
NotifyEvent("Blank");
// * --- Area Manuale = BO - Blank Record End
// * --- Fine Area Manuale
}
public boolean IsUpdated() {
boolean l_bResult;
l_bResult = m_bUpdated;
l_bResult = l_bResult || spadministration_usersgroups.IsUpdated() || CPLib.IsUpdated(m_cWv_spadministration_usersgroups);
l_bResult = l_bResult || spadministration_ssomap_child.IsUpdated() || CPLib.IsUpdated(m_cWv_spadministration_ssomap_child);
l_bResult = l_bResult || spadministration_historypwd.IsUpdated() || CPLib.IsUpdated(m_cWv_spadministration_historypwd);
l_bResult = l_bResult || spadministration_usercompanies.IsUpdated() || CPLib.IsUpdated(m_cWv_spadministration_usercompanies);
return l_bResult;
}
public boolean IsLoaded() {
return m_bLoaded;
}
public boolean IsNew() {
return IsUpdated() && ! (IsLoaded());
}
public void SaveDependsOn() {
o_code = w_code;
o_modifyPassword = w_modifyPassword;
o_pwd1 = w_pwd1;
o_pwd2 = w_pwd2;
o_pwddaysduration_group = w_pwddaysduration_group;
o_pwddaysduration = w_pwddaysduration;
o_pwdciclicity_groups = w_pwdciclicity_groups;
o_pwdciclicity = w_pwdciclicity;
o_pwdcaptchalevel_group = w_pwdcaptchalevel_group;
o_captchalevel = w_captchalevel;
o_selected_group = w_selected_group;
o_companies = w_companies;
o_UFENABLEAZI = w_UFENABLEAZI;
spadministration_usersgroups.SaveDependsOn();
spadministration_ssomap_child.SaveDependsOn();
spadministration_historypwd.SaveDependsOn();
spadministration_usercompanies.SaveDependsOn();
}
public void NotifyEvent(String p_cEvent) {
if (CPLib.eq(p_cEvent,"Insert end")) {
Calculation_ORMDEWSLSD();
} else if (CPLib.eq(p_cEvent,"Record Deleted")) {
Calculation_FABWPYXIOK();
} else if (CPLib.eq(p_cEvent,"Record Inserted")) {
Calculation_UGMVQYEORN();
} else if (CPLib.eq(p_cEvent,"Update end")) {
Calculation_ORMDEWSLSD();
}
CPLib.NotifyEvent(p_cEvent,this,m_Ctx,specificEventsHandlers,allEventsHandlers);
}
// Funzioni di link legate alle variabili ed ai campi.
protected boolean Link_CIUGDDXJMR() {
return Link_CIUGDDXJMR("Full");
}
protected boolean Link_CIUGDDXJMR(String p_cType) {
// Viene eseguita una query per chiave totale.
boolean l_bResult;
boolean l_bLoaded;
String l_cWhere = "";
String l_cCurrentKey;
l_bResult = false;
// Dichiarazione del cursore locale del link
CPResultSet l_rsLink=null;
if ( ! (CPLib.Empty(w_code))) {
double l_OldValue = w_code;
// Costruzione della where per la chiave corrente e per le chiavi fisse
l_cCurrentKey = "="+CPSql.SQLValueAdapter(CPLib.ToSQL(w_code,"N",9,0),m_cServer_cpusers,w_code);
if (m_Ctx.IsSharedTemp("cpusers")) {
l_cWhere = l_cWhere+" and context_id='"+m_Ctx.GetTempID()+"'";
}
if (l_rsLink!=null)
l_rsLink.Close();
l_rsLink = m_Sql.Query(m_cServer_cpusers,"select code,cpotp from "+m_cPhName_cpusers+((m_cPhName_cpusers).endsWith(CPSecurity.FILTER_QUERY_POSTFIX)?CPLib.NewCPCCCHK():"")+" where "+"code"+l_cCurrentKey+l_cWhere);
try {
l_bLoaded = ! (l_rsLink.Eof());
if (l_bLoaded) {
/* E' stato trovato almeno un record: i valori del cursore vengono riportati nei
relativi campi e/o variabili.
*/
w_code = l_rsLink.GetDouble("code");
w_otp = l_rsLink.GetString("cpotp");
l_rsLink.Next();
/* Se è stato trovato un record il link con chiave piena ha avuto successo.
*/
l_bResult = l_rsLink.Eof();
/* Segna che l'interfaccia potrebbe fare un link con chiave parziale
*/
} else {
l_bResult = true;
if (CPLib.eq(p_cType,"Full")) {
Link_CIUGDDXJMR_blank();
}
}
if ( ! (l_bResult)) {
m_nLastError = 3;
m_cLastMsgError = "";
if (CPLib.eq(m_cLastMsgError,"")) {
m_cLastMsgError = m_Ctx.Translate("MSG_LINK_FAILED","code");
}
m_cLastWorkVarError = "code";
}
} finally {
l_rsLink.Close();
}
} else {
// Se la variabile è vuota deve essere considerato un valore valido ('NULL')
l_bResult = true;
Link_CIUGDDXJMR_blank();
}
return l_bResult;
}
void Link_CIUGDDXJMR_blank() {
Link_CIUGDDXJMR_blank("");
}
void Link_CIUGDDXJMR_blank(String p_cType) {
w_otp = "";
}
protected boolean Link_XFCGDYJJAR() {
return Link_XFCGDYJJAR("Full");
}
protected boolean Link_XFCGDYJJAR(String p_cType) {
// Viene eseguita una query per chiave totale.
boolean l_bResult;
boolean l_bLoaded;
String l_cWhere = "";
String l_cCurrentKey;
l_bResult = false;
// Dichiarazione del cursore locale del link
CPResultSet l_rsLink=null;
if ( ! (CPLib.Empty(w_language))) {
String l_OldValue = w_language;
// Costruzione della where per la chiave corrente e per le chiavi fisse
l_cCurrentKey = "="+CPSql.SQLValueAdapter(CPLib.ToSQL(w_language,"C",3,0),m_cServer_cplangs,w_language);
if (m_Ctx.IsSharedTemp("cplangs")) {
l_cWhere = l_cWhere+" and context_id='"+m_Ctx.GetTempID()+"'";
}
if (l_rsLink!=null)
l_rsLink.Close();
l_rsLink = m_Sql.Query(m_cServer_cplangs,"select code,name from "+m_cPhName_cplangs+((m_cPhName_cplangs).endsWith(CPSecurity.FILTER_QUERY_POSTFIX)?CPLib.NewCPCCCHK():"")+" where "+"code"+l_cCurrentKey+l_cWhere);
try {
l_bLoaded = ! (l_rsLink.Eof());
if (l_bLoaded) {
/* E' stato trovato almeno un record: i valori del cursore vengono riportati nei
relativi campi e/o variabili.
*/
w_language = l_rsLink.GetString("code");
w_language_name = l_rsLink.GetString("name");
l_rsLink.Next();
/* Se è stato trovato un record il link con chiave piena ha avuto successo.
*/
l_bResult = l_rsLink.Eof();
/* Segna che l'interfaccia potrebbe fare un link con chiave parziale
*/
} else {
Link_XFCGDYJJAR_blank();
if (CPLib.eq(p_cType,"Load")) {
w_language = l_OldValue;
}
}
if ( ! (l_bResult)) {
m_nLastError = 3;
m_cLastMsgError = "";
if (CPLib.eq(m_cLastMsgError,"")) {
m_cLastMsgError = m_Ctx.Translate("MSG_LINK_FAILED","language");
}
m_cLastWorkVarError = "language";
}
} finally {
l_rsLink.Close();
}
} else {
// Se la variabile è vuota deve essere considerato un valore valido ('NULL')
l_bResult = true;
Link_XFCGDYJJAR_blank();
}
return l_bResult;
}
void Link_XFCGDYJJAR_blank() {
w_language = "";
w_language_name = "";
}
/* Gestione dei metodi per l'impostazione delle variabili di work.
I seguenti metodi sono pubblici perchè vengono chiamati dalla UI che
ha creato il business object o da batch.
*/
public boolean Set_code(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_code = p_workVariableValue;
l_bResult = Link_CIUGDDXJMR();
// La variabile che indica il tipo di errore viene eventualmente impostata
// dalla funzione di link: infatti il suo valore di ritorno non e'
// sufficiente per determinare il tipo di errore che puo' essere di valore
// non trovato nella tabella collegata o di check non valido.
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_code = 0;
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_fullname(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_fullname = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_name(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_name = p_workVariableValue;
// Se il campo è vuoto, demando la segnalazione dell'obbligatorietà alla Check() del business object
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_name = "";
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_accesstype_human(boolean p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_accesstype_human = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_accesstype_service(boolean p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_accesstype_service = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_accesstype_machine(boolean p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_accesstype_machine = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_modifyPassword(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_modifyPassword = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwd1(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwd1 = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwd2(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwd2 = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwdcomplexity_group(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwdcomplexity_group = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwdcomplexity(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwdcomplexity = p_workVariableValue;
//
l_bResult = CPLib.ge(w_pwdcomplexity,0) && CPLib.le(w_pwdcomplexity,UserAdmin.Make(m_Ctx).GetPasswordRatingMaxReachable());
if ( ! (l_bResult)) {
m_nLastError = 2;
m_cLastMsgError = "ADMIN_MSG_ERROR_RANGE";
}
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_pwdcomplexity = 0;
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_forcepwdchange(boolean p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_forcepwdchange = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_enabled(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_enabled = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_language(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_language = p_workVariableValue;
l_bResult = Link_XFCGDYJJAR();
// La variabile che indica il tipo di errore viene eventualmente impostata
// dalla funzione di link: infatti il suo valore di ritorno non e'
// sufficiente per determinare il tipo di errore che puo' essere di valore
// non trovato nella tabella collegata o di check non valido.
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_language = "";
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_decimalseparator(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_decimalseparator = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_thousandseparator(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_thousandseparator = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_datepattern(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_datepattern = p_workVariableValue;
//
l_bResult = CPLib.Empty(w_datepattern) || (CPLib.gt(CPLib.At("YYYY",w_datepattern),0) && CPLib.gt(CPLib.At("MM",w_datepattern),0) && CPLib.gt(CPLib.At("DD",w_datepattern),0));
if ( ! (l_bResult)) {
m_nLastError = 2;
m_cLastMsgError = "ADMIN_DATE_WRONG";
}
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_datepattern = "";
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_datetimepattern(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_datetimepattern = p_workVariableValue;
//
l_bResult = CPLib.Empty(w_datetimepattern) || (CPLib.gt(CPLib.At("YYYY",w_datetimepattern),0) && CPLib.gt(CPLib.At("MM",w_datetimepattern),0) && CPLib.gt(CPLib.At("DD",w_datetimepattern),0) && CPLib.gt(CPLib.At("hh",w_datetimepattern),0) && CPLib.gt(CPLib.At("mm",w_datetimepattern),0) && CPLib.gt(CPLib.At("ss",w_datetimepattern),0));
if ( ! (l_bResult)) {
m_nLastError = 2;
m_cLastMsgError = "ADMIN_DATETIME_WRONG";
}
if ( ! (l_bResult)) {
// Impostazione a blank della variabile di work
w_datetimepattern = "";
}
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwddaysduration(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwddaysduration = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_pwdciclicity(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_pwdciclicity = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_captchalevel(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_captchalevel = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_datestart(java.sql.Date p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_datestart = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_datestop(java.sql.Date p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_datestop = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_printserver(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_printserver = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_usesiarlicense(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_usesiarlicense = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_selected_group(double p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_selected_group = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_otp(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_otp = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_companies(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_companies = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
public boolean Set_UFENABLEAZI(String p_workVariableValue) {
m_nLastError = 0;
m_cLastMsgError = "";
boolean l_bResult;
l_bResult = true;
// Variabile temporanea che conterrà il risultato della funzione di link se l'item corrente è parte di una chiave composta
boolean l_bTmpRes;
SetUpdated();
w_UFENABLEAZI = p_workVariableValue;
// Esecuzione dei calcoli
Calculate();
SaveDependsOn();
return l_bResult;
}
/* Gestione delle funzioni che rispondono lo stato delle variabili di work.
Vengono chiamate dalla UI per valutare la condizione di visibilità e di
abilitazione di un control.
*/
public boolean getWritable_pwd1() {
return CPLib.ne(EntityStatus(),"E") || CPLib.eq(w_modifyPassword,1);
}
public boolean getWritable_pwd2() {
return CPLib.ne(EntityStatus(),"E") || CPLib.eq(w_modifyPassword,1);
}
public boolean getWritable_pwdcomplexity_group() {
return false;
}
public boolean getWritable_usesiarlicense() {
return w_IAR_LICENSE_VALID;
}
public boolean getWritable_companies() {
return false;
}
public boolean getVisible_calcomplex() {
return CPLib.eq(w_pwd1,"cambia la password");
}
public boolean getVisible_pwdcomplexity_reqired() {
return CPLib.eq(w_pwd1,"cambia la password");
}
public boolean getVisible_selected_group() {
return true;
}
public boolean getVisible_otp() {
return true;
}
public boolean getVisible_companies() {
return true;
}
public boolean Set_Password(String p_pwd) {
m_cPassword = p_pwd;
return true;
}
public boolean Set_OTP(String p_otp) {
m_cOTP = p_otp;
return true;
}
public boolean Calculate() {
boolean l_bTmpRes;
l_bTmpRes = true;
boolean l_bResult;
l_bResult = true;
m_bCalculating = true;
if (CPLib.ne(o_modifyPassword,w_modifyPassword)) {
Calculation_YULXNUPOWY();
}
if (CPLib.ne(o_pwd1,w_pwd1) || CPLib.ne(o_modifyPassword,w_modifyPassword)) {
w_calcomplex = UserAdmin.Make(m_Ctx).GetPasswordRating(w_pwd1);
}
if (CPLib.ne(o_pwd1,w_pwd1)) {
w_pwdratecause = UserAdmin.Make(m_Ctx).GetPasswordRatingExplaination(w_pwd1);
}
if (CPLib.ne(o_code,w_code)) {
w_pwdcomplexity_group = spadministration_getpwdcomplexity_groupR.Make(m_Ctx,this).Run(w_code);
}
w_pwdcomplexity_reqired = CPLib.Max(w_pwdcomplexity,w_pwdcomplexity_group);
if (CPLib.ne(o_code,w_code)) {
w_pwddaysduration_group = spadministration_getpwdduration_groupR.Make(m_Ctx,this).Run(w_code);
}
if (CPLib.ne(o_code,w_code)) {
w_pwdciclicity_groups = spadministration_getpwdciclicity_groupR.Make(m_Ctx,this).Run(w_code);
}
if (CPLib.ne(o_code,w_code)) {
w_pwdcaptchalevel_group = spadministration_getcaptchalevel_groupR.Make(m_Ctx,this).Run(w_code);
}
if (CPLib.ne(o_pwddaysduration,w_pwddaysduration) || CPLib.ne(o_pwddaysduration_group,w_pwddaysduration_group)) {
w_pwddaysduration_applied = (CPLib.gt(w_pwddaysduration,0) && CPLib.gt(w_pwddaysduration_group,0)?CPLib.Min(w_pwddaysduration,w_pwddaysduration_group):CPLib.Max(w_pwddaysduration,w_pwddaysduration_group));
}
if (CPLib.ne(o_pwdciclicity,w_pwdciclicity) || CPLib.ne(o_pwdciclicity_groups,w_pwdciclicity_groups)) {
w_pwdciclicity_applied = CPLib.Max(w_pwdciclicity,w_pwdciclicity_groups);
}
if (CPLib.ne(o_captchalevel,w_captchalevel) || CPLib.ne(o_pwdcaptchalevel_group,w_pwdcaptchalevel_group)) {
w_pwdcaptchalevel_applied = (CPLib.gt(w_captchalevel,0) && CPLib.gt(w_pwdcaptchalevel_group,0)?CPLib.Min(w_captchalevel,w_pwdcaptchalevel_group):CPLib.Max(w_captchalevel,w_pwdcaptchalevel_group));
}
if (CPLib.ne(o_pwd1,w_pwd1) || CPLib.ne(o_pwd2,w_pwd2)) {
w_pwd_modified = true;
}
w_IAR_AVAILABLE = w_IAR_LICENSES-w_IAR_USED;
if (CPLib.ne(o_UFENABLEAZI,w_UFENABLEAZI)) {
w_companies = (CPLib.eq(w_UFENABLEAZI,"n")?"":w_companies);
}
if (CPLib.ne(o_companies,w_companies)) {
w_UFENABLEAZI = (CPLib.Empty(w_companies)?"n":"s");
}
// * --- Area Manuale = BO - Calculate
// * --- Fine Area Manuale
CopyWorkVar(this,spadministration_usersgroups,new String[]{"selected_group"},new String[]{"selected_group"},true);
for (int l_i = 0; CPLib.lt(l_i,m_MNTs.length); l_i = l_i + (1)) {
m_MNTs[l_i].m_child.FoundlingCopyWorkVar(this,true);
}
m_bCalculating = false;
return l_bResult;
}
void Calculation_YULXNUPOWY() {
if (CPLib.eq(w_modifyPassword,1)) {
w_pwd1 = "";
}
if (CPLib.eq(w_modifyPassword,1)) {
w_pwd2 = "";
}
if (CPLib.eq(w_modifyPassword,0)) {
w_pwd1 = "cambia la password";
}
if (CPLib.eq(w_modifyPassword,0)) {
w_pwd2 = "cambia la password";
}
}
void Calculation_ORMDEWSLSD() {
spadministration_writepwdR l_oRoutine_spadministration_writepwd;
l_oRoutine_spadministration_writepwd = spadministration_writepwdR.Make(m_Ctx,this);
l_oRoutine_spadministration_writepwd.password = w_pwd2;
l_oRoutine_spadministration_writepwd.usercode = w_code;
l_oRoutine_spadministration_writepwd.Run();
}
void Calculation_FABWPYXIOK() {
spadministration_deleteuserR l_oRoutine_spadministration_deleteuser;
l_oRoutine_spadministration_deleteuser = spadministration_deleteuserR.Make(m_Ctx,this);
l_oRoutine_spadministration_deleteuser.usercode = w_code;
l_oRoutine_spadministration_deleteuser.Run();
}
void Calculation_UGMVQYEORN() {
spadministration_firstloginR l_oRoutine_spadministration_firstlogin;
l_oRoutine_spadministration_firstlogin = spadministration_firstloginR.Make(m_Ctx,this);
l_oRoutine_spadministration_firstlogin.usercode = w_code;
l_oRoutine_spadministration_firstlogin.Run();
}
boolean Check_DPHWQTPSFC(boolean p_bForce) {
boolean l_bResult = true;
if (p_bForce) {
l_bResult = ! (w_pwd_modified) || UserAdmin.Make(m_Ctx).CheckPasswordStrength(w_pwd1,w_pwdcomplexity_reqired);
if ( ! (l_bResult)) {
m_cLastMsgError = "MSG_WEAKY_PASSWORD";
} else {
l_bResult = CPLib.eq(w_pwd1,w_pwd2);
if ( ! (l_bResult)) {
m_cLastMsgError = "MSG_PASSWORD_CONFIRM_DIFFERENT";
}
}
}
return l_bResult;
}
boolean Check_BLWKYYPKAQ(boolean p_bForce) {
boolean l_bResult = true;
if (p_bForce) {
l_bResult = CPLib.gt(w_code,0);
if ( ! (l_bResult)) {
m_cLastMsgError = "ADMIN_CODE_MUST_POSITIVE";
}
}
return l_bResult;
}
protected void BlankStatusVariables() {
m_bLoaded = false;
m_bUpdated = false;
m_cPreviousState = CPSecurity.UNKNOWN_STATE;
}
public void CalledBatchEnd() {
if ( ! (m_bCalculating)) {
// Esecuzione dei calcoli
Calculate();
}
}
public final static String[] m_KeyColumns = {"code"};
public static String QueryFilter(CPContext m_Ctx) {
String l_cFilter;
l_cFilter = CPLib.ApplicationQueryFilter("spadministration_users","cpusers",m_KeyColumns,m_Ctx);
return l_cFilter;
}
public void SetFromContext(String s) {
SetFromContext(s,null);
}
public void SetFromContext(java.util.Properties p) {
SetFromContext("_dummy_",p);
}
public void SetFromContext(String s,java.util.Properties p) {
BlankStatusVariables();
w_code = 0;
w_fullname = "";
w_name = "";
w_accesstype_human = false;
w_accesstype_service = false;
w_accesstype_machine = false;
w_modifyPassword = 0;
w_pwd1 = "";
w_calcomplex = 0;
w_pwdratecause = "";
w_pwd2 = "";
w_pwdcomplexity_group = 0;
w_pwdcomplexity = 0;
w_pwdcomplexity_reqired = 0;
w_forcepwdchange = false;
w_enabled = "";
w_language = "";
w_language_name = "";
w_decimalseparator = "";
w_thousandseparator = "";
w_datepattern = "";
w_datetimepattern = "";
w_pwddaysduration_group = 0;
w_pwddaysduration = 0;
w_pwdciclicity_groups = 0;
w_pwdciclicity = 0;
w_pwdcaptchalevel_group = 0;
w_captchalevel = 0;
w_datestart = CPLib.NullDate();
w_datestop = CPLib.NullDate();
w_failedlogins = 0;
w_lastfailedlogin = CPLib.NullDateTime();
w_lastsuccessfullogin = CPLib.NullDateTime();
w_pwdcreate = CPLib.NullDateTime();
w_pwddaysduration_applied = 0;
w_pwdciclicity_applied = 0;
w_pwdcaptchalevel_applied = 0;
w_printserver = "";
w_init_code = 0;
w_createdwhen = CPLib.NullDateTime();
w_pwd_modified = false;
w_usesiarlicense = "";
w_IAR_LICENSE_VALID = false;
w_IAR_LICENSES = 0;
w_IAR_USED = 0;
w_IAR_AVAILABLE = 0;
w_selected_group = 0;
w_g_OTPisActive = m_Ctx.GetGlobalString("g_OTPisActive");
w_otp = "";
w_companies = "";
w_UFENABLEAZI = "";
w_pwd1_view = false;
w_pwd2_view = false;
m_cWv_spadministration_usersgroups = "";
m_cWv_spadministration_ssomap_child = "";
m_cWv_spadministration_historypwd = "";
m_cWv_spadministration_usercompanies = "";
CPExtenderLib.BlankExtendedFields(extendedFields);
SaveDependsOn();
if ( ! (CPLib.Empty(s))) {
if (CPLib.IsNull(p)) {
p = CPLib.GetProperties(s);
}
boolean l_bFromHyperlink = CPLib.ne("_not_found_",CPLib.GetProperty(p,"m_cParameterSequence","_not_found_"));
w_code = CPLib.GetProperty(p,"code",w_code,0);
w_fullname = CPLib.GetProperty(p,"fullname",w_fullname,0);
w_name = CPLib.GetProperty(p,"name",w_name,0);
w_accesstype_human = CPLib.GetProperty(p,"accesstype_human",w_accesstype_human,0);
w_accesstype_service = CPLib.GetProperty(p,"accesstype_service",w_accesstype_service,0);
w_accesstype_machine = CPLib.GetProperty(p,"accesstype_machine",w_accesstype_machine,0);
w_pwdcomplexity = CPLib.GetProperty(p,"pwdcomplexity",w_pwdcomplexity,0);
w_forcepwdchange = CPLib.GetProperty(p,"forcepwdchange",w_forcepwdchange,0);
w_enabled = CPLib.GetProperty(p,"enabled",w_enabled,0);
w_language = CPLib.GetProperty(p,"language",w_language,0);
w_decimalseparator = CPLib.GetProperty(p,"decimalseparator",w_decimalseparator,0);
w_thousandseparator = CPLib.GetProperty(p,"thousandseparator",w_thousandseparator,0);
w_datepattern = CPLib.GetProperty(p,"datepattern",w_datepattern,0);
w_datetimepattern = CPLib.GetProperty(p,"datetimepattern",w_datetimepattern,0);
w_pwddaysduration = CPLib.GetProperty(p,"pwddaysduration",w_pwddaysduration,0);
w_pwdciclicity = CPLib.GetProperty(p,"pwdciclicity",w_pwdciclicity,0);
w_captchalevel = CPLib.GetProperty(p,"captchalevel",w_captchalevel,0);
w_datestart = CPLib.GetProperty(p,"datestart",w_datestart,0);
w_datestop = CPLib.GetProperty(p,"datestop",w_datestop,0);
w_failedlogins = CPLib.GetProperty(p,"failedlogins",w_failedlogins,0);
w_lastfailedlogin = CPLib.GetProperty(p,"lastfailedlogin",w_lastfailedlogin,0);
w_lastsuccessfullogin = CPLib.GetProperty(p,"lastsuccessfullogin",w_lastsuccessfullogin,0);
w_pwdcreate = CPLib.GetProperty(p,"pwdcreate",w_pwdcreate,0);
w_printserver = CPLib.GetProperty(p,"printserver",w_printserver,0);
w_createdwhen = CPLib.GetProperty(p,"createdwhen",w_createdwhen,0);
w_usesiarlicense = CPLib.GetProperty(p,"usesiarlicense",w_usesiarlicense,0);
w_companies = CPLib.GetProperty(p,"companies",w_companies,0);
w_modifyPassword = CPLib.GetProperty(p,"modifyPassword",w_modifyPassword,0);
w_pwd1 = CPLib.GetProperty(p,"pwd1",w_pwd1,0);
w_calcomplex = CPLib.GetProperty(p,"calcomplex",w_calcomplex,0);
w_pwdratecause = CPLib.GetProperty(p,"pwdratecause",w_pwdratecause,0);
w_pwd2 = CPLib.GetProperty(p,"pwd2",w_pwd2,0);
w_pwdcomplexity_group = CPLib.GetProperty(p,"pwdcomplexity_group",w_pwdcomplexity_group,0);
w_pwdcomplexity_reqired = CPLib.GetProperty(p,"pwdcomplexity_reqired",w_pwdcomplexity_reqired,0);
w_language_name = CPLib.GetProperty(p,"language_name",w_language_name,0);
w_pwddaysduration_group = CPLib.GetProperty(p,"pwddaysduration_group",w_pwddaysduration_group,0);
w_pwdciclicity_groups = CPLib.GetProperty(p,"pwdciclicity_groups",w_pwdciclicity_groups,0);
w_pwdcaptchalevel_group = CPLib.GetProperty(p,"pwdcaptchalevel_group",w_pwdcaptchalevel_group,0);
w_pwddaysduration_applied = CPLib.GetProperty(p,"pwddaysduration_applied",w_pwddaysduration_applied,0);
w_pwdciclicity_applied = CPLib.GetProperty(p,"pwdciclicity_applied",w_pwdciclicity_applied,0);
w_pwdcaptchalevel_applied = CPLib.GetProperty(p,"pwdcaptchalevel_applied",w_pwdcaptchalevel_applied,0);
w_init_code = CPLib.GetProperty(p,"init_code",w_init_code,0);
w_pwd_modified = CPLib.GetProperty(p,"pwd_modified",w_pwd_modified,0);
w_IAR_LICENSE_VALID = CPLib.GetProperty(p,"IAR_LICENSE_VALID",w_IAR_LICENSE_VALID,0);
w_IAR_LICENSES = CPLib.GetProperty(p,"IAR_LICENSES",w_IAR_LICENSES,0);
w_IAR_USED = CPLib.GetProperty(p,"IAR_USED",w_IAR_USED,0);
w_IAR_AVAILABLE = CPLib.GetProperty(p,"IAR_AVAILABLE",w_IAR_AVAILABLE,0);
w_selected_group = CPLib.GetProperty(p,"selected_group",w_selected_group,0);
w_g_OTPisActive = CPLib.GetProperty(p,"g_OTPisActive",w_g_OTPisActive,0);
w_otp = CPLib.GetProperty(p,"otp",w_otp,0);
w_UFENABLEAZI = CPLib.GetProperty(p,"UFENABLEAZI",w_UFENABLEAZI,0);
w_pwd1_view = CPLib.GetProperty(p,"pwd1_view",w_pwd1_view,0);
w_pwd2_view = CPLib.GetProperty(p,"pwd2_view",w_pwd2_view,0);
m_cWv_spadministration_usersgroups = CPLib.GetProperty(p,"m_cWv_spadministration_usersgroups",m_cWv_spadministration_usersgroups,0);
m_cWv_spadministration_ssomap_child = CPLib.GetProperty(p,"m_cWv_spadministration_ssomap_child",m_cWv_spadministration_ssomap_child,0);
m_cWv_spadministration_historypwd = CPLib.GetProperty(p,"m_cWv_spadministration_historypwd",m_cWv_spadministration_historypwd,0);
m_cWv_spadministration_usercompanies = CPLib.GetProperty(p,"m_cWv_spadministration_usercompanies",m_cWv_spadministration_usercompanies,0);
CPLib.SetFromContextMNTs(p,m_MNTs);
SPExtenderLib.SetExtendedFromContext(p,extendedFields);
m_bLoaded = CPLib.GetProperty(p,"m_bLoaded",false,0);
m_bUpdated = CPLib.GetProperty(p,"m_bUpdated",false,0);
m_cOldCPCCCHK = CPLib.GetProperty(p,"m_cOldCPCCCHK","",0);
m_cPreviousState = CPLib.GetProperty(p,"m_cPrvsStt","",0);
m_cPassword = CPLib.GetProperty(p,"m_cPwd","",0);
m_cOTP = CPLib.GetProperty(p,"m_cOTP","",0);
m_lCtxLoaded = true;
if ( ! (l_bFromHyperlink)) {
SaveDependsOn();
}
}
}
public void SetUpdated() {
m_bUpdated = true;
}
public String EntityStatus() {
return (m_bLoaded?"E":"N");
}
public String LastErrorMessage() {
return m_cLastMsgError;
}
static void GetLinkDef0(Map<String,List<Map<String,String[]>>> tables) {
java.util.regex.Pattern zeroSplit;
zeroSplit = java.util.regex.Pattern.compile("\\x00");
Map<String,String[]> map;
List<Map<String,String[]>> items;
map = new HashMap<String,String[]>();
items = tables.get("cpusrgrp");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cpusrgrp",items);
}
items.add(map);
map.put("link_PC",new String[]{});
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"usercode"});
map.put("rd_var",new String[]{"w_code"});
map.put("wr_var",new String[]{"w_code"});
map.put("wr_field",new String[]{"usercode"});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",zeroSplit.split("N",-1));
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",zeroSplit.split("4",-1));
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",zeroSplit.split("0",-1));
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",new String[]{""});
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",zeroSplit.split("nokey",-1));
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",zeroSplit.split("FALSE",-1));
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",new String[]{""});
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",zeroSplit.split("variabile",-1));
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cpusrgrp\u0000false\u0000false\u00001\u00000\u0000spadministration_usersgroups\u0000false\u0000false\u0000\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
map = new HashMap<String,String[]>();
items = tables.get("cpssomap");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cpssomap",items);
}
items.add(map);
map.put("link_PC",new String[]{});
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"userid"});
map.put("rd_var",new String[]{"w_code"});
map.put("wr_var",new String[]{"w_code"});
map.put("wr_field",new String[]{"userid"});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",new String[]{});
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",new String[]{});
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",new String[]{});
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",new String[]{});
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",new String[]{});
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",new String[]{});
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",new String[]{});
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",new String[]{});
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cpssomap\u0000false\u0000false\u00001\u00000\u0000spadministration_ssomap_child\u0000false\u0000false\u0000\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
map = new HashMap<String,String[]>();
items = tables.get("cphistorypwd");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cphistorypwd",items);
}
items.add(map);
map.put("link_PC",new String[]{});
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"code"});
map.put("rd_var",new String[]{"w_code"});
map.put("wr_var",new String[]{"w_code"});
map.put("wr_field",new String[]{"code"});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",new String[]{});
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",new String[]{});
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",new String[]{});
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",new String[]{});
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",new String[]{});
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",new String[]{});
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",new String[]{});
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",new String[]{});
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cphistorypwd\u0000false\u0000false\u00001\u00000\u0000spadministration_historypwd\u0000false\u0000false\u0000\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
map = new HashMap<String,String[]>();
items = tables.get("cpusrazi");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cpusrazi",items);
}
items.add(map);
map.put("link_PC",new String[]{});
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"usercode"});
map.put("rd_var",new String[]{"w_code"});
map.put("wr_var",new String[]{"w_code"});
map.put("wr_field",new String[]{"usercode"});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",new String[]{});
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",new String[]{});
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",new String[]{});
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",new String[]{});
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",new String[]{});
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",new String[]{});
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",new String[]{});
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",new String[]{});
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cpusrazi\u0000false\u0000false\u00001\u00000\u0000spadministration_usercompanies\u0000false\u0000false\u0000\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
map = new HashMap<String,String[]>();
items = tables.get("cpusers");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cpusers",items);
}
items.add(map);
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"code","cpotp"});
map.put("rd_var",new String[]{"w_code","w_otp"});
map.put("wr_var",new String[]{});
map.put("wr_field",new String[]{});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",zeroSplit.split("N\u0000C",-1));
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",zeroSplit.split("9\u0000100",-1));
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",zeroSplit.split("0\u00000",-1));
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",zeroSplit.split("ADMIN_CODE\u0000",-1));
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",zeroSplit.split("key1\u0000nokey",-1));
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",zeroSplit.split("FALSE\u0000FALSE",-1));
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",zeroSplit.split("\u0000",-1));
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",zeroSplit.split("campo\u0000variabile",-1));
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cpusers\u0000false\u0000true\u00001\u00000\u0000\u0000true\u0000false\u0000\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
map = new HashMap<String,String[]>();
items = tables.get("cplangs");
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put("cplangs",items);
}
items.add(map);
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{"code","name"});
map.put("rd_var",new String[]{"w_language","w_language_name"});
map.put("wr_var",new String[]{});
map.put("wr_field",new String[]{});
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",zeroSplit.split("C\u0000C",-1));
map.put("rd_kvar.obj_type",new String[]{});
map.put("rd_var.len",zeroSplit.split("3\u000025",-1));
map.put("rd_kvar.len",new String[]{});
map.put("rd_var.dec",zeroSplit.split("0\u00000",-1));
map.put("rd_kvar.dec",new String[]{});
map.put("rd_var.comment",zeroSplit.split("ADMIN_LANGUAGE\u0000",-1));
map.put("rd_kvar.comment",new String[]{});
map.put("rd_var.key_num",zeroSplit.split("nokey\u0000nokey",-1));
map.put("rd_kvar.key_num",new String[]{});
map.put("rd_var.repeated",zeroSplit.split("FALSE\u0000FALSE",-1));
map.put("rd_kvar.repeated",new String[]{});
map.put("rd_var.frm_obbl",zeroSplit.split("\u0000",-1));
map.put("rd_kvar.frm_obbl",new String[]{});
map.put("rd_var.obj",zeroSplit.split("campo\u0000variabile",-1));
map.put("rd_kvar.obj",new String[]{});
map.put("property.value",zeroSplit.split("cplangs\u0000false\u0000false\u00001\u00000\u0000spadministration_langs\u0000false\u0000false\u0000ADMIN_SELECT_LANGUAGE\u0000\u0000\u0000false",-1));
map.put("property.name",zeroSplit.split("arch\u0000fillemptykey\u0000looselylinked\u0000src_key\u0000hst_link_mode\u0000prg_zoom\u0000looselylinked\u0000sendkeystozoomonzoom\u0000zoom_title\u0000prg_link_search\u0000prg_link_defaults\u0000",-1));
}
public static Map<String,List<Map<String,String[]>>> GetLinkDef() {
java.util.regex.Pattern zeroSplit;
zeroSplit = java.util.regex.Pattern.compile("\\x00");
Map<String,List<Map<String,String[]>>> tables;
tables = new HashMap<String,List<Map<String,String[]>>>();
Map<String,String[]> map;
List<Map<String,String[]>> items;
GetLinkDef0(tables);
for(String child : CPLib.LoadableMNTs("spadministration_users",false)) {
map = new HashMap<String,String[]>();
items = tables.get(com.zucchetti.sitepainter.Library.getEntityTables(child)[0]);
if (CPLib.IsNull(items)) {
items = new ArrayList<Map<String,String[]>>();
tables.put(com.zucchetti.sitepainter.Library.getEntityTables(child)[0],items);
}
map.put("link_PC",new String[]{});
map.put("rd_kvar",new String[]{});
map.put("rd_kfield",new String[]{});
map.put("rd_field",new String[]{});
map.put("rd_var",new String[]{});
String[][] definitions = CPMNTChild.GetM_Fkd("spadministration_users",child);
// Informazione usata per risolvere la sintassi BO->tabella nelle VQR
map.put("rd_var",definitions[0]);
map.put("rd_field",definitions[1]);
// Definizione delle coppie padre/figlio
map.put("wr_var",definitions[0]);
map.put("wr_field",definitions[1]);
map.put("wr_op",new String[]{});
map.put("rd_var.obj_type",new String[]{});
map.put("rd_var.len",new String[]{});
map.put("rd_var.dec",new String[]{});
map.put("rd_var.comment",new String[]{});
map.put("property.name",new String[]{"arch","foundling","","","","prg_zoom"});
map.put("property.value",new String[]{com.zucchetti.sitepainter.Library.getEntityTables(child)[0],"true","","","",child});
items.add(map);
}
return tables;
}
public void Initialize() {
// Inizializzazione delle variabili di work
Blank();
// Inizializzazione delle variabili di progressivo e legate alle operazioni a saldo
BlankAutonumberAndTransactionVars();
spadministration_usersgroups = new spadministration_usersgroupsBO(m_Ctx);
spadministration_ssomap_child = new spadministration_ssomap_childBO(m_Ctx);
spadministration_historypwd = new spadministration_historypwdBO(m_Ctx);
spadministration_usercompanies = new spadministration_usercompaniesBO(m_Ctx);
m_MNTs = CPLib.MNTChilds("spadministration_users",m_Ctx);
m_cPreviousState = GetCurrentState();
}
public boolean Check() {
boolean l_bResult;
l_bResult = true;
boolean l_bNoCheck;
l_bNoCheck = true;
boolean l_bNoObligatory;
l_bNoObligatory = true;
ResetErrorMessage();
if (CPLib.Empty(w_name)) {
l_bNoObligatory = ! (CPLib.Empty(w_name));
String obblMsgError = m_Ctx.Translate("ADMIN_NAME")+" : ";
m_cLastMsgError = obblMsgError+m_Ctx.Translate("MSG_OBBLI_FIELD");
l_bResult = false;
w_name = "";
if (CPLib.eq(m_cLastWorkVarError,"")) {
m_cLastWorkVarError = "name";
}
} else if ( ! (CPLib.ge(w_pwdcomplexity,0) && CPLib.le(w_pwdcomplexity,UserAdmin.Make(m_Ctx).GetPasswordRatingMaxReachable()))) {
m_cLastMsgError = m_Ctx.Translate("ADMIN_MSG_ERROR_RANGE");
l_bNoCheck = false;
l_bResult = false;
w_pwdcomplexity = 0;
if (CPLib.eq(m_cLastWorkVarError,"")) {
m_cLastWorkVarError = "pwdcomplexity";
}
} else if ( ! (CPLib.Empty(w_datepattern) || (CPLib.gt(CPLib.At("YYYY",w_datepattern),0) && CPLib.gt(CPLib.At("MM",w_datepattern),0) && CPLib.gt(CPLib.At("DD",w_datepattern),0)))) {
m_cLastMsgError = m_Ctx.Translate("ADMIN_DATE_WRONG");
l_bNoCheck = false;
l_bResult = false;
w_datepattern = "";
if (CPLib.eq(m_cLastWorkVarError,"")) {
m_cLastWorkVarError = "datepattern";
}
} else if ( ! (CPLib.Empty(w_datetimepattern) || (CPLib.gt(CPLib.At("YYYY",w_datetimepattern),0) && CPLib.gt(CPLib.At("MM",w_datetimepattern),0) && CPLib.gt(CPLib.At("DD",w_datetimepattern),0) && CPLib.gt(CPLib.At("hh",w_datetimepattern),0) && CPLib.gt(CPLib.At("mm",w_datetimepattern),0) && CPLib.gt(CPLib.At("ss",w_datetimepattern),0)))) {
m_cLastMsgError = m_Ctx.Translate("ADMIN_DATETIME_WRONG");
l_bNoCheck = false;
l_bResult = false;
w_datetimepattern = "";
if (CPLib.eq(m_cLastWorkVarError,"")) {
m_cLastWorkVarError = "datetimepattern";
}
} else if ( ! (Check_DPHWQTPSFC(true))) {
l_bResult = false;
} else if ( ! (Check_BLWKYYPKAQ(true))) {
l_bResult = false;
}
if (l_bResult && (( ! (spadministration_usersgroups.m_bLoaded) && CPLib.IsLoaded(m_cWv_spadministration_usersgroups)) || ( ! (spadministration_usersgroups.m_bUpdated) && CPLib.IsUpdated(m_cWv_spadministration_usersgroups)))) {
spadministration_usersgroups.SetFromContext(m_cWv_spadministration_usersgroups);
m_cWv_spadministration_usersgroups = "_not_empty_";
}
if (l_bResult && (spadministration_usersgroups.m_bLoaded || spadministration_usersgroups.m_bUpdated)) {
l_bResult = l_bResult && spadministration_usersgroups.Check();
l_bNoCheck = l_bResult;
if ( ! (l_bNoCheck)) {
m_cLastMsgError = spadministration_usersgroups.m_cLastMsgError;
}
}
if (l_bResult && (( ! (spadministration_ssomap_child.m_bLoaded) && CPLib.IsLoaded(m_cWv_spadministration_ssomap_child)) || ( ! (spadministration_ssomap_child.m_bUpdated) && CPLib.IsUpdated(m_cWv_spadministration_ssomap_child)))) {
spadministration_ssomap_child.SetFromContext(m_cWv_spadministration_ssomap_child);
m_cWv_spadministration_ssomap_child = "_not_empty_";
}
if (l_bResult && (spadministration_ssomap_child.m_bLoaded || spadministration_ssomap_child.m_bUpdated)) {
l_bResult = l_bResult && spadministration_ssomap_child.Check();
l_bNoCheck = l_bResult;
if ( ! (l_bNoCheck)) {
m_cLastMsgError = spadministration_ssomap_child.m_cLastMsgError;
}
}
if (l_bResult && (( ! (spadministration_historypwd.m_bLoaded) && CPLib.IsLoaded(m_cWv_spadministration_historypwd)) || ( ! (spadministration_historypwd.m_bUpdated) && CPLib.IsUpdated(m_cWv_spadministration_historypwd)))) {
spadministration_historypwd.SetFromContext(m_cWv_spadministration_historypwd);
m_cWv_spadministration_historypwd = "_not_empty_";
}
if (l_bResult && (spadministration_historypwd.m_bLoaded || spadministration_historypwd.m_bUpdated)) {
l_bResult = l_bResult && spadministration_historypwd.Check();
l_bNoCheck = l_bResult;
if ( ! (l_bNoCheck)) {
m_cLastMsgError = spadministration_historypwd.m_cLastMsgError;
}
}
if (l_bResult && (( ! (spadministration_usercompanies.m_bLoaded) && CPLib.IsLoaded(m_cWv_spadministration_usercompanies)) || ( ! (spadministration_usercompanies.m_bUpdated) && CPLib.IsUpdated(m_cWv_spadministration_usercompanies)))) {
spadministration_usercompanies.SetFromContext(m_cWv_spadministration_usercompanies);
m_cWv_spadministration_usercompanies = "_not_empty_";
}
if (l_bResult && (spadministration_usercompanies.m_bLoaded || spadministration_usercompanies.m_bUpdated)) {
l_bResult = l_bResult && spadministration_usercompanies.Check();
l_bNoCheck = l_bResult;
if ( ! (l_bNoCheck)) {
m_cLastMsgError = spadministration_usercompanies.m_cLastMsgError;
}
}
// * --- Area Manuale = BO - Check Form
// * --- Fine Area Manuale
if ( ! (l_bNoObligatory)) {
m_nLastError = 1;
} else if ( ! (l_bNoCheck)) {
m_nLastError = 2;
}
return l_bResult;
}
void ResetErrorMessage() {
m_nLastError = 0;
m_cLastMsgError = "";
m_cLastWorkVarError = "";
}
public String GetCurrentState() {
String l_bResult;
l_bResult = CPSecurity.UNKNOWN_STATE;
return l_bResult;
}
/** @deprecated Will be removed in a future version **/
@Deprecated
public String GetStateSecurityKey(String p_cState) {
return GetStateSecurityKeyRoles(p_cState)[0];
}
public String[] GetStateSecurityKeyRoles(String p_cState) {
String[] l_Keys = {};
if (CPLib.eq(p_cState,CPSecurity.UNKNOWN_STATE)) {
l_Keys = new String[]{"spadministration_users"};
}
if (CPLib.eq(l_Keys.length,0)) {
l_Keys = new String[]{"spadministration_users\\"+p_cState};
}
return l_Keys;
}
public boolean CanView() {
boolean l_bResult;
l_bResult = true;
ResetErrorMessage();
l_bResult = l_bResult && BRCanView();
if ( ! (l_bResult)) {
String o_cLastMsgError = m_cLastMsgError;
Blank();
// Evita che un errore segnalato alla Blank, ad esempio link fallito, sovrascriva l'errore di accesso bloccato
m_cLastMsgError = o_cLastMsgError;
}
return l_bResult;
}
public boolean CanEdit() {
return CanEdit(GetCurrentState());
}
public boolean CanEdit(String p_cState) {
boolean l_bResult = true;
ResetErrorMessage();
l_bResult = l_bResult && BRCanEdit();
return l_bResult;
}
public boolean CanDelete() {
boolean l_bResult;
l_bResult = true;
ResetErrorMessage();
l_bResult = l_bResult && BRCanDelete();
return l_bResult;
}
public boolean CanAdd() {
return CanAdd(GetCurrentState());
}
public boolean CanAdd(String p_cState) {
boolean l_bResult = true;
ResetErrorMessage();
l_bResult = l_bResult && BRCanAdd();
return l_bResult;
}
void BlankAutonumberAndTransactionVars() {
// Inizializzazione dei progressivi
// Inizializzazione delle variabili per DependsOn
o_code = 0;
o_modifyPassword = 0;
o_pwd1 = "";
o_pwd2 = "";
o_pwddaysduration_group = 0;
o_pwddaysduration = 0;
o_pwdciclicity_groups = 0;
o_pwdciclicity = 0;
o_pwdcaptchalevel_group = 0;
o_captchalevel = 0;
o_selected_group = 0;
o_companies = "";
o_UFENABLEAZI = "";
// Inizializzazione delle variabili per la gestione dello storno delle operazioni di saldo
}
public String GetContext() {
return GetContext(true);
}
public String GetContext(boolean p_bGetChildren) {
Properties p;
p = new Properties();
GetContext(p_bGetChildren,p);
return CPLib.ToProperties(p);
}
public void GetContext(java.util.Properties p_oProperties) {
GetContext(true,p_oProperties);
}
public void GetContext(boolean p_bGetChildren,java.util.Properties p) {
CPLib.PutProperty(p,"code",w_code,0);
CPLib.PutProperty(p,"fullname",w_fullname,0);
CPLib.PutProperty(p,"name",w_name,0);
CPLib.PutProperty(p,"accesstype_human",w_accesstype_human,0);
CPLib.PutProperty(p,"accesstype_service",w_accesstype_service,0);
CPLib.PutProperty(p,"accesstype_machine",w_accesstype_machine,0);
CPLib.PutProperty(p,"pwdcomplexity",w_pwdcomplexity,0);
CPLib.PutProperty(p,"forcepwdchange",w_forcepwdchange,0);
CPLib.PutProperty(p,"enabled",w_enabled,0);
CPLib.PutProperty(p,"language",w_language,0);
CPLib.PutProperty(p,"decimalseparator",w_decimalseparator,0);
CPLib.PutProperty(p,"thousandseparator",w_thousandseparator,0);
CPLib.PutProperty(p,"datepattern",w_datepattern,0);
CPLib.PutProperty(p,"datetimepattern",w_datetimepattern,0);
CPLib.PutProperty(p,"pwddaysduration",w_pwddaysduration,0);
CPLib.PutProperty(p,"pwdciclicity",w_pwdciclicity,0);
CPLib.PutProperty(p,"captchalevel",w_captchalevel,0);
CPLib.PutProperty(p,"datestart",w_datestart,0);
CPLib.PutProperty(p,"datestop",w_datestop,0);
CPLib.PutProperty(p,"failedlogins",w_failedlogins,0);
CPLib.PutProperty(p,"lastfailedlogin",w_lastfailedlogin,0);
CPLib.PutProperty(p,"lastsuccessfullogin",w_lastsuccessfullogin,0);
CPLib.PutProperty(p,"pwdcreate",w_pwdcreate,0);
CPLib.PutProperty(p,"printserver",w_printserver,0);
CPLib.PutProperty(p,"createdwhen",w_createdwhen,0);
CPLib.PutProperty(p,"usesiarlicense",w_usesiarlicense,0);
CPLib.PutProperty(p,"companies",w_companies,0);
CPLib.PutProperty(p,"modifyPassword",w_modifyPassword,0);
CPLib.PutProperty(p,"pwd1",w_pwd1,0);
CPLib.PutProperty(p,"calcomplex",w_calcomplex,0);
CPLib.PutProperty(p,"pwdratecause",w_pwdratecause,0);
CPLib.PutProperty(p,"pwd2",w_pwd2,0);
CPLib.PutProperty(p,"pwdcomplexity_group",w_pwdcomplexity_group,0);
CPLib.PutProperty(p,"pwdcomplexity_reqired",w_pwdcomplexity_reqired,0);
CPLib.PutProperty(p,"language_name",w_language_name,0);
CPLib.PutProperty(p,"pwddaysduration_group",w_pwddaysduration_group,0);
CPLib.PutProperty(p,"pwdciclicity_groups",w_pwdciclicity_groups,0);
CPLib.PutProperty(p,"pwdcaptchalevel_group",w_pwdcaptchalevel_group,0);
CPLib.PutProperty(p,"pwddaysduration_applied",w_pwddaysduration_applied,0);
CPLib.PutProperty(p,"pwdciclicity_applied",w_pwdciclicity_applied,0);
CPLib.PutProperty(p,"pwdcaptchalevel_applied",w_pwdcaptchalevel_applied,0);
CPLib.PutProperty(p,"init_code",w_init_code,0);
CPLib.PutProperty(p,"pwd_modified",w_pwd_modified,0);
CPLib.PutProperty(p,"IAR_LICENSE_VALID",w_IAR_LICENSE_VALID,0);
CPLib.PutProperty(p,"IAR_LICENSES",w_IAR_LICENSES,0);
CPLib.PutProperty(p,"IAR_USED",w_IAR_USED,0);
CPLib.PutProperty(p,"IAR_AVAILABLE",w_IAR_AVAILABLE,0);
CPLib.PutProperty(p,"selected_group",w_selected_group,0);
CPLib.PutProperty(p,"g_OTPisActive",w_g_OTPisActive,0);
CPLib.PutProperty(p,"otp",w_otp,0);
CPLib.PutProperty(p,"UFENABLEAZI",w_UFENABLEAZI,0);
CPLib.PutProperty(p,"pwd1_view",w_pwd1_view,0);
CPLib.PutProperty(p,"pwd2_view",w_pwd2_view,0);
if (p_bGetChildren) {
if (spadministration_usersgroups.IsUpdated()) {
m_cWv_spadministration_usersgroups = spadministration_usersgroups.GetContext();
}
CPLib.PutProperty(p,"m_cWv_spadministration_usersgroups",m_cWv_spadministration_usersgroups,0);
}
if (p_bGetChildren) {
if (spadministration_ssomap_child.IsUpdated()) {
m_cWv_spadministration_ssomap_child = spadministration_ssomap_child.GetContext();
}
CPLib.PutProperty(p,"m_cWv_spadministration_ssomap_child",m_cWv_spadministration_ssomap_child,0);
}
if (p_bGetChildren) {
if (spadministration_historypwd.IsUpdated()) {
m_cWv_spadministration_historypwd = spadministration_historypwd.GetContext();
}
CPLib.PutProperty(p,"m_cWv_spadministration_historypwd",m_cWv_spadministration_historypwd,0);
}
if (p_bGetChildren) {
if (spadministration_usercompanies.IsUpdated()) {
m_cWv_spadministration_usercompanies = spadministration_usercompanies.GetContext();
}
CPLib.PutProperty(p,"m_cWv_spadministration_usercompanies",m_cWv_spadministration_usercompanies,0);
}
if (p_bGetChildren) {
CPLib.PutProperty(p,m_MNTs);
}
SPExtenderLib.PutExtendedProperies(p,extendedFields);
CPLib.PutProperty(p,"m_bLoaded",m_bLoaded);
CPLib.PutProperty(p,"m_bUpdated",m_bUpdated);
CPLib.PutProperty(p,"m_cOldCPCCCHK",m_cOldCPCCCHK);
CPLib.PutProperty(p,"m_cPrvsStt",m_cPreviousState);
}
public String i_PrimaryKey() {
return PrimaryKey(this);
}
public static String PrimaryKey(Caller p_Caller) {
return "cpusers"+"\\"+CPLib.ToCPStr(p_Caller.GetNumber("code","N",9,0));
}
public List<List<String>> AutonumDefinition() {
return StaticAutonumDefinition();
}
public static List<List<String>> StaticAutonumDefinition() {
List<List<String>> autonums;
autonums = new ArrayList<List<String>>();
List<String> oneAutoNum;
return autonums;
}
public boolean ChildExists_spadministration_usersgroups() {
if (spadministration_usersgroups.IsUpdated() || (CPLib.IsUpdated(m_cWv_spadministration_usersgroups) || CPLib.IsLoaded(m_cWv_spadministration_usersgroups))) {
return true;
} else if (m_bLoaded && ! (spadministration_usersgroups.m_bLoaded)) {
spadministration_usersgroups.Blank();
spadministration_usersgroups.w_usercode = w_code;
spadministration_usersgroups.Load();
}
return spadministration_usersgroups.m_bLoaded;
}
public void CtxLoad_spadministration_usersgroups() {
if ( ! (spadministration_usersgroups.m_lCtxLoaded)) {
spadministration_usersgroups.Blank();
}
spadministration_usersgroups.m_lCtxLoaded = true;
if ( ! (spadministration_usersgroups.IsUpdated())) {
if (CPLib.IsUpdated(m_cWv_spadministration_usersgroups) || CPLib.IsLoaded(m_cWv_spadministration_usersgroups)) {
spadministration_usersgroups.SetFromContext(m_cWv_spadministration_usersgroups);
m_cWv_spadministration_usersgroups = "_not_empty_";
} else {
if (m_bLoaded && ! (spadministration_usersgroups.m_bLoaded)) {
spadministration_usersgroups.Blank();
spadministration_usersgroups.w_usercode = w_code;
spadministration_usersgroups.Load();
if ( ! (spadministration_usersgroups.m_bLoaded)) {
spadministration_usersgroups.Initialize();
spadministration_usersgroups.SetUpdated();
}
CopyWorkVar(this,spadministration_usersgroups,new String[]{"selected_group"},new String[]{"selected_group"},false);
} else if ( ! (m_bLoaded)) {
CopyWorkVar(this,spadministration_usersgroups,new String[]{"selected_group"},new String[]{"selected_group"},true);
}
}
}
}
public boolean ChildExists_spadministration_ssomap_child() {
if (spadministration_ssomap_child.IsUpdated() || (CPLib.IsUpdated(m_cWv_spadministration_ssomap_child) || CPLib.IsLoaded(m_cWv_spadministration_ssomap_child))) {
return true;
} else if (m_bLoaded && ! (spadministration_ssomap_child.m_bLoaded)) {
spadministration_ssomap_child.Blank();
spadministration_ssomap_child.w_userid = w_code;
spadministration_ssomap_child.Load();
}
return spadministration_ssomap_child.m_bLoaded;
}
public void CtxLoad_spadministration_ssomap_child() {
if ( ! (spadministration_ssomap_child.m_lCtxLoaded)) {
spadministration_ssomap_child.Blank();
}
spadministration_ssomap_child.m_lCtxLoaded = true;
if ( ! (spadministration_ssomap_child.IsUpdated())) {
if (CPLib.IsUpdated(m_cWv_spadministration_ssomap_child) || CPLib.IsLoaded(m_cWv_spadministration_ssomap_child)) {
spadministration_ssomap_child.SetFromContext(m_cWv_spadministration_ssomap_child);
m_cWv_spadministration_ssomap_child = "_not_empty_";
} else {
if (m_bLoaded && ! (spadministration_ssomap_child.m_bLoaded)) {
spadministration_ssomap_child.Blank();
spadministration_ssomap_child.w_userid = w_code;
spadministration_ssomap_child.Load();
if ( ! (spadministration_ssomap_child.m_bLoaded)) {
spadministration_ssomap_child.Initialize();
spadministration_ssomap_child.SetUpdated();
}
}
}
}
}
public boolean ChildExists_spadministration_historypwd() {
if (spadministration_historypwd.IsUpdated() || (CPLib.IsUpdated(m_cWv_spadministration_historypwd) || CPLib.IsLoaded(m_cWv_spadministration_historypwd))) {
return true;
} else if (m_bLoaded && ! (spadministration_historypwd.m_bLoaded)) {
spadministration_historypwd.Blank();
spadministration_historypwd.w_code = w_code;
spadministration_historypwd.Load();
}
return spadministration_historypwd.m_bLoaded;
}
public void CtxLoad_spadministration_historypwd() {
if ( ! (spadministration_historypwd.m_lCtxLoaded)) {
spadministration_historypwd.Blank();
}
spadministration_historypwd.m_lCtxLoaded = true;
if ( ! (spadministration_historypwd.IsUpdated())) {
if (CPLib.IsUpdated(m_cWv_spadministration_historypwd) || CPLib.IsLoaded(m_cWv_spadministration_historypwd)) {
spadministration_historypwd.SetFromContext(m_cWv_spadministration_historypwd);
m_cWv_spadministration_historypwd = "_not_empty_";
} else {
if (m_bLoaded && ! (spadministration_historypwd.m_bLoaded)) {
spadministration_historypwd.Blank();
spadministration_historypwd.w_code = w_code;
spadministration_historypwd.Load();
if ( ! (spadministration_historypwd.m_bLoaded)) {
spadministration_historypwd.Initialize();
spadministration_historypwd.SetUpdated();
}
}
}
}
}
public boolean ChildExists_spadministration_usercompanies() {
if (spadministration_usercompanies.IsUpdated() || (CPLib.IsUpdated(m_cWv_spadministration_usercompanies) || CPLib.IsLoaded(m_cWv_spadministration_usercompanies))) {
return true;
} else if (m_bLoaded && ! (spadministration_usercompanies.m_bLoaded)) {
spadministration_usercompanies.Blank();
spadministration_usercompanies.w_usercode = w_code;
spadministration_usercompanies.Load();
}
return spadministration_usercompanies.m_bLoaded;
}
public void CtxLoad_spadministration_usercompanies() {
if ( ! (spadministration_usercompanies.m_lCtxLoaded)) {
spadministration_usercompanies.Blank();
}
spadministration_usercompanies.m_lCtxLoaded = true;
if ( ! (spadministration_usercompanies.IsUpdated())) {
if (CPLib.IsUpdated(m_cWv_spadministration_usercompanies) || CPLib.IsLoaded(m_cWv_spadministration_usercompanies)) {
spadministration_usercompanies.SetFromContext(m_cWv_spadministration_usercompanies);
m_cWv_spadministration_usercompanies = "_not_empty_";
} else {
if (m_bLoaded && ! (spadministration_usercompanies.m_bLoaded)) {
spadministration_usercompanies.Blank();
spadministration_usercompanies.w_usercode = w_code;
spadministration_usercompanies.Load();
if ( ! (spadministration_usercompanies.m_bLoaded)) {
spadministration_usercompanies.Initialize();
spadministration_usercompanies.SetUpdated();
}
}
}
}
}
CallerBRImpl GetChild(String p_cName) {
if (CPLib.eq(p_cName,"spadministration_usersgroups")) {
CtxLoad_spadministration_usersgroups();
return spadministration_usersgroups;
}
if (CPLib.eq(p_cName,"spadministration_ssomap_child")) {
CtxLoad_spadministration_ssomap_child();
return spadministration_ssomap_child;
}
if (CPLib.eq(p_cName,"spadministration_historypwd")) {
CtxLoad_spadministration_historypwd();
return spadministration_historypwd;
}
if (CPLib.eq(p_cName,"spadministration_usercompanies")) {
CtxLoad_spadministration_usercompanies();
return spadministration_usercompanies;
}
return GetMNTChild(false,m_MNTs,p_cName);
}
// * --- Area Manuale = BL - Methods
// * --- Fine Area Manuale
}