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

320 lines
11 KiB
Java

import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.zucchetti.sitepainter.SPPrxycizer;
@com.zucchetti.sitepainter.EntityRoles({})
public class spaddsecurityrecord extends SPRoutineServlet implements SPInvokable {
public static String m_cEntityUid = "!*2c1a3fb6*!";
public class ServletStatus extends SPRoutineServletStatus {
}
public SPEntityGlobals getEntityGlobals() {
// Costanti globali dell' entita'
SPRoutineGlobals l_eg;
l_eg = new SPRoutineGlobals();
l_eg.name = "spaddsecurityrecord";
l_eg.hasProgressItem = false;
l_eg.isPublic = false;
l_eg.m_nCallableFrom = 1;
return l_eg;
}
public void doProcess(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException {
// Inizializzazione delle variabili della classe globale di stato
ServletStatus status;
status = new ServletStatus();
status.containing = this;
SPParameterSource source;
source = SPLib.GetSource(request);
if ( ! (EnterServlet(status,source,request,response))) {
return;
}
Begin(status);
}
boolean NeedsFetchPage(ServletStatus status) {
return false;
}
private void FetchPage(ServletStatus status) throws IOException {
SPLib.SetContentType(status.response);
SPLib.NoCache(status.response);
status.out = status.response.getWriter();
String l_cJsUid;
status.out.println(
"<!doctype html>" +
"");
status.out.println(
"<html>" +
"");
status.out.println(
"<head>" +
"");
l_cJsUid = SPPrxycizer.proxycizedPath("stdFunctions.js");
status.out.println(
"<script src='../"+l_cJsUid+"' type='text/javascript'>" +
"</script>" +
"");
l_cJsUid = SPPrxycizer.proxycizedPath("controls.js");
status.out.println(
"<script src='../"+l_cJsUid+"' type='text/javascript'>" +
"</script>" +
"");
IncludeJS(status);
status.out.println(
"<title>" +
""+status.context.Translate("MSG_ROUTINE_WIND")+"" +
"</title>" +
"");
status.out.println(
"</head>" +
"");
status.out.println(
"<body>" +
"");
status.out.println(
"<form name='RoutineParms' method='POST' action='"+status.m_cURL+"'>" +
"");
status.out.println(
"<input name='m_cAction' type='hidden' value="+SPLib.ToHTMLValue("execute","C",0,0)+">" +
"");
status.out.println(
"<input name='m_cAtExit' type='hidden' value="+SPLib.ToHTMLValue(status.m_cAtExit,"C",0,0)+">" +
"");
status.out.println(
"<input name='m_cWv' type='hidden' value=''>" +
"");
status.out.println(
"</form>" +
"");
status.out.println(
"<p>" +
""+status.context.Translate("MSG_ROUTINE_WAIT")+"" +
"</p>" +
"");
status.out.println(
"<script type='text/javascript'>" +
"");
status.out.println("AppletTag('Wv','Trs');");
status.out.println("var l_oWv = InitWvApplet();");
status.out.println("var l_oWnd;");
status.out.println("var l_cV;");
if (SPLib.HasRegionalSettings(status.context)) {
status.out.println("SetWindowObject(false);");
} else {
status.out.println("SetWindowObject(true);");
}
status.out.println("l_oWv.setValue('m_cID','"+com.zucchetti.PortalStudio.JSPLib.cmdHash("routine,spaddsecurityrecord",((SPContext)status.context).session)+"')");
status.out.println("document.RoutineParms.m_cWv.value=WvApplet().asString();");
status.out.println("document.RoutineParms.submit();");
status.out.println(
"</script>" +
"");
status.out.println(
"</body>" +
"");
status.out.println(
"</html>" +
"");
}
private void ExecuteRoutine(ServletStatus status) throws IOException {
spaddsecurityrecordR Rcalled;
Rcalled = new spaddsecurityrecordR(status.context,status);
if (CPLib.ne(status.m_cAction,"executeAsync")) {
ExecuteWorkflowStartingScript(status,Rcalled);
status.forwardedto = Rcalled.Run();
if (Rcalled.m_bError) {
status.m_bError = true;
status.m_cErrMsg = Rcalled.m_cLastMsgError;
} else if ( ! (CPLib.Empty(status.m_cFaultTrace))) {
status.m_bError = true;
status.m_cErrMsg = status.m_cFaultTrace;
}
if (CPLib.eqr(CPLib.Left(status.m_cAtExit,8),"workflow")) {
ExitToWorkflow(status);
}
if (Forward.IsForwarded(status.forwardedto)) {
if (CPLib.IsNull(status.forwardedto.GetParameterString("m_cAtExit",null))) {
status.forwardedto.SetParameter("m_cAtExit",status.m_cAtExit);
}
SPLib.ForwardTo(status.forwardedto,servletContext,status.request,status.response);
return;
}
}
BringBackPage(status,Rcalled);
}
CallerWithObjs NewRoutine(SPServletStatus status,Caller dataFromClient) {
return new spaddsecurityrecordR(status.context,dataFromClient);
}
protected void BringBackPage(ServletStatus status,spaddsecurityrecordR Rcalled) throws IOException {
String l_cErrMsg;
String msg;
msg = status.context.Translate("MSG_END_ROUTINE");
SPLib.SetContentType(status.response);
SPLib.NoCache(status.response);
status.out = status.response.getWriter();
String l_cJsUid;
status.out.println(
"<!doctype html>" +
"");
status.out.println(
"<html>" +
"");
status.out.println(
"<head>" +
"");
status.out.println(
"<title>" +
""+status.context.Translate("MSG_ROUTINE_WIND")+"" +
"</title>" +
"");
l_cJsUid = SPPrxycizer.proxycizedPath("stdFunctions.js");
status.out.println(
"<script src='../"+l_cJsUid+"' type='text/javascript'>" +
"</script>" +
"");
l_cJsUid = SPPrxycizer.proxycizedPath("controls.js");
status.out.println(
"<script src='../"+l_cJsUid+"' type='text/javascript'>" +
"</script>" +
"");
status.out.println(
"<link type='text/css' rel='STYLESHEET' href='../"+status.m_cTheme+"/formPage.css'>" +
"");
status.out.println(
"</head>" +
"");
if (status.m_bError) {
msg = status.context.Translate("MSG_END_ROUTINE_WITH_MSG");
status.out.println(
"<body onkeydown='window.ManageKeys(event,false,false)'>" +
"");
} else {
status.out.println(
"<body>" +
"");
}
status.out.println(
"<p class='TabLabel' style='margin:0'>" +
""+msg+"" +
"</p>" +
"");
if (status.m_bError) {
status.out.println(
"<script type='text/javascript'>" +
"");
l_cErrMsg = status.context.Translate(com.zucchetti.sitepainter.Library.explicativeErrorMessage(status.m_cErrMsg));
status.out.println("detailed_database_error="+SPLib.ToJSValue(l_cErrMsg,"C",0,0)+";");
status.out.println("m_cBrowser=" + SPLib.ToJSValue(status.m_cBrowser,"C",0,0)+ ";");
status.out.println(
"</script>" +
"");
}
if (CPLib.eqr(status.m_cAction,"executeAsync")) {
status.out.println(
"<!--" +
"");
status.out.println("Function return value:"+com.zucchetti.sitepainter.Library.ToHTMLEuro(CPLib.ToProperties(Rcalled.RunAsync()))+"");
status.out.println(
" -->" +
"");
} else {
if (status.m_bApplet) {
status.out.println(
"<!--" +
"");
if ( ! (CPLib.Empty(Rcalled.m_cLastMsgError))) {
CPTokenSource ts;
ts = new CPTokenSource(status.context.Translate(com.zucchetti.sitepainter.Library.explicativeErrorMessage(Rcalled.m_cLastMsgError)),"\n");
while (ts.HasMoreTokens()) {
status.out.println("Error message:"+com.zucchetti.sitepainter.Library.ToHTMLEuro(ts.NextToken())+"");
}
}
if ( ! (CPLib.Empty(status.m_cFaultTrace))) {
status.out.println("Fault:["+SPLib.ToJSValue(status.context.Translate("MSG_ROUTINE_FAULTED","spaddsecurityrecord"),"C",0,0)+","+SPLib.ToJSValue(status.m_cFaultTrace,"C",0,0)+"]");
if (CPLib.Empty(Rcalled.m_cLastMsgError) && ! (status.m_bApplet)) {
status.out.println("Error message:"+com.zucchetti.sitepainter.Library.ToHTMLEuro(status.m_cFaultTrace)+"");
}
}
status.PrintMutableParameters();
status.out.println(
" -->" +
"");
} else {
status.out.println(
"<script type='text/javascript'>" +
"");
status.out.println("f=NameForCaller();");
status.out.println("if (IsWndAccessible(window[f])) {");
status.out.println("if (Ne(typeof(window[f].DisplayErrorMessage),'undefined') && Ne(typeof(window[f].CalledBatchEnd),'undefined')) {");
if (status.m_bError) {
l_cErrMsg = status.context.Translate(com.zucchetti.sitepainter.Library.explicativeErrorMessage(status.m_cErrMsg));
status.out.println("window[f].l_cErrorMsg="+SPLib.ToJSValue(l_cErrMsg,"C",0,0)+";");
status.out.println("window[f].DisplayErrorMessage();");
}
status.out.println("}");
status.out.println("CloseEnclosing();");
status.out.println("}");
status.out.println(
"</script>" +
"");
}
}
status.out.println(
"</body>" +
"");
status.out.println(
"</html>" +
"");
}
private void Begin(ServletStatus status) throws IOException {
if ( ! (CPLib.Empty(status.m_cBrowseName))) {
JSResultSet(status);
} else if ( ! (CPLib.Empty(status.m_cGlobalsToRead))) {
JSGlobals(status);
} else if (CPLib.eqr(status.m_cAction,"start") && NeedsFetchPage(status)) {
FetchPage(status);
} else if (CPLib.eqr(status.m_cAction,"execute") || CPLib.eqr(status.m_cAction,"start") || CPLib.eqr(status.m_cAction,"executeAsync")) {
ExecuteRoutine(status);
} else {
spaddsecurityrecordR Rcalled;
Rcalled = new spaddsecurityrecordR(status.context,status);
com.zucchetti.sitepainter.Logger l = com.zucchetti.sitepainter.Logger.getWarningLogger();
Rcalled.m_cLastMsgError = status.context.Translate("MSG_WRONG_ROUTINE_ACTION",status.m_cAction,"spaddsecurityrecord");
if ( ! (CPLib.IsNull(l))) {
l.log(Rcalled.m_cLastMsgError);
}
status.m_bError = true;
status.m_cErrMsg = Rcalled.m_cLastMsgError;
BringBackPage(status,Rcalled);
}
}
void IncludeJS(ServletStatus status) {
/* --- Area Manuale = UI - Include */
/* --- Fine Area Manuale */
}
// m_CallableNames inizializzato dal primo accesso a GetCallableNames
private static volatile String[] m_CallableNames;
public static String[] GetCallableNames() {
if (CPLib.IsNull(m_CallableNames)) {
java.util.Set building = new java.util.HashSet();
GetCallableNames(building);
m_CallableNames = CPLib.SetOfStringsAsArray(building);
}
return (String[])m_CallableNames.clone();
}
public static void GetCallableNames(java.util.Set callable) {
if (CPLib.IsNull(m_CallableNames)) {
// Il controllo in callable evita la ricorsione di una routine A che chiama routine B che chiama a sua volta A
if ( ! (callable.contains("spaddsecurityrecord"))) {
CPLib.AddToSet(callable,"spaddsecurityrecord");
spaddsecurityrecord.GetCallableNames(callable);
}
} else {
CPLib.AddStringsToSet(callable,m_CallableNames);
}
}
String[] RoutineIDChain() {
return GetCallableNames();
}
}