diff --git a/.gitignore b/.gitignore index 14c0d16..dc2d7ad 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,5 @@ /project/PrintLocalReport/obj/Debug/* /project/PrintLocalReport/obj/Release/* + +# Equa_Auth \ No newline at end of file diff --git a/project/Equa_Auth/Equa_Auth.Publish.xml b/project/Equa_Auth/Equa_Auth.Publish.xml new file mode 100644 index 0000000..76dca83 --- /dev/null +++ b/project/Equa_Auth/Equa_Auth.Publish.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/project/Equa_Auth/Equa_Auth.csproj b/project/Equa_Auth/Equa_Auth.csproj new file mode 100644 index 0000000..216e5ed --- /dev/null +++ b/project/Equa_Auth/Equa_Auth.csproj @@ -0,0 +1,130 @@ + + + + Debug + AnyCPU + + + 2.0 + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72} + {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} + Library + Properties + Equa_Auth + Equa_Auth + v4.0 + false + + + true + full + false + bin\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\ + + + prompt + 4 + true + true + Default Web Site/Equa_Auth + + + + + + + + + + + + + + + + + + + + + + + + + Web.config + + + Web.config + + + + + + LandingPage.aspx + ASPXCodeBehind + + + LandingPage.aspx + + + login.aspx + ASPXCodeBehind + + + login.aspx + + + + mod_login.ascx + ASPXCodeBehind + + + mod_login.ascx + + + + + {2872DCFE-8B46-43B2-BAA0-842A816A2DD5} + SteamWare + + + + + + + + + + + + False + True + 49869 + / + + + False + False + + + False + + + + + + \ No newline at end of file diff --git a/project/Equa_Auth/Equa_Auth.csproj.user b/project/Equa_Auth/Equa_Auth.csproj.user new file mode 100644 index 0000000..feb2074 --- /dev/null +++ b/project/Equa_Auth/Equa_Auth.csproj.user @@ -0,0 +1,27 @@ + + + + + + + login.aspx + CurrentPage + True + False + False + False + + + + + + + + + False + True + + + + + \ No newline at end of file diff --git a/project/Equa_Auth/LandingPage.aspx b/project/Equa_Auth/LandingPage.aspx new file mode 100644 index 0000000..8260cf4 --- /dev/null +++ b/project/Equa_Auth/LandingPage.aspx @@ -0,0 +1,15 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LandingPage.aspx.cs" Inherits="Equa_Auth.LandingPage" %> + + + + + + + +
+
+ Effettuata login utente... +
+
+ + diff --git a/project/Equa_Auth/LandingPage.aspx.cs b/project/Equa_Auth/LandingPage.aspx.cs new file mode 100644 index 0000000..927e320 --- /dev/null +++ b/project/Equa_Auth/LandingPage.aspx.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace Equa_Auth +{ + public partial class LandingPage : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + + } + } +} \ No newline at end of file diff --git a/project/Equa_Auth/LandingPage.aspx.designer.cs b/project/Equa_Auth/LandingPage.aspx.designer.cs new file mode 100644 index 0000000..005a166 --- /dev/null +++ b/project/Equa_Auth/LandingPage.aspx.designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Equa_Auth +{ + + + public partial class LandingPage + { + + /// + /// form1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + } +} diff --git a/project/Equa_Auth/Properties/AssemblyInfo.cs b/project/Equa_Auth/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..27cbaf8 --- /dev/null +++ b/project/Equa_Auth/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Equa_Auth")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Equa_Auth")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("076fbb63-2898-40d0-8694-f9c261dab2e7")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/project/Equa_Auth/Web.Debug.config b/project/Equa_Auth/Web.Debug.config new file mode 100644 index 0000000..2c6dd51 --- /dev/null +++ b/project/Equa_Auth/Web.Debug.config @@ -0,0 +1,30 @@ + + + + + + + + + + \ No newline at end of file diff --git a/project/Equa_Auth/Web.Release.config b/project/Equa_Auth/Web.Release.config new file mode 100644 index 0000000..4122d79 --- /dev/null +++ b/project/Equa_Auth/Web.Release.config @@ -0,0 +1,31 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/project/Equa_Auth/Web.config b/project/Equa_Auth/Web.config new file mode 100644 index 0000000..7c50b75 --- /dev/null +++ b/project/Equa_Auth/Web.config @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/project/Equa_Auth/WebUserControls/mod_login.ascx b/project/Equa_Auth/WebUserControls/mod_login.ascx new file mode 100644 index 0000000..0490870 --- /dev/null +++ b/project/Equa_Auth/WebUserControls/mod_login.ascx @@ -0,0 +1,54 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="mod_login.ascx.cs" Inherits="Equa_Auth.WebUserControls.mod_login" %> + + + + + + +
+ +
+ + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + +
+ +
+
+ + + + + + + +
+ +
+ +
diff --git a/project/Equa_Auth/WebUserControls/mod_login.ascx.cs b/project/Equa_Auth/WebUserControls/mod_login.ascx.cs new file mode 100644 index 0000000..d954a57 --- /dev/null +++ b/project/Equa_Auth/WebUserControls/mod_login.ascx.cs @@ -0,0 +1,246 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using SteamWare; + +namespace Equa_Auth.WebUserControls +{ + /// + /// classe gestione login e forzatura login + /// + public partial class mod_login : ApplicationUserControl + { + #region area protected/private + + #region area proprietà + + private SteamWare.loginMode _isForceUser = SteamWare.loginMode.normale; + + #endregion + + #region area metodi + + /// + /// imposta la modalità di login tra normale / forceUser + /// + private void setLoginMode() + { + if (_isForceUser == SteamWare.loginMode.forceUser) + { + pnlForceUser.Visible = true; + } + else + { + pnlForceUser.Visible = false; + } + } + + protected override void traduciObj() + { + lblPwd.Text = user_std.UtSn.Traduci("lblPwd"); + lblUser.Text = user_std.UtSn.Traduci("lblUser"); + lblDominio.Text = user_std.UtSn.Traduci("lblDominio"); + lblTitolo.Text = user_std.UtSn.Traduci("ForzaUtente"); + btnOk.Text = user_std.UtSn.Traduci("btnCommit"); + } + + /// + /// prova a verificare se l'utente sia ok x AD credentials + /// + private void AdLogin() + { + lblMessage.Text = "User not authenticated..."; + if (Page.User.Identity.IsAuthenticated) + { + //recupera user windows se c'è... + string ad_name = Page.User.Identity.Name; + string delimStr = "\\"; + char[] delimiter = delimStr.ToCharArray(); + string[] dom_user = ad_name.Split(delimiter, 2); + // salvo cookie! + string DeviceName = ""; + string IPv4 = ""; + string userAgent = ""; + try + { + userAgent = Request.UserAgent; + DeviceName = Request.UserHostName; + IPv4 = Request.UserHostName; + } + catch + { } + if (memLayer.ML.confReadBool("enableCookie")) + { + // elimino eventuali altri cookie x dominio/user/devName + DataWrap.DW.taAnagDev.delByDominioUserDeviceName(dom_user[0], dom_user[1], DeviceName); + // creo nuovo cookie + authProxy.createNewCookie(dom_user[0], dom_user[1], DeviceName, userAgent, IPv4, Page.Request.QueryString["AuthCookie"].ToString(), DateTime.Now.AddDays(memLayer.ML.confReadInt("cookieDayExp"))); + } + // loggo + SteamWare.logger.lg.scriviLog(string.Format("L'utente {0}/{1} ha effettuato il login correttamente", dom_user[0], dom_user[1]), SteamWare.tipoLog.INFO); + if (Login_ok != null) + { + Login_ok(this, new EventArgs()); + } + } + else + { + lblMessage.Text = user_std.UtSn.Traduci("AccessFail") + user_std.UtSn.Traduci("UsrNotAuth"); + SteamWare.logger.lg.scriviLog(String.Format("Accesso fallito, utente non autenticato"), SteamWare.tipoLog.WARNING); + if (Login_Error != null) + { + Login_Error(this, new EventArgs()); + } + } + } + + /// + /// effettua verifiche e se concesso permette di forzare l'accesso utente + /// + private void ForceUserIdentity() + { + if (Page.User.Identity.IsAuthenticated) + { + bool _allowForceUser = false; + try + { + _allowForceUser = SteamWare.memLayer.ML.confReadBool("_allowForceUser"); + } + catch + { + _allowForceUser = false; + } + if (_allowForceUser) + { + if (authKey.Text == "forzaInter") // verifica passphrase... + { + user_std _utente = new user_std(); + user_std.UtSn.isForcedUser = true; + bool fatto = _utente.startUpUtente(dominio.Text, user.Text); + if (fatto) + { + string _rigaLog = String.Format("User {0} has forced user identity ok: logged as \t {1}\\{2}", Page.User.Identity.Name, dominio.Text, user.Text); + SteamWare.logger.lg.scriviLog(_rigaLog, SteamWare.tipoLog.INFO); + if (Login_ok != null) + { + Login_ok(this, new EventArgs()); + } + } + } + else + { + lblMessage.Text = String.Format("{0}
key not allowed for operation!!! operation logged!!!", user_std.UtSn.Traduci("AccessFail")); + mandaEmail(_fromEmail, _adminEmail, "Attenzione: tentativo di accesso non autorizzato!", String.Format("Tentativo di forcing user non autorizzato!
L'utente {0} ha tentato di accedere a {1} forzando l'utente ma la sua key autorizzativa e' sbagliata...", Page.User.Identity.Name, user_std.UtSn.Traduci(SteamWare.memLayer.ML.confReadString("defaultApp")))); + string _rigaLog = String.Format("User {0}\t tried to force user - wrong password - he tried to log as \t {1}\\{2}", Page.User.Identity.Name, dominio.Text, user.Text); + SteamWare.logger.lg.scriviLog(_rigaLog, SteamWare.tipoLog.WARNING); + if (Login_Error != null) + { + Login_Error(this, new EventArgs()); + } + } + } + else + { + mandaEmail(_fromEmail, _adminEmail, "Attenzione: tentativo di accesso non autorizzato!", String.Format("Tentativo di forcing user non autorizzato!
L'utente {0} ha tentato di accedere a {1} forzando l'utente ma la funzione e' disabilitata...", Page.User.Identity.Name, user_std.UtSn.Traduci(SteamWare.memLayer.ML.confReadString("defaultApp")))); + string _rigaLog = String.Format("User {0}\t tried to force user - access disabled - he tried to log as \t {1}\\{2}", Page.User.Identity.Name, dominio.Text, user.Text); + SteamWare.logger.lg.scriviLog(_rigaLog, SteamWare.tipoLog.WARNING); + if (Login_Error != null) + { + Login_Error(this, new EventArgs()); + } + } + } + else + { + lblMessage.Text = string.Format("{0}
user not authenticated!
", user_std.UtSn.Traduci("AccessFail")); + if (Login_Error != null) + { + Login_Error(this, new EventArgs()); + } + string _rigaLog = String.Format("\t Someone tried to force user - real user: \t - not autenticated - \t tried to log as \t {0}\\{1}", dominio.Text, user.Text); + SteamWare.logger.lg.scriviLog(_rigaLog, SteamWare.tipoLog.WARNING); + } + } + + protected void btnOk_Click(object sender, EventArgs e) + { + ForceUserIdentity(); + } + + #endregion + + #endregion + + #region area public + + #region eventi pubblici esposti + + public event EventHandler Login_ok; + public event EventHandler Login_Error; + + #endregion + + #region area proprietà + + /// + /// modalità funzionamento controllo tra normale (ActiveDirectory e user auth di default) e forceUser + /// + public SteamWare.loginMode modoLogin + { + get + { + return _isForceUser; + } + set + { + _isForceUser = value; + } + } + + #endregion + + + /// + /// avvio pagina + /// + protected override void Page_Load(object sender, EventArgs e) + { + //carico da web.config i default values + loadDefaultsWebConfig(); + // procedo... + setLoginMode(); + Session.RemoveAll(); + if (_isForceUser == SteamWare.loginMode.normale) + { + bool cookieLogin = false; + if (memLayer.ML.confReadBool("enableCookie")) + { + //string cookieName = memLayer.ML.StringSessionObj("AuthCookie"); + //if (cookieName == "") + //{ + // cookieName = memLayer.ML.confReadString("AuthCookie"); + //} + string cookieName = Page.Request.QueryString["AuthCookie"].ToString(); + cookieLogin = authProxy.tryAuthByCookie(cookieName); + } + if (!cookieLogin) + { + AdLogin(); + } + else + { + if (Login_ok != null) + { + Login_ok(this, new EventArgs()); + } + } + } + } + + #endregion + + } +} \ No newline at end of file diff --git a/project/Equa_Auth/WebUserControls/mod_login.ascx.designer.cs b/project/Equa_Auth/WebUserControls/mod_login.ascx.designer.cs new file mode 100644 index 0000000..19f7d9a --- /dev/null +++ b/project/Equa_Auth/WebUserControls/mod_login.ascx.designer.cs @@ -0,0 +1,114 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Equa_Auth.WebUserControls { + + + public partial class mod_login { + + /// + /// pnlForceUser control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Panel pnlForceUser; + + /// + /// lblTitolo control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblTitolo; + + /// + /// lblPwd control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblPwd; + + /// + /// authKey control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox authKey; + + /// + /// lblDominio control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblDominio; + + /// + /// dominio control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox dominio; + + /// + /// lblUser control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblUser; + + /// + /// user control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.TextBox user; + + /// + /// btnOk control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Button btnOk; + + /// + /// lblMessage control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.Label lblMessage; + + /// + /// HypLinkSSO control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.WebControls.HyperLink HypLinkSSO; + } +} diff --git a/project/Equa_Auth/bin/Equa_Auth.dll b/project/Equa_Auth/bin/Equa_Auth.dll new file mode 100644 index 0000000..b070441 Binary files /dev/null and b/project/Equa_Auth/bin/Equa_Auth.dll differ diff --git a/project/Equa_Auth/bin/Flesk.ViewState.dll b/project/Equa_Auth/bin/Flesk.ViewState.dll new file mode 100644 index 0000000..862a6ac Binary files /dev/null and b/project/Equa_Auth/bin/Flesk.ViewState.dll differ diff --git a/project/Equa_Auth/bin/ICSharpCode.SharpZipLib.dll b/project/Equa_Auth/bin/ICSharpCode.SharpZipLib.dll new file mode 100644 index 0000000..fe643eb Binary files /dev/null and b/project/Equa_Auth/bin/ICSharpCode.SharpZipLib.dll differ diff --git a/project/Equa_Auth/bin/SteamWare.XML b/project/Equa_Auth/bin/SteamWare.XML new file mode 100644 index 0000000..adebac5 --- /dev/null +++ b/project/Equa_Auth/bin/SteamWare.XML @@ -0,0 +1,3690 @@ + + + + SteamWare + + + + + Summary description for selettori + + + + + + + + + + + + + + + carica i dati CdC se in cache o da TableAdapter + + + + + restituisce l'elenco di tutti i cdc + + + + + + restituisce l'elenco di tutti i cdc della gerarchia dell'utente + + + + + + helper x raccolta dati di diagnostica + + + + + calcolo uptime in formato timespan + + + + + + elenco devices USB + + + + + + registra esito ping ad un dato IP/hostname + + IPaddress / host name. + + + + restituisce contenuto di una pagina web (per testing) + + + + + + + uptime macchina (formattato) + + + + + restituisce elenco dischi con utilizzo (formattato) + + + + + + mostra elenco interfacce di rete e loro conf + + + + + fornisce elenco dispositivi USB collegati + + + + + + + elenco porte seriali + + + + + classe definizione info oggetti USB + + + + + Represents a strongly typed in-memory cache of data. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + tipo di chart (2D/3D) + + + + + 2D + + + + + 3D + + + + + web control che disegna un grafico a torta + + + + + altezza di default + + + + + larghezza di default + + + + + padding di default + + + + + legenda visibile di default + + + + + soglia minima 5% per mostrare il dato + + + + + renderizza il contenuto + + + + + + disegna la leggenda html laterale... + + + + + + disegna piechart 2-dim + + + + + + disegna piechart 3d ellittica + + + + + + traduce la stringa colore in oggetto colore + + + + + + + converte intero a stringa esadecimale + + + + + + + converte stringa esadecimale a intero + + + + + + + tipo di grafico (2D/3D) + + + + + ampiezza del grafico + + + + + altezza del grafico + + + + + padding grafico/container + + + + + boolean se si debba mostrale la legenda + + + + + percentuale minima da mostrare + + + + + serie di dati (tipizzata) ma mostrare + + + + + testo associato al controllo + + + + + layer gestione vari tipi di memoria: cache, session... + + + + + lettore file configurazione + + + + + oggetto singleton x accesso al layer di memoria + + + + + classe gestione accessi a Session, cache, viewstate, configuration... + + + + + legge dalla config un valore bool + + + + + + + legge dalla config un valore string + + + + + + + legge dalla config un valore int + + + + + + + carica dalla sessione un dato di tipo object generico + + + + + + + carica dalla sessione un dato di tipo boolean (se vuoto false) + + + + + + + carica dalla sessione un dato di tipo string + + + + + + + carica dalla sessione un dato di tipo long + + + + + + + carica dalla sessione un dato di tipo int + + + + + + + inserisce in session un valore + + + + + + + inserisce in session un valore + + nome della variabile + valore associato + indica se debba sopravvivere ad update (inserita in elenco valSess2SurvUpd) + + + + + svuota una variabile dalla session + + + + + + restituisce true se è presente in session l'oggetto richiesto + + + + + + + restituisco un valore da cookie + + + + + + + salvo un valore come cookie + + + + + + + + salvo un valore come cookie con expiry date esplicita + + + + + + + + + elimina un cookie + + + + + + carica dalla Cache un dato di tipo object generico + + + + + + + carica dalla Cachee un dato di tipo boolean (se vuoto false) + + + + + + + carica dalla Cachee un dato di tipo string + + + + + + + inserisce in Cache un valore + + nome della variabile + valore + + + + inserisce in Cache un valore e su richiesta regitra tra le tab in cache da svuotare on update.. + + nome della variabile + valore + da registrare come tabella da svuotare on update? + + + + + svuota una variabile dalla Cache + + + + + + restituisce true se è presente in cache l'oggetto richiesto + + + + + + + aggiunge la stringa corrente nel dictionary delle tabelle messe in cache e da aggiornare su comando update + + + + + + aggiunge la stringa corrente nel dictionary delle tabelle messe in session che vanno preservate da comando update (es: oggetto selezionato...) + + + + + + + forza lo svuotamento delel tabelle indicate come in cache... + + + + + elenco dictionary delle tab in cache da aggiornare con update svuotando da cache... + + + + + elenco dictionary dei valori in session da NON aggiornare con update... + + + + + Represents a strongly typed in-memory cache of data. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + classe di gestione dei db x creazione/update alla versione richiesta + + + + + oggetto connessione + + + + + stringa di connessione + + + + + dir che contiene gli script da eseguire... + + + + + formato del file SQL impiegato (nel senso di formato come iFormat del tipo "App_{0:0000}.sql" --> da App_0001.sql ad App_9999.sql) + + + + + avvio protected della classe + + + + + esegue gli script di sql di update dal file richiesto + + + + + + + + Aggiorna il db eseguendo gli script dalla versione di partenza a quella di arrivo + + NB: per definizione rev 0 = resetta svuotando DB, rev 1 crea tabelle iniziali, rev 2 inserisce i valori di default + + nome DB di cui cercare script + revisione di partenza + revisione di arrivo + timeout max per ogni operazione + + + + + verifica se il db indicato esiste o meno... + + + + + + + + crea il db indicato con i parametri di connessione specificati + + + + + + + + classe gestione auth + + + + + Tenta autologin con autoriconoscimento Dominio/username by cookie + + + + + + + crea un nuovo record device e salva un nuovo cookie su db x il dispositivo e l'utente richiesti + + + + + + + + + + + + rimuove device da DB e toglie il cookie + + secret associata al device + + + + + rimuove device da DB e toglie il cookie + + Nome Device + + + + + imuove device da DB e toglie il cookie + + + + + + + + classe gestione utente: auth e permission/ruoli - versione GENERICA + + + + + cancella da session l'utente + + + + + carica la riga dati utente + + + + + carica la riga dati utente da SOLO USERNAME + + + + + Carica la tabella diritti dell'utente da db e salva in session + + + + + Carica la tabella diritti dell'utente da db e salva in session + + + + + Carica la tabella diritti dell'utente da db e salva in session SOLO per il CDC indicato + + + + + + Effettua setup dei permessi una volta salvati i diritti + + + + + imposta la lingua utente dal valore della riga DB + + + + + costruisce la mappa del sito per l'utente + + + + + formatta un nodo in modo corretto dai dati indicati + + + + + + + + + inizializza la gestione utente... + + + + + traduce il lemma nella lingua dell'user corrente + + + + + + + traduce il lemma in inglese + + + + + + + traduce il lemma nella lingua richiesta + + + + + + + traduce il lemma nella lingua dell'user e in inglese tra parentesi + + + + + + + LogOff utente con reset dati + + + + + + + + Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati + + + + + + + + Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati + + + + + + + + controllo utente/pwd da tab + + + + + + + + Procedura da chiamare DOPO aver messo in session i dati utente/dominio x caricare gli altri dati CON I DIRITTI SOLO per il CDC indicato + + + + + + + + + salva dati accessori quali il cdc dell'utente... + + + + + verifica nella tab diritti se l'utente abbia il right richiesto e fornisce bool in risposta + + + + + + + verifica le credenziali AD dell'utente... + + + + + + + + conta il numero di permessi utente per la pagina attuale e restituisce true se ne trova almeno 1 + + + + + + + verifica se il permesso utente per la pagina attuale sia write per almeno 1 diritto assegnato (restituisce true se ne trova almeno 1 con permessi2funzione.readwrite='S') + + + + + + + ricarica e ri-traduce la mappa sito per l'utente... + + + + + retituisce il nome apgina dai permessi utente + + + + + + restituisce cognome e nome di un utente dato username... + + username + + + + + restituisce cognome e nome di un utente data la matricola... + + matricola + + + + + restituisce cognome e nome di un utente dato username e dominio... + + username + dominio + + + + + restituisce cognome e nome di un utente dato username... + + username + + + + + restituisce cognome e nome di un utente dato username e dominio... + + username + dominio + + + + + restituisce cognome e nome di un utente dato username eventualmente comprensivo di dominio... + + {dominio\}userName + + + + + restituisce l'elenco delle funzioni abilitate dato modulo ed username partendo dalla radice dell'albero dei diritti + + + + + + + + restituisce l'elenco degli utenti dato i diritti che devono avere come modulo/funzione + + nome del modulo + nome della funzione + tabella utenti + + + + restituisce l'elenco delle email degli utenti dato i diritti che devono avere come modulo/funzione + + nome del modulo + nome della funzione + stringa di email separate da "," + + + + crea un nuovo utente con le credenziali indicate + + + + + + + + + + + + assegna il diritto all'utente indicato + + + + + + + + + + + toglier il diritto all'utente indicato + + + + + + + + + + + restituisce la tabella (per utente corrente) dei CDC abilitati per l'applicazione attuale da sessione (se non c'è salva...) + + modulo di cui si testano i diritti + + + + + versione statica della classe utente come singleton UtenTeSignletoN + + + + + restituisce la tabella diritti da session + + + + + tabella dei permessi utente + + + + + tabella dei permessi utente di tipo "WRITE" enabled + + + + + retituisce username AD + + + + + oggetto utente con metodi get/set + + + + + oggetto password con metodi get/set + + + + + oggetto dominio con metodi get/set + + + + + oggetto modulo (applicazione) con metodi get/set + + + + + oggetto lingua utente con metodi get/set + + + + + oggetto runMode corrente + + + + + restituisce true se utente forzato da forceUser.aspx + + + + + restituisce i valori della riga utente da db + + + + + restituisce una stringa formattata con cognome, nome e matricola + + + + + restituisce una stringa della sigla dell'utente + + + + + restituisce una stringa formattata con cognome e nome + + + + + restituisce una stringa formattata con cognome + + + + + restituisce una stringa formattata con nome + + + + + fornisce un file XML della mappa del sito abilitato per l'utente... + + + + + è un boolean che indica se in session ci siano user/dominio e quindi utente autenticato in rpecedenza... + + + + + struttura di comando da input utente (es: via barcode) + + + + + definisce se il comando sia valido o no + + + + + testo da mostrare dato il comando + + + + + comando registrato + + + + + comando precedentemente inserito + + + + + descrizione del comando + + + + + descrizione del comando precedente + + + + + valore del comando + + + + + valore tradotto del comando + + + + + costruttore del metodo... + + + + + classe con funzioni specifiche di calcolo + + + + + inizializzazione classe + + + + + elenco dei caratteri base 36: 0..9A..Z + + + + + + converte da base di dimensione nBase a valore intero + + valore in formato nBase + base, max 36 (0..9A..Z) + + + + + metodo di accesso singleton + + + + + Accesso in lettura e scrittura al filesystem per gestione files upload e download + + + + + path di lavoro dei metodi leggi/scrivi + + + + + verifica esistenza directory ed eventualmente crea restituendo nome completo di "/" finale + + + + + + + restituisce una tab di files dato l'elenco dei files + + + + + + + setta le directory + + + + + + oggetto WebClient + + + + + inizializza il metodo alla cartella indicata + + + non serve +... x retrocompatibilità... + + + + metodo di avvio empty + + + + + cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile + + + + + + + cerca di caricare il fileinfo o da httpcontext-application re-position o direttamente come workpath + nomefile + + + + + + + + cerca di caricare la directoryInfo o da httpcontext-application re-position o direttamente come workpath + + + + + + + Legge i dati da uno stream fino a quando arriva alla fine. + I dati sono restituiti come un byte[] array. un eccezione IOException è + sollevata se una delle chiamate IO sottostanti fallisce. + + Lo stream da cui leggere + Lunghezza buffer iniziale (-1 = default 32k) + + + + verifica esistenza directory, eventualmente crea e restituisce controllo DirectoryInfo + + + + + + ottiene il dataset dei files presenti nella directory indicata esplicitamente + + dir da indicizzare... già mappata! ( es SteamwareStrings.getFilePath(...) ) + + + + + ottiene il dataset dei files presenti nella directory indicata all'istanziazione dell'oggetto + + + + + + ottiene il dataset dei files DEL TIPO "like {param}" presenti nella directory indicata all'istanziazione dell'oggetto + + + + + + elenco dei files come array di oggetti FileInfo + + + + + + elenco dei files come array di oggetti FileInfo filtrati per parametro + + + + + + + elimina la directory di lavoro se è dir virtuale mappata + + + + + + elimina tutti i files con la regexp indicata da una directory, true se cancellato almeno uno + + regexp selezione files in dir (* = tutti!!!) + + + + + verifica se il file indicato esista in workDir + + + + + + + elimina il file indicato dalla directory di lavoro + + + + + + + restituisce lo stream del file richiesto + + + + + + + restituisce la stringa letta dal file richiesto + + + + + + + scrive il file dallo stream byte[] inviato + + + + + + + + scrive il file dalla stringa inviata + + + + + + + + converte una string in un byte[] + + + + + + + converte un byte[] in una string + + + + + + + sposta il file da From a To... + + + + + + + + + copia il file da From a To... + + + + + + + + + copia il file da From a To... + + + + + + + + + + imposta la dir di lavoro + + + + + + imposta la dir di lavoro + + + non serve +... x retrocompatibilità... + + + + imposta la dir di lavoro impostandola dal mapPath corretto della web app... + + + + + + esegue un comando in shell + + + + + + + + + esegue un comando in shell + + + + + + + + + Scarica un file dall'url fornito nella directory indicata x il filemover col nome richiesto + + url del file + nome con cui salvare il file + + + + + comprime zip il file indicato + + + + + + + comprime zip i files corrispondenti alla RegExp indicata nella dir corrente + + Espressione ricerca, come *.txt + Nome del file zip da creare + + + + + scompatta tutto il contenuto di un file zip + + + + + + + scompatta uno specifico file contenuto in un file zip + + + + + + + elimina il file indicato + + + + + + + calcola la dim della directory corrente... + + + + + + + elimina il file + vecchio + + + + + + + versione statica (singleton) del'oggetto fileMover + + + + + Base class for every user control in the application, containing some common + behaviour and utility methods. + It is not meant to be be used directly. + + + + + tipo id controllo con classi di base comune da cui derivare gli *.asmx + + + + + nome della pagina correntemente caricata + + + + + memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session... + + + + + stringa con CDC in (...) dei cdc abilitati (da permesso gerarchicamente a discendere...) + + + + + stringa con elenco CDC abilitati (da permesso gerarchicamente a discendere...) + + + + + tabella diritti + + + + + tabella di tutti i cdc + + + + + tipo di anagrafica usata + + + + + importo il tipo di vista del modulo + + + + + elenco testuale csv dei cdc accessibili all'utente (x filtri tipo IN(...)) + + + + + numero di righe standard x i datagrid + + + + + numero di righe standard x i datagrid di anagrafica + + + + + numero di righe standard x i datagrid lunghi + + + + + numero di righe standard x i datagrid medi + + + + + numero di righe standard x i datagrid su mezza pagina + + + + + numero di righe standard x i selettori popup + + + + + indirizzo email dell'admin applicativo cui vanno le email in caso di anomalie... + + + + + indirizzo email dell'applicativo da cui partono le email in caso di anomalie... + + + + + indirizzo server SMTP + + + + + elenco delle pagine "safe" ovvero da non autorizzare - da web.config + + + + + elenco delle pagine "common" ovvero da autorizzare ma senza bisogno diritti in anagrafica - da web.config + + + + + valore che determina se è possibile forzare impersonificazioen utente... + + + + + livello di log (1-->5) + + + + + dir di logging + + + + + MAIN: esecuzione al caricamento del modulo delle routines di controllo utente e creazione pagina + + + + + + + predisposizione dati x pagina da cache/database a seconda della disponibilità in cache o refresh (B.1.4) + + + + + popola gli oggetti e le labels... (B.1.6) + + + + + disegna la pagina: prima i controlli poi il datagrid + + + + + aggiunge i link x i selettori + + + + + sistema i vari controlli della pagina + + + + + aggiorna eventuali datalist e datagrid + + + + + sistema tutte le labels traducendo i lemmi nella lingua utente ed in inglese + + + + + calcola come percentuale la radio dividendo/divisore + + + + + + + + limita una stringa al numero max di caratteri imposto + + + + + + + + Reads data from a stream until the end is reached. The + data is returned as a byte array. An IOException is + thrown if any of the underlying IO calls fail. + + The stream to read data from + The initial buffer length + + + + converte una data in formato aaaammgg in stringa gg/mm/aaaa + + + + + + + converte una data in formato aaaammgg in stringa aaaa-mm-gg + + + + + + + converte una stringa in formato gg/mm/aaaa in stringa(intero data) in formato aaaammgg + + + + + + + converte una datetime in un intero tipo yyyymmddhhmmss + + + + + + + formatta la data in formato dateTime in una data formato italiano come stringa gg/mm/aaaa + + + + + + + invia un alert jscript con messaggio indicato... + + messaggio dell'alert da mandare + + + + scrive immediatamente sulla pagina web il messaggio di avanzamento... + + + + + + restituisce una scringa formattata in testa e coda x essere un corretto comando javascript + + + + + + + invio email senza log + + + + + + + + + + invio email con log + + + + + + + + + + caricamento dati applicazione da sessione (B.1.3) + + + + + setup datamanagers... + + + + + reset update del modulo corrente + + + + + (ri)carica i dataset del modulo + + + + + verifica se tutti i dataset richiesti sono disponibili i cache + + + + + + salva nella cache i dataset caricati + + + + + carica dalla cache i dataset necessari + + + + + legge i valori standard x dataset e parametri + + + + + leggi i parametri di configurazione standard dell'applicativo + + + + + genera la stringa dei cdc autorizzati dell'utente + + + + + legge il dataset dei CdC + + + + + caricamento dati user da sessione (B.1.1) + + + + + verifica che l'utente abbia almeno un permesso per la pagina corrente altrimenti redirect ad unauthorized + + + + + salva in variabile pagina il nome della pagina corrente + + + + + selezione delle posizioni cdc autorizzate come stringa di filtraggio su POSIZIONE LIKE, se non ce ne fossero redirige su unauthorized.aspx + + + + + + risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione + + + + + + verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio da accodare al filtro x CdC autorizzati + + condizione + tipo di eguaglianza + nome parametro + valore parametro + + + + + crea la stringa di filtraggio x data secondo modalità tipo inizio/fine/durante... + + + + + + crea la stringa di filtraggio x data secondo modalità tipo minoreUguale / uguale / maggioreUguale... + + + + + + verifica la condizione booleana e formatta di conseguenza la stringa di filtraggio tipo LIKE x i campi inseriti separati da # SE valParam !="" + + + + + + + + esegue la ricerca dei cdc nelle posizioni indicate dal filtro e restituisce elenco distinct degli stessi + + filtro con cui cercare i cdc (del tipo " (POSIZIONE LIKE 'T.1.2.3%') OR ... " + stringa di filtraggio ricostruita per l'elenco dei cdc fino a quel momento trovati + ultimo cdc trovato + cdc corrente + + + + + restituisce il cdc dell'utente data la sua matricola + + + + + + + restituisce l'utente AS dall'utente win + + + + + + + restituisce la descr del CdC + + + + + + + invia la stringa jscript di conferma pre-cancellazione + + + + + + restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" + + verrà usato x posizione {0}, tipo "view" + verrà usato x posizione {1}, tipo "_s.png" + + + + + restituisce la stringa del path corretto per l'immagine richiesta nel formato "~/images/{0}{1}" + + verrà usato x posizione {0}, tipo "view" + verrà usato x posizione {1}, tipo "_s.png" + tipo del file richiesto..." + + + + + effettua traduzione del lemma + + + + + + + effettua traduzione in inglese del lemma + + + + + + + definisce visibilità + + + + + + + effettua la registrazione degli eventi + + + + + effettua l'inserimento vero e proprio dell'evento letto dai valori in session x l'utente corrente... + + evento da loggare + valori originali + nuovi valori + filtro associato + + + + salva in sessione i valori indicati + + dictionary dei valori vecchi + dictionary dei valori nuovi + bool su abilitazione al log dell'oggetto + descrizione evento da loggare + filtro associato all'evento + restituisce il numero di elementi contenuti, -1 significa nessuna differenza... + + + + salva in sessione i valori per un oggetto che sta x essere eliminato + + dictionary dei valori vecchi + bool su abilitazione al log dell'oggetto + descrizione evento da loggare + filtro associato all'evento + restituisce il numero di elementi contenuti, -1 significa nessuna differenza... + + + + wrapper per log con salvataggio dell'IP del chiamante + + + + + + + wrapper per log con salvataggio dell'IP del chiamante + + + + + + + imposto il tipo di anagrafica del controlloS + + + + + variabile salvata in view state x la stringa di sorting - dg 2 + + + + + variabile salvata in view state x la stringa di sorting - dg 2 + + + + + legge e scrive in viewState la stringa di filtraggio... + + + + + variabile salvata in viewstate x la direzione del sorting + + + + + genera la stringa filtro x i cdc autorizzati x l'user + + + + + + tipo di vista del modulo + + + + + Pagina base applicazioni SteamWare da cui derivare le altre + + + + + Iniziazlizzazione void (non fa nulla) + + + + + Metodo MAIN: viene eseguita al caricamento ed effettua delle routines per il controllo utente e istanzia l'oggetto memLayer + + + + + + + rimanda alla pagina di Work In Progress salvando in session un titolo ed una descrizione che al pagina wip poi mostrerà all'utente + + titolo da mostrare nella pagina WIP + descrizione da mostrare nella pagina WIP + + + + wrapper per log con salvataggio dell'IP del chiamante + + + + + + + wrapper per log con salvataggio dell'IP del chiamante + + + + + + + struttura che definisce i parametri di un turno di lavoro + + + + + definisce un intervalo di 2 date + + + + + data inizio + + + + + data fine + + + + + indica se sia valido il dato, ovvero inizio e fine > 0 e FINE >= INIZIO + + + + + struttura orario ordinarie/strordinarie + + + + + ore ordinarie + + + + + ore straordinarie + + + + + classe di funzioni inerenti le date + + + + + inizializzazione empty + + + + + calcola il turno di riferimento data una data di riferimento + + + + + + + costruisce un oggetto intervallo date + + + + + + + + effettua l'operazione di intersezione tra 2 intervali di date restituendo ulteriore intervallo: NB se sono intervali disgiunti restituisce 9/9/9999 x inizio e fine + + + + + + + + oggetto mese precedente alla dataLilmite + + + + + + oggetto mese corrente fino alla dataLilmite + + + + + + confronta le date e restituisce true se le date sono nello stesso mese + + + + + + + + restituisce l'intervallo del giorno completo che comprende la data indicata + + + + + + + restituisce l'intervallo di N giorni fino alla data indicata + + + + + + + + restituisce l'intervallo della settimana corrente per la data indicata + + + + + + + restituisce l'intervallo del mese corrente per la data indicata (dal giorno 1 all'indomani delal data indicata) + + + + + + + restituisce l'intervallo del mese che comprende la data indicata (dal primo all'ultimo giorno) + + + + + + + restituisce l'intervallo dell'anno corrente per la data indicata + + + + + + + oggetto singleton + + + + + classe di gestione delle email + + + + + stringa nel nome DNS o dell'ip del server SMTP + + + + + metodo static per la gestione delle email + + + + + + metodo static per la gestione delle email + + + + + + + procedura invio email + + email mittente + email destinatario + oggetto dell'email + corpo del messaggio + + + + procedura invio email + scrittura in log! + + email mittente + email destinatario + oggetto dell'email + corpo del messaggio + + + + metodo singleton gestione email... + + + + + Tipo di comparazione, Binary == CaseSensitive, Text = insensitive + + + + + tipo controllo : binario + + + + + tipo controllo : text + + + + + Funzione di splitting compatibile con multi-character e multi-line + + + + + stringa da splittare + + + + + Delimiter con cui splittare + + + + + Costruttore dello Splitter + + + + + comparatore case sensitive + + + + + + + + comparatore case insensitive + + + + + + + + parte principale dello splitter + + stringa da splittare + delimitatore ricercato + true=il delimiter è un blocco unico, false=qualsiasi oggetto del delimiter fa split (come split base) + + 0 -> Binary=CaseSensitive, 1 -> Text=case insensitive + + + + + elimina dal nome file il tipo (desinenza) + + + + + + + Classe di metodi che estendono quelli base applicati alle string + + + + + Trasforma in MAIUSCOLo il primo carattere della stringa + + stringa da processare + stringa processata + + + + restituisce la stringa completa e corretta del filepath del server (anche con vDir) + + path relativo alla cartella iis dell'applicativo + path fisico tradotto + + + + effettua escape di stringhe di ricerca di tipo filtro per apici e altri caratteri non ammessi + + + + + + + restituisce una stringa uguale all'originale + terminazione newline + + + + + + + formatta un titolo + + Titolo da scrivere + carattere x padding titolo + larghezza caratteri (x pad) + + + + + formatta una riga di caratteri + + carattere da utilizzare + larghezza caratteri (x pad) + + + + + fornisce dati di base per l'utente + + + + + fornisce cognome e nome utente formattati a partire dall'username e dalla tabella UTENTE + + + + + + + restituisce la riga completa dall'username richiesto + + + + + + + + calcola il nome del computer dato l'IP + + + + + + + scarica una pagina da URL e fornisce testo string + + Indirizzo pagina (completo) + username (se necessario) + password (se necessaria) + + + + + manda pacchetto ARP + + + + + + + + + + fornisce mac address dato nome/IP + + + + + + + utils x cifrature e Crypto + + + + + cifra un messaggio con una password + + + + + + + + decifra un messaggio con una password + + + + + + + + classe gestione logging esteso di eventi e note utente (correlabili) + + + + + TableAdapter di accesso alla tabella anagrafica filtraggi + + + + + TableAdapter di accesso alla tabella anagrafica record + + + + + TableAdapter di accesso alla tabella logging record di eventi + + + + + TableAdapter di accesso alla tabella logging utente + + + + + TableAdapter di accesso alla vista logging eventi + + + + + TableAdapter di accesso alla vista logging utente + + + + + effettua setup dei connection strings da web.config delal singola applicazione + + + + + avvio i tari tableAdapters + + + + + avvio della classe istanziando db e + + + + + oggetto statico di accesso ai metodi della classe... + + + + + tabella eventi + + + + + + tabella note + + + + + + tabella eventi secondo filtro + + filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento + + + + + tabella note secondo filtro + + filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento + + + + + tabella eventi secondo filtro e condizione ulteriore WHERE esplicitata + + filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento + ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" + + + + + tabella note secondo filtro e condizione ulteriore WHERE esplicitata + + filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento + ulteriore condizione WHERE per filtrare i dati (testo {0} della condizione "WHERE {0}" + + + + + tabella note secondo filtro + + filtro gestito come condizione "LIKE '%{0}%'" rispetto al filtro salvato con l'evento + + + + + inserisce l'evento indicato dai parametri + + user che ha generato l'evento + pagina/form applicaizone in cui l'evento si è generato + valore originale(se c'è) + valore nuovo/modificato + descrizione evento (poi gestita con anagrafica interna) + filtro logico evento (poi gestita con anagrafica interna) + + + + inserisce la nota utente indicata dai parametri, restituisce idx della nota creata... + + user che ha inserito la nota + testo della nota + valore ulteriore da associare alla nota (es: label, codice, versione, ...) + filtro logico evento (poi gestita con anagrafica interna) + intero dell'idx della nota creata + + + + associa l'evento e la nota indicati + + idx del record da associare + idx chiave della nota da associare + + + + associa l'ultimo evento del filtro indicato alla nota + + filtro associato all'ultimo evento... + idx chiave della nota da associare + + + + segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati + + utente generatore dell'evento + + + + segna come cestinati tutti gli eventi dell'utente indicato non ancora associati o cestinati + + utente generatore dell'evento + + + + Elimina gli eventi cestinati generati dall'utente indicato + + utente generatore dell'evento + + + + Elimina gli eventi cestinati anteriori alla data selezionata + + dataOra dell'evento + + + + effettua la registrazione dell'evento in session + + + + + metodo di comportamento del controllo di logging + + + + + nasconde pannello log + + + + + memorizza log inserito + + + + + mostra pannello log + + + + + metodo di comportamento del controllo di logging + + + + + indica il primo step del doppio livello di approvazione (completamento) + + + + + SOLO con incremento indice di revisione dell'oggetto approvato + + + + + SOLO mantenendo indice di revisione corrente + + + + + permette SIA con revisione che senza (e anche rev -1) + + + + + classe gestione parametri deviceper stampa + + + + + creazione oggetto parametri per stampa + + + + + + + + + + + + formato output + + + + + altezza + + + + + larghezza + + + + + margine Sx + + + + + margine Dx + + + + + margine Top + + + + + margine Bottom + + + + + classe di wrap verso i TableAdapter impiegati + + + + + metodo protected di avvio della classe + + + + + procedura di avvio dei tableAdapter + + + + + procedura di avvio dei tableAdapter + + + + + effettua setup dei connection strings da web.config delal singola applicazione + + + + + effettua setup dei connection strings da web.config delal singola applicazione + + + + + setup delle tabelle vocabolario + + + + + prende l'oggetto tabVocabolario in ram e lo trasforma in dictionary + + + + + + tableAdapter diritti + + + + + tableAdapter permessi + + + + + tableAdapter funzione + + + + + tableAdapter permessi2funzione + + + + + tableAdapter CdC + + + + + tableAdapter utenti + + + + + tableAdapter userData (user/pwd) + + + + + tableAdapter userDataExt (user/pwd) + + + + + table adapter lingue + + + + + table adapter vocabolario + + + + + table adapter versione vocabolario + + + + + table adapter versione anagrafica + + + + + table adapter Devices utente + + + + + oggetto vocabolario organizzato come dizionario con chiave lang#lemma e valore la traduzione + + + + + resetta il vocabolario rileggendo i dati... + + + + + crea nel db corrente il lemma richiesto e lo valorizza come "--{0}--" + + + + + + + classe singleton x la gestione dei tableadapters + + + + + elenco lingue ammesse da vocabolario... + + + + + Represents a strongly typed in-memory cache of data. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents the strongly named DataTable class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Represents strongly named DataRow class. + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Row event argument class + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + Represents the connection and commands used to retrieve and save data. + + + + + enumeratore modalità login + + + + + login AD normale + + + + + forza utente fornendo password + + + + + forza ad un utente standard scelto dall'elenco + + + + + enumeratore modalità scrittura tag siteMap + + + + + nodo di tipo iniziale - apertura + + + + + nodo di tipo foglia + + + + + nodo di tipo finale - chiusura + + + + + enumeratore tipi di anagrafica + + + + + tipo di anagrafica Brembo + + + + + tipo di anagrafica generica + + + + + tipo di vista del modulo + + + + + modalità selezione + + + + + modalità editing + + + + + modalità inserting nuovo valore + + + + + tipologia di file immagine + + + + + formato gif (no alpha channel) + + + + + formato jpeg + + + + + formato png + + + + + tipo di immagini usate per le icone di comando in web applications + + + + + icona annulla (croce rossa) + + + + + icona approva (simbolo coccarda) + + + + + icona barcode in campo bianco + + + + + icona barcode in campo arancio + + + + + icona clona (magic wand) + + + + + icona converma (spunta verde) + + + + + icona elimina (cestino) + + + + + icona modifica (matita) + + + + + icona notepad (blocco note) + + + + + icona notepad + pdf (blocco note) + + + + + icona nuovo (segno +) + + + + + icona seleziona (lente) + + + + + icona semaforo giallo + + + + + icona semaforo rosso + + + + + icona semaforo verde + + + + + icona stampa (printer) + + + + + dimensione immagini usate per le icone di comando in web applications + + + + + formato piccolo + + + + + formato medio + + + + + formato grande + + + + + modalità di esecuzione applicativi + + + + + modalità normale + + + + + modalità debug + + + + + salvataggio di tutti i lemmi tradotti + + + + + classe gesione log files applicazioni + + + + + directory base x logs + + + + + nome del file corrente + + + + + max mb di log da accumulare + + + + + controlla se si debba mantenere sotto controllo la dimensioen della cartella logs + + + + + singleton del logger + + + + + avvio del logger nella dir desiderata + + + + + avvio del logger nella dir desiderata + + + + + avvio del logger nella dir desiderata con il max di dati indicato + + + + + resetta il logfile odierno + + + + + scrive sul file log di default il valore della variabile string passata su una riga... (tab delim?!?) + + testo iniziale del log + + + + + scrive un messaggio di log con etichetta pre + + testo messaggio + tipo di log da registrare (etichetta [...]) + + + + + scrive su log un dump di diagnostica + + Causale diagnostica + target per test PING + target x download www page + + + + formatta un blococ di diagnostica (titolo, contenuto / eccezione) + + + + + + + + fornisce il nome del file in cui loggare (ed eventualmente crea...) + + + + + provvede a verificare la dim della cartella dei log e cancella i + vecchi fino a restare a dim inferiori a _logMaxMb + + + + + fornisce il file + vecchio + + + + + + + livello di log applicazione (da web.config, chiave '_logLevel') + + + + + tipo di log ammesso + + + + + informazioni di debug + + + + + dump diagnostica + + + + + errori + + + + + eccezioni nell'esecuzione try/catch + + + + + errori fatali + + + + + informazioni opzionali + + + + + log dei lemmi invocati per traduzione da vocabolario + + + + + fase di avvio componente + + + + + avvisi + + + + + classe di gestione lettura + + + + + esegue parsing fornendo dati ed headers + + + + + + + + esegue parsing fornendo dati + + + + + + + esegue parsing fornendo dati come stream + + + + + + + esegue parsing fornendo dati come stream ed headers + + + + + + + + classe per effettuare confronto tra valori disomogeneri per tipo e costruire diff testuali + + + + + valore originale + + + + + nuovo valore + + + + + dictionary dei parametri vecchi + + + + + dictionary dei parametri nuovi + + + + + inizializzazione classe + + + + + valorizza i diff dei valori old e new + + + + + calcola solo il vettore dei valori old (x delete) + + + + + oggetto statico per il confronto valori + + + + + stringa diff dei valori originali modificati + + + + + stringa diff dei valori nuovi modificati + + + + + dictionary dei parametri old + + + + + dictionary dei parametri new + + + + + Represents a strongly typed in-memory cache of data. + + + + + Represents the strongly named DataTable class. + + + + + Represents strongly named DataRow class. + + + + + Row event argument class + + + + + Represents the connection and commands used to retrieve and save data. + + + + + TableAdapterManager is used to coordinate TableAdapters in the dataset to enable Hierarchical Update scenarios + + + + + Update rows in top-down order. + + + + + Insert rows in top-down order. + + + + + Delete rows in bottom-up order. + + + + + Remove inserted rows that become updated rows after calling TableAdapter.Update(inserted rows) first + + + + + Update all changes to the dataset. + + + + + Update Order Option + + + + + Used to sort self-referenced table's rows + + + + diff --git a/project/Equa_Auth/bin/SteamWare.dll b/project/Equa_Auth/bin/SteamWare.dll new file mode 100644 index 0000000..1e0f550 Binary files /dev/null and b/project/Equa_Auth/bin/SteamWare.dll differ diff --git a/project/Equa_Auth/login.aspx b/project/Equa_Auth/login.aspx new file mode 100644 index 0000000..67fdfa9 --- /dev/null +++ b/project/Equa_Auth/login.aspx @@ -0,0 +1,16 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="login.aspx.cs" Inherits="Equa_Auth.login" %> + +<%@ Register Src="WebUserControls/mod_login.ascx" TagName="mod_login" TagPrefix="uc1" %> + + + + + + +
+
+ +
+
+ + diff --git a/project/Equa_Auth/login.aspx.cs b/project/Equa_Auth/login.aspx.cs new file mode 100644 index 0000000..f36aa09 --- /dev/null +++ b/project/Equa_Auth/login.aspx.cs @@ -0,0 +1,56 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using SteamWare; + +namespace Equa_Auth +{ + public partial class login : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + string AuthCookie = ""; + try + { + AuthCookie = Page.Request.QueryString["AuthCookie"].ToString(); + logger.lg.scriviLog(string.Format("Richiesta verifica cookie: {0}", AuthCookie), tipoLog.INFO); + } + catch + { } + // salvo nome cookie richiesto + memLayer.ML.setSessionVal("AuthCookie", AuthCookie); + // setto modalità login + mod_login1.modoLogin = SteamWare.loginMode.normale; + } + + protected override void OnInit(EventArgs e) + { + base.OnInit(e); + mod_login1.Login_ok += new EventHandler(Mod_login1_Login_ok); + mod_login1.Login_Error += new EventHandler(Mod_login1_Login_Error); + } + + void Mod_login1_Login_Error(object sender, EventArgs e) + { + Response.Redirect("./unauthorized.aspx"); + } + + void Mod_login1_Login_ok(object sender, EventArgs e) + { + string nextPage = ""; + try + { + nextPage = Page.Request.QueryString["jumpPage"].ToString(); + } + catch + { + nextPage = "./LandingPage.aspx"; + } + logger.lg.scriviLog(string.Format("Login ok, redirecting to {0}", nextPage), tipoLog.INFO); + Response.Redirect(nextPage); + } + } +} \ No newline at end of file diff --git a/project/Equa_Auth/login.aspx.designer.cs b/project/Equa_Auth/login.aspx.designer.cs new file mode 100644 index 0000000..6a8862c --- /dev/null +++ b/project/Equa_Auth/login.aspx.designer.cs @@ -0,0 +1,33 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Equa_Auth { + + + public partial class login { + + /// + /// form1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// mod_login1 control. + /// + /// + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// + protected global::Equa_Auth.WebUserControls.mod_login mod_login1; + } +} diff --git a/project/Equa_Auth/logs/PlaceHolder.file b/project/Equa_Auth/logs/PlaceHolder.file new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/project/Equa_Auth/logs/PlaceHolder.file @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/project/XPS/bin/SteamWare.dll b/project/XPS/bin/SteamWare.dll index fc470e7..1e0f550 100644 Binary files a/project/XPS/bin/SteamWare.dll and b/project/XPS/bin/SteamWare.dll differ diff --git a/project/XPS/bin/XPS.dll b/project/XPS/bin/XPS.dll index 25364a6..189834e 100644 Binary files a/project/XPS/bin/XPS.dll and b/project/XPS/bin/XPS.dll differ diff --git a/project/XPS/bin/XPS_data.dll b/project/XPS/bin/XPS_data.dll index b2ab103..82e87ce 100644 Binary files a/project/XPS/bin/XPS_data.dll and b/project/XPS/bin/XPS_data.dll differ diff --git a/project/XPS/obj/EQUA/XPS.dll b/project/XPS/obj/EQUA/XPS.dll index d2319df..2093aa0 100644 Binary files a/project/XPS/obj/EQUA/XPS.dll and b/project/XPS/obj/EQUA/XPS.dll differ diff --git a/project/XPS/obj/Release/XPS.dll b/project/XPS/obj/Release/XPS.dll index 593231c..189834e 100644 Binary files a/project/XPS/obj/Release/XPS.dll and b/project/XPS/obj/Release/XPS.dll differ diff --git a/project/XPST/Web.config b/project/XPST/Web.config index 213beab..423b9b8 100644 --- a/project/XPST/Web.config +++ b/project/XPST/Web.config @@ -109,11 +109,14 @@ - + + + + @@ -121,6 +124,7 @@ + @@ -139,7 +143,6 @@ - diff --git a/project/XPST/WebUserControls/mod_login.ascx.cs b/project/XPST/WebUserControls/mod_login.ascx.cs index 8f641bd..941a2e6 100644 --- a/project/XPST/WebUserControls/mod_login.ascx.cs +++ b/project/XPST/WebUserControls/mod_login.ascx.cs @@ -250,7 +250,7 @@ namespace XPST.WebUserControls bool cookieLogin = false; if (memLayer.ML.confReadBool("enableCookie")) { - cookieLogin = authProxy.tryAuthByCookie(memLayer.ML.confReadString("CodModulo")); + cookieLogin = authProxy.tryAuthByCookie(memLayer.ML.confReadString("AuthCookie")); } if (!cookieLogin) { diff --git a/project/XPST/bin/SteamWare.dll b/project/XPST/bin/SteamWare.dll index fc470e7..1e0f550 100644 Binary files a/project/XPST/bin/SteamWare.dll and b/project/XPST/bin/SteamWare.dll differ diff --git a/project/XPST/bin/XPST.dll b/project/XPST/bin/XPST.dll index 1f47b33..97573d1 100644 Binary files a/project/XPST/bin/XPST.dll and b/project/XPST/bin/XPST.dll differ diff --git a/project/XPST/bin/XPS_data.dll b/project/XPST/bin/XPS_data.dll index b2ab103..82e87ce 100644 Binary files a/project/XPST/bin/XPS_data.dll and b/project/XPST/bin/XPS_data.dll differ diff --git a/project/XPST/login.aspx.cs b/project/XPST/login.aspx.cs index 3a81da6..f6868a5 100644 --- a/project/XPST/login.aspx.cs +++ b/project/XPST/login.aspx.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; +using SteamWare; namespace XPST { @@ -26,6 +27,25 @@ namespace XPST { // pulisco i record di viewstate vecchi... RemoveViewStateFiles(); + // controllo cookie... + bool cookieLogin = false; + if (memLayer.ML.confReadBool("enableCookie")) + { + cookieLogin = authProxy.tryAuthByCookie(memLayer.ML.confReadString("AuthCookie")); + } + if (!cookieLogin) + { + // compongo stringa x sito auth + string authPage = "./unauthorized.aspx"; + try + { + authPage = string.Format("{0}login.aspx?AuthCookie={1}&jumpPage={2}", memLayer.ML.confReadString("authSite"), memLayer.ML.confReadString("AuthCookie"), memLayer.ML.confReadString("currSite")); + } + catch + { } + Response.Redirect(authPage); + } + // setto modalità login mod_login1.modoLogin = SteamWare.loginMode.normale; } diff --git a/project/XPST/obj/Debug/XPST.dll b/project/XPST/obj/Debug/XPST.dll index ceb28b1..fc63db3 100644 Binary files a/project/XPST/obj/Debug/XPST.dll and b/project/XPST/obj/Debug/XPST.dll differ diff --git a/project/XPST/obj/EQUA/XPST.dll b/project/XPST/obj/EQUA/XPST.dll index 1f47b33..854cafa 100644 Binary files a/project/XPST/obj/EQUA/XPST.dll and b/project/XPST/obj/EQUA/XPST.dll differ diff --git a/project/XPST/obj/EQUA/build.force b/project/XPST/obj/EQUA/build.force new file mode 100644 index 0000000..e69de29 diff --git a/project/XPST/obj/Release/XPST.dll b/project/XPST/obj/Release/XPST.dll index a1deb65..97573d1 100644 Binary files a/project/XPST/obj/Release/XPST.dll and b/project/XPST/obj/Release/XPST.dll differ diff --git a/project/XPS_app.sln b/project/XPS_app.sln index 60135d9..311424f 100644 --- a/project/XPS_app.sln +++ b/project/XPS_app.sln @@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XPST", "XPST\XPST.csproj", EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SteamWare", "..\..\SteamWareLibrary\SteamWare\SteamWare.csproj", "{2872DCFE-8B46-43B2-BAA0-842A816A2DD5}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Equa_Auth", "Equa_Auth\Equa_Auth.csproj", "{BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|.NET = Debug|.NET @@ -94,6 +96,24 @@ Global {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Release|Any CPU.Build.0 = Release|Any CPU {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|.NET.ActiveCfg = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|.NET.Build.0 = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|.NET.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|.NET.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|Any CPU.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|Any CPU.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|Mixed Platforms.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.EQUA|Mixed Platforms.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|.NET.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|.NET.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|Any CPU.Build.0 = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {BDD58632-ED9F-46DE-ABE9-8B7E228EFA72}.Release|Mixed Platforms.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/project/XPS_app.suo b/project/XPS_app.suo index 4c90e29..bb9d9ff 100644 Binary files a/project/XPS_app.suo and b/project/XPS_app.suo differ diff --git a/project/XPS_data/bin/Debug/SteamWare.dll b/project/XPS_data/bin/Debug/SteamWare.dll index e77a478..6c0f56c 100644 Binary files a/project/XPS_data/bin/Debug/SteamWare.dll and b/project/XPS_data/bin/Debug/SteamWare.dll differ diff --git a/project/XPS_data/bin/Debug/XPS_data.dll b/project/XPS_data/bin/Debug/XPS_data.dll index 8d56f91..92e1039 100644 Binary files a/project/XPS_data/bin/Debug/XPS_data.dll and b/project/XPS_data/bin/Debug/XPS_data.dll differ diff --git a/project/XPS_data/bin/Release/SteamWare.dll b/project/XPS_data/bin/Release/SteamWare.dll index bdd1e30..1e0f550 100644 Binary files a/project/XPS_data/bin/Release/SteamWare.dll and b/project/XPS_data/bin/Release/SteamWare.dll differ diff --git a/project/XPS_data/bin/Release/XPS_data.dll b/project/XPS_data/bin/Release/XPS_data.dll index 09da075..82e87ce 100644 Binary files a/project/XPS_data/bin/Release/XPS_data.dll and b/project/XPS_data/bin/Release/XPS_data.dll differ diff --git a/project/XPS_data/obj/Debug/XPS_data.dll b/project/XPS_data/obj/Debug/XPS_data.dll index 8d56f91..92e1039 100644 Binary files a/project/XPS_data/obj/Debug/XPS_data.dll and b/project/XPS_data/obj/Debug/XPS_data.dll differ diff --git a/project/XPS_data/obj/Release/XPS_data.dll b/project/XPS_data/obj/Release/XPS_data.dll index 09da075..82e87ce 100644 Binary files a/project/XPS_data/obj/Release/XPS_data.dll and b/project/XPS_data/obj/Release/XPS_data.dll differ