+
diff --git a/CMS_SC/WebUserControls/mod_testata.ascx.cs b/CMS_SC/WebUserControls/mod_testata.ascx.cs
index 9c48fa8..e9b26b3 100644
--- a/CMS_SC/WebUserControls/mod_testata.ascx.cs
+++ b/CMS_SC/WebUserControls/mod_testata.ascx.cs
@@ -7,104 +7,104 @@ using System.Web.UI;
namespace CMS_SC.WebUserControls
{
- public partial class mod_testata : System.Web.UI.UserControl
+ public partial class mod_testata : System.Web.UI.UserControl
+ {
+ /////
+ ///// nome della pagina correntemente caricata
+ /////
+ //public string _paginaCorrente;
+ /////
+ ///// memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session...
+ /////
+ //public string _paginaPrecedente;
+
+ ///
+ /// calcola currentPage
+ ///
+ protected string currPage
{
- /////
- ///// nome della pagina correntemente caricata
- /////
- //public string _paginaCorrente;
- /////
- ///// memorizza la pagina precedente (ovvero la corrente ma non da page-object ma in session...
- /////
- //public string _paginaPrecedente;
+ get
+ {
+ return Request.Url.LocalPath.Split('/').Last();
+ }
+ }
+ ///
+ /// definisce visibilità logo: sempre SE la pagina non è quella default (su cui il logo è visibile in grande...)
+ ///
+ public bool logoVisible
+ {
+ get
+ {
+ return currPage != "Default";
+ }
+ }
+ ///
+ /// titolo pagina
+ ///
+ public string titolo
+ {
+ get
+ {
+ return devicesAuthProxy.getPage(Request.Url);
+ }
+ }
+ ///
+ /// caricamento pagina
+ ///
+ ///
+ ///
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ // altri controlli
+ if (!Page.IsPostBack)
+ {
+ txtSearch.Visible = pageHasSearch;
+ Page.Title = Request.Url.ToString();
+ // se ho cambiato pagina registro...)
+ if (devicesAuthProxy.pagPrecedente != titolo)
+ {
+ devicesAuthProxy.pagPrecedente = devicesAuthProxy.pagCorrente;
+ }
+ // salvo pagina corrente
+ devicesAuthProxy.pagCorrente = titolo;
+ // fix logo
+ imgLogo.Visible = logoVisible;
+ //PagCorrente(); // tolto 2015.02.24
+ memLayer.ML.emptySessionVal("searchVal");
+ // fix componenti
+ hlUser.DataBind();
+ }
+ // SOLO se la pagina NON E' "safe"...
+ if (memLayer.ML.confReadString("PageNoIndex").IndexOf(titolo) < 0)
+ {
+ bool userOk = checkUser();
+ bool pageOk = checkPageIsAuth();
+ // controllo se c'è utente in sessione..
+ if ((userOk))
+ {
+ // ora controllo pagina...
+ if (!pageOk)
+ {
+ if (devicesAuthProxy.stObj.isPageEnabled(devicesAuthProxy.pagPrecedente))
+ {
+ Response.Redirect(devicesAuthProxy.pagPrecedente);
+ }
+ else
+ {
+ Response.Redirect("Home");
+ }
+ }
+ }
+ else
+ {
+ // rimando pagina x registrazione devices
+ Response.Redirect("UserAdmin");
+ }
+ }
- ///
- /// calcola currentPage
- ///
- protected string currPage
- {
- get
- {
- return Request.Url.LocalPath.Split('/').Last();
- }
- }
- ///
- /// definisce visibilità logo: sempre SE la pagina non è quella default (su cui il logo è visibile in grande...)
- ///
- public bool logoVisible
- {
- get
- {
- return currPage != "Default";
- }
- }
- ///
- /// titolo pagina
- ///
- public string titolo
- {
- get
- {
- return devicesAuthProxy.getPage(Request.Url);
- }
- }
- ///
- /// caricamento pagina
- ///
- ///
- ///
- protected void Page_Load(object sender, EventArgs e)
- {
- // altri controlli
- if (!Page.IsPostBack)
- {
- txtSearch.Visible = pageHasSearch;
- Page.Title = Request.Url.ToString();
- // se ho cambiato pagina registro...)
- if (devicesAuthProxy.pagPrecedente != titolo)
- {
- devicesAuthProxy.pagPrecedente = devicesAuthProxy.pagCorrente;
- }
- // salvo pagina corrente
- devicesAuthProxy.pagCorrente = titolo;
- // fix logo
- imgLogo.Visible = logoVisible;
- //PagCorrente(); // tolto 2015.02.24
- memLayer.ML.emptySessionVal("searchVal");
- // fix componenti
- hlUser.DataBind();
- }
- // SOLO se la pagina NON E' "safe"...
- if (memLayer.ML.confReadString("PageNoIndex").IndexOf(titolo) < 0)
- {
- bool userOk = checkUser();
- bool pageOk = checkPageIsAuth();
- // controllo se c'è utente in sessione..
- if ((userOk))
- {
- // ora controllo pagina...
- if (!pageOk)
- {
- if (devicesAuthProxy.stObj.isPageEnabled(devicesAuthProxy.pagPrecedente))
- {
- Response.Redirect(devicesAuthProxy.pagPrecedente);
- }
- else
- {
- Response.Redirect("Home");
- }
- }
- }
- else
- {
- // rimando pagina x registrazione devices
- Response.Redirect("UserAdmin");
- }
- }
-
- //liReports.Visible = userIsSuperUser || userIsSuperAdmin;
- //liSettings.Visible = userIsSuperUser || userIsSuperAdmin;
- //ulSettings.Visible = userIsSuperAdmin;
+ //liReports.Visible = userIsSuperUser || userIsSuperAdmin;
+ //liSettings.Visible = userIsSuperUser || userIsSuperAdmin;
+ //ulSettings.Visible = userIsSuperAdmin;
#if false
liListValues.Visible = userIsSuperAdmin;
liImport.Visible = userIsSuperUser;
@@ -112,350 +112,341 @@ namespace CMS_SC.WebUserControls
liDivider.Visible = userIsSuperAdmin;
liUpdateVoc.Visible = userIsSuperAdmin;
#endif
- }
- ///
- /// verifica che la pagina sia tra quelle autorizzate x l'utente
- ///
- ///
- private bool checkPageIsAuth()
+ }
+ ///
+ /// verifica che la pagina sia tra quelle autorizzate x l'utente
+ ///
+ ///
+ private bool checkPageIsAuth()
+ {
+ bool allOk = false;
+ bool pageSafe = (memLayer.ML.confReadString("PageNoIndex").IndexOf(titolo) >= 0);
+ bool pageAuth = devicesAuthProxy.stObj.isPageEnabled(titolo);
+ allOk = (pageSafe || pageAuth);
+ return allOk;
+ }
+ ///
+ /// verifica presenza utente autorizzato in sessione
+ ///
+ private bool checkUser()
+ {
+ bool allOk = devicesAuthProxy.stObj.isAuth;
+ if (!devicesAuthProxy.stObj.isAuth)
+ {
+ // controllo cookie device...
+ allOk = checkAuthCookieCMS_SC();
+ if (!allOk)
{
- bool allOk = false;
- bool pageSafe = (memLayer.ML.confReadString("PageNoIndex").IndexOf(titolo) >= 0);
- bool pageAuth = devicesAuthProxy.stObj.isPageEnabled(titolo);
- allOk = (pageSafe || pageAuth);
- return allOk;
+ ResetUser();
}
- ///
- /// verifica presenza utente autorizzato in sessione
- ///
- private bool checkUser()
+ }
+ return allOk;
+ }
+ ///
+ /// verifica la presenza di un cookie VALIDO per autorizzare il device ed avvia utente...
+ ///
+ private bool checkAuthCookieCMS_SC()
+ {
+ bool answ = false;
+ try
+ {
+ HttpCookie cookie = Request.Cookies[devicesAuthProxy.AuthCookieName];
+ if (!(cookie == null || cookie.Value == ""))
{
- bool allOk = devicesAuthProxy.stObj.isAuth;
- if (!devicesAuthProxy.stObj.isAuth)
- {
- // controllo cookie device...
- allOk = checkAuthCookieCMS_SC();
- if (!allOk)
- {
- ResetUser();
- }
- }
- return allOk;
- }
- ///
- /// verifica la presenza di un cookie VALIDO per autorizzare il device ed avvia utente...
- ///
- private bool checkAuthCookieCMS_SC()
- {
- bool answ = false;
+ // ricavo utente da cookie...
+ string userAgent = "";
+ string postazione_IP = "";
+ string devSecret = cookie.Value;
+ DS_Auth.AnagDevicesRow device = null;
+ // cerco il device...ogni dipendente può averne + di 1 registrato a suo nome...
+ string email = "";
+ try
+ {
+ device = devicesAuthProxy.stObj.taAnagDev.getByDeviceSecret(devSecret)[0];
+ email = device.USER_NAME;
+ }
+ catch (Exception exc)
+ {
+ logger.lg.scriviLog(string.Format("{0}", exc), tipoLog.EXCEPTION);
+ }
+ // cerco se si tratti PER CASO di un cookie di auth "base" per utenti base...
+ if (email == "")
+ {
try
{
- HttpCookie cookie = Request.Cookies[devicesAuthProxy.AuthCookieName];
- if (!(cookie == null || cookie.Value == ""))
+ email = devicesAuthProxy.decodeKey(cookie.Value);
+ // cerco SE email sia valida...
+ if (devicesAuthProxy.stObj.checkUserEmail(email))
+ {
+ // se l'utente è "base" procedo...
+ if (devicesAuthProxy.stObj.numAuth(email) != 0)
{
- // ricavo utente da cookie...
- string userAgent = "";
- string postazione_IP = "";
- string devSecret = cookie.Value;
- DS_Auth.AnagDevicesRow device = null;
- // cerco il device...ogni dipendente può averne + di 1 registrato a suo nome...
- string email = "";
- try
- {
- device = devicesAuthProxy.stObj.taAnagDev.getByDeviceSecret(devSecret)[0];
- email = device.USER_NAME;
- }
- catch (Exception exc)
- {
- logger.lg.scriviLog(string.Format("{0}", exc), tipoLog.EXCEPTION);
- }
- // cerco se si tratti PER CASO di un cookie di auth "base" per utenti base...
- if (email == "")
- {
- try
- {
- email = devicesAuthProxy.decodeKey(cookie.Value);
- // cerco SE email sia valida...
- if (devicesAuthProxy.stObj.checkUserEmail(email))
- {
- // se l'utente è "base" procedo...
- if (devicesAuthProxy.stObj.numAuth(email) != 0)
- {
- email = "";
- }
- }
- else
- {
- email = "";
- }
- }
- catch
- { }
- }
+ email = "";
+ }
+ }
+ else
+ {
+ email = "";
+ }
+ }
+ catch
+ { }
+ }
- if (email != "")
- {
- // aggiorno descrizione (user agent) ed IP...
- userAgent = Request.UserAgent;
- postazione_IP = Request.UserHostAddress;
- // controllo IP e DeviceDescription x eventuale update
- if (device != null)
- {
- if (((device.lastIPv4 != postazione_IP) || (device.Description != userAgent)))
- {
- try
- {
- // salvo ultimo "contatto" del device aggiornando descrizione ed IP
- devicesAuthProxy.stObj.taAnagDev.updateIP(device.IdxDevice, DateTime.Now, postazione_IP, userAgent);
- }
- catch
- { }
- }
- }
- // salvo in sessione utente l'email...
- memLayer.ML.setSessionVal("email", email);
- // avvio utente...
- devicesAuthProxy.stObj.startUpUtente(email);
- // salvo dati di AUTH OP (x visualizzazione in testata...)
- OpAuth.startOpAuth(email, devicesAuthProxy.stObj.CognomeNome);
- hlUser.DataBind();
- // salvo gruppo...
- if (devicesAuthProxy.stObj.isAuth)
- {
- // se tutto ok
- memLayer.ML.setSessionVal("Gruppo", devicesAuthProxy.stObj.rigaUtente.CodGruppo);
- answ = true;
- }
+ if (email != "")
+ {
+ // aggiorno descrizione (user agent) ed IP...
+ userAgent = Request.UserAgent;
+ postazione_IP = Request.UserHostAddress;
+ // controllo IP e DeviceDescription x eventuale update
+ if (device != null)
+ {
+ if (((device.lastIPv4 != postazione_IP) || (device.Description != userAgent)))
+ {
+ try
+ {
+ // salvo ultimo "contatto" del device aggiornando descrizione ed IP
+ devicesAuthProxy.stObj.taAnagDev.updateIP(device.IdxDevice, DateTime.Now, postazione_IP, userAgent);
+ }
+ catch
+ { }
+ }
+ }
+ // salvo in sessione utente l'email...
+ memLayer.ML.setSessionVal("email", email);
+ // avvio utente...
+ devicesAuthProxy.stObj.startUpUtente(email);
+ // salvo dati di AUTH OP (x visualizzazione in testata...)
+ OpAuth.startOpAuth(email, devicesAuthProxy.stObj.CognomeNome);
+ hlUser.DataBind();
+ // salvo gruppo...
+ if (devicesAuthProxy.stObj.isAuth)
+ {
+ // se tutto ok
+ memLayer.ML.setSessionVal("Gruppo", devicesAuthProxy.stObj.rigaUtente.CodGruppo);
+ answ = true;
+ }
- }
- }
- }
- catch (Exception exc)
- {
- logger.lg.scriviLog(string.Format("Errore in checkAuthCookie:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
- }
- return answ;
+ }
}
- ///
- /// resetta utente
- ///
- private void ResetUser()
+ }
+ catch (Exception exc)
+ {
+ logger.lg.scriviLog(string.Format("Errore in checkAuthCookie:{0}{1}", Environment.NewLine, exc), tipoLog.EXCEPTION);
+ }
+ return answ;
+ }
+ ///
+ /// resetta utente
+ ///
+ private void ResetUser()
+ {
+ devicesAuthProxy.stObj.clearAllUserData();
+ // svuoto cookie...
+ memLayer.ML.setCookieVal(devicesAuthProxy.AuthCookieName, "");
+ memLayer.ML.emptyCookieVal(devicesAuthProxy.AuthCookieName);
+ }
+ ///
+ /// classe grafica da pagina corrente
+ ///
+ ///
+ ///
+ public string liClass(string nomeElem)
+ {
+ string answ = "";
+ if (user_std.pagCorrente != "")
+ {
+ try
{
- devicesAuthProxy.stObj.clearAllUserData();
- // svuoto cookie...
- memLayer.ML.setCookieVal(devicesAuthProxy.AuthCookieName, "");
- memLayer.ML.emptyCookieVal(devicesAuthProxy.AuthCookieName);
+ if (nomeElem.IndexOf(user_std.pagCorrente) >= 0) answ = "active";
}
- ///
- /// classe grafica da pagina corrente
- ///
- ///
- ///
- public string liClass(string nomeElem)
+ catch
+ { }
+ }
+ return answ;
+ }
+ ///
+ /// tooltip che indica se user autorizzato
+ ///
+ public string usrAuthToolTip
+ {
+ get
+ {
+ string answ = "";
+ try
{
- string answ = "";
- if (user_std.pagCorrente != "")
- {
- try
- {
- if (nomeElem.IndexOf(user_std.pagCorrente) >= 0) answ = "active";
- }
- catch
- { }
- }
- //else
- //{
- // try
- // {
- // if (nomeElem == "default") answ = "active";
- // }
- // catch
- // { }
- //}
- return answ;
+ if (userAuthOk)
+ {
+ answ = string.Format("{0} - {1}", traduci("UserAuthOk"), OpAuth.currAuth.CognomeNome);
+ }
+ else
+ {
+ answ = traduci("UserAuthKo");
+ }
}
- ///
- /// tooltip che indica se user autorizzato
- ///
- public string usrAuthToolTip
+ catch
+ { }
+ return answ;
+ }
+ }
+ ///
+ /// text x user autorizzato
+ ///
+ public string usrAuthText
+ {
+ get
+ {
+ string answ = "...";
+ try
{
- get
- {
- string answ = "";
- try
- {
- if (userAuthOk)
- {
- answ = string.Format("{0} - {1}", traduci("UserAuthOk"), OpAuth.currAuth.CognomeNome);
- }
- else
- {
- answ = traduci("UserAuthKo");
- }
- }
- catch
- { }
- return answ;
- }
+ if (userAuthOk)
+ {
+ answ = OpAuth.currAuth.CognomeNome;
+ }
+ else
+ {
+ answ = "...";
+ }
}
- ///
- /// text x user autorizzato
- ///
- public string usrAuthText
+ catch
+ { }
+ return answ;
+ }
+ }
+ ///
+ /// css x colore icona user auth
+ ///
+ public string usrAuthCss
+ {
+ get
+ {
+ string answ = "";
+ try
{
- get
- {
- string answ = "...";
- try
- {
- if (userAuthOk)
- {
- answ = OpAuth.currAuth.CognomeNome;
- }
- else
- {
- answ = "...";
- }
- }
- catch
- { }
- return answ;
- }
+ if (userAuthOk)
+ {
+ answ = "checkOk";
+ }
+ else
+ {
+ answ = "checkKo";
+ }
}
- ///
- /// css x colore icona user auth
- ///
- public string usrAuthCss
+ catch
+ { }
+ return answ;
+ }
+ }
+ protected bool userAuthOk
+ {
+ get
+ {
+ return OpAuth.isAuth || devicesAuthProxy.stObj.isAuth;
+ }
+ }
+ ///
+ /// verifica visibilità in base al menù...
+ ///
+ ///
+ ///
+ public string checkShow(string nomeMenu)
+ {
+ string answ = "hidden ";
+ // verifico: se è userIsSuperAdmin vede tutto
+ if (userIsSuperAdmin)
+ {
+ answ = "";
+ }
+ else if (userIsCapoOfficina)
+ {
+ // controllo in base a cosa richiesto...
+ if (nomeMenu == "Settings")
{
- get
- {
- string answ = "";
- try
- {
- if (userAuthOk)
- {
- answ = "checkOk";
- }
- else
- {
- answ = "checkKo";
- }
- }
- catch
- { }
- return answ;
- }
+ answ = "hidden ";
}
- protected bool userAuthOk
+ else
{
- get
- {
- return OpAuth.isAuth || devicesAuthProxy.stObj.isAuth;
- }
+ answ = "";
}
- ///
- /// verifica visibilità in base al menù...
- ///
- ///
- ///
- public string checkShow(string nomeMenu)
+ }
+ else if (userIsAnagAdmin)
+ {
+ // controllo in base a cosa richiesto...
+ if ((nomeMenu == "Anagrafiche") || (nomeMenu == "Settings"))
{
- string answ = "hidden ";
- // verifico: se è userIsSuperAdmin vede tutto
- if (userIsSuperAdmin)
- {
- answ = "";
- }
- else if (userIsCapoOfficina)
- {
- // controllo in base a cosa richiesto...
- if (nomeMenu == "Settings")
- {
- answ = "hidden ";
- }
- else
- {
- answ = "";
- }
- }
- else if (userIsAnagAdmin)
- {
- // controllo in base a cosa richiesto...
- if ((nomeMenu == "Anagrafiche") || (nomeMenu == "Settings"))
- {
- answ = "hidden ";
- }
- else
- {
- answ = "";
- }
- }
- else
- {
- // controllo in base a cosa richiesto...
- if (nomeMenu == "Collaudi")
- {
- answ = "";
- }
- else
- {
- answ = "hidden ";
- }
- }
- return answ;
+ answ = "hidden ";
}
- ///
- /// wrapper traduzione
- ///
- ///
- ///
- public string traduci(object lemma)
+ else
{
- return user_std.UtSn.Traduci(lemma.ToString());
+ answ = "";
}
- ///
- /// verifica se utente sia SuperAdmin
- ///
- public bool userIsSuperAdmin
+ }
+ else
+ {
+ // controllo in base a cosa richiesto...
+ if (nomeMenu == "Collaudi")
{
- get
- {
- return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("SuperAdminRole"));
- }
+ answ = "";
}
- ///
- /// verifica se utente sia SuperUser
- ///
- public bool userIsCapoOfficina
+ else
{
- get
- {
- return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("CapoOfficinaRole"));
- }
- } ///
- /// verifica se utente sia SuperUser
- ///
- public bool userIsCapoGruppo
- {
- get
- {
- return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("CapoGruppo"));
- }
+ answ = "hidden ";
}
- ///
- /// verifica se utente sia SuperUser
- ///
- public bool userIsAnagAdmin
- {
- get
- {
- return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("AnagAdminRole"));
- }
- }
- ///
- /// verifica se la pagina abbia abilitato il search
- ///
- public bool pageHasSearch { get; set; }
+ }
+ return answ;
+ }
+ ///
+ /// wrapper traduzione
+ ///
+ ///
+ ///
+ public string traduci(object lemma)
+ {
+ return user_std.UtSn.Traduci(lemma.ToString());
+ }
+ ///
+ /// verifica se utente sia SuperAdmin
+ ///
+ public bool userIsSuperAdmin
+ {
+ get
+ {
+ return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("SuperAdminRole"));
+ }
+ }
+ ///
+ /// verifica se utente sia SuperUser
+ ///
+ public bool userIsCapoOfficina
+ {
+ get
+ {
+ return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("CapoOfficinaRole"));
+ }
+ } ///
+ /// verifica se utente sia SuperUser
+ ///
+ public bool userIsCapoGruppo
+ {
+ get
+ {
+ return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("CapoGruppo"));
+ }
+ }
+ ///
+ /// verifica se utente sia SuperUser
+ ///
+ public bool userIsAnagAdmin
+ {
+ get
+ {
+ return devicesAuthProxy.stObj.userHasRight(memLayer.ML.CRS("AnagAdminRole"));
+ }
+ }
+ ///
+ /// verifica se la pagina abbia abilitato il search
+ ///
+ public bool pageHasSearch { get; set; }
#if false
public bool pageHasSearch
{
@@ -466,30 +457,30 @@ namespace CMS_SC.WebUserControls
}
#endif
- ///
- /// modifica campo ricerca...
- ///
- ///
- ///
- protected void txtSearch_TextChanged(object sender, EventArgs e)
- {
- // salvo in sessione
- memLayer.ML.setSessionVal("searchVal", txtSearch.Text.Trim());
- }
- ///
- /// valore ricerca
- ///
- public string searchVal
- {
- get
- {
- return txtSearch.Text.Trim();
- }
- set
- {
- txtSearch.Text = value;
- memLayer.ML.setSessionVal("searchVal", value);
- }
- }
+ ///
+ /// modifica campo ricerca...
+ ///
+ ///
+ ///
+ protected void txtSearch_TextChanged(object sender, EventArgs e)
+ {
+ // salvo in sessione
+ memLayer.ML.setSessionVal("searchVal", txtSearch.Text.Trim());
}
+ ///
+ /// valore ricerca
+ ///
+ public string searchVal
+ {
+ get
+ {
+ return txtSearch.Text.Trim();
+ }
+ set
+ {
+ txtSearch.Text = value;
+ memLayer.ML.setSessionVal("searchVal", value);
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/CMS_SC/WebUserControls/mod_testata.ascx.designer.cs b/CMS_SC/WebUserControls/mod_testata.ascx.designer.cs
index b380a61..42b8ca3 100644
--- a/CMS_SC/WebUserControls/mod_testata.ascx.designer.cs
+++ b/CMS_SC/WebUserControls/mod_testata.ascx.designer.cs
@@ -13,13 +13,13 @@ namespace CMS_SC.WebUserControls {
public partial class mod_testata {
///
- /// Controllo A4.
+ /// Controllo A1.
///
///
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
///
- protected global::System.Web.UI.HtmlControls.HtmlAnchor A4;
+ protected global::System.Web.UI.HtmlControls.HtmlAnchor A1;
///
/// Controllo imgLogo.
@@ -30,33 +30,6 @@ namespace CMS_SC.WebUserControls {
///
protected global::System.Web.UI.HtmlControls.HtmlImage imgLogo;
- ///
- /// Controllo li1.
- ///
- ///
- /// Campo generato automaticamente.
- /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl li1;
-
- ///
- /// Controllo li2.
- ///
- ///
- /// Campo generato automaticamente.
- /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl li2;
-
- ///
- /// Controllo li3.
- ///
- ///
- /// Campo generato automaticamente.
- /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl li3;
-
///
/// Controllo hlUser.
///