diff --git a/GPW_Admin/WebUserControls/cmp_footer.ascx b/GPW_Admin/WebUserControls/cmp_footer.ascx new file mode 100644 index 0000000..351d7d3 --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_footer.ascx @@ -0,0 +1,18 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_footer.ascx.cs" Inherits="GPW_Admin.WebUserControls.cmp_footer" %> + \ No newline at end of file diff --git a/GPW_Admin/WebUserControls/cmp_footer.ascx.cs b/GPW_Admin/WebUserControls/cmp_footer.ascx.cs new file mode 100644 index 0000000..54a578c --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_footer.ascx.cs @@ -0,0 +1,60 @@ +using SteamWare; +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace GPW_Admin.WebUserControls +{ + public partial class cmp_footer : BaseUserControl + { + #region Public Events + + public event EventHandler eh_doRefresh; + + #endregion Public Events + + #region Private Methods + + private void setClock() + { + lblDateTime.Text = DateTime.Now.ToString("ddd dd.MM.yyyy, HH:mm:ss"); + lblCodOperatore.Text = $"{user_std.UtSn.CognomeNome} ({Page.User.Identity.Name})"; + } + + /// + /// imposta il tempo di scadenza del timer x il refresh della pagina (della parte top) per evitare che la sessione sul server scada + /// + private void setTimer() + { + Timer1.Interval = SteamWare.memLayer.ML.confReadInt("intUpdatePagina_ms"); + } + + #endregion Private Methods + + #region Protected Methods + + protected void Page_Load(object sender, EventArgs e) + { + // sistemo le stringhe... + lblApp.Text = string.Format("{0} v.{1}", ConfigurationManager.AppSettings.Get("appName"), System.Reflection.Assembly.GetExecutingAssembly().GetName().Version); + setTimer(); + setClock(); + } + + protected void Timer1_Tick(object sender, EventArgs e) + { + setClock(); + // se qualcuno ascolta sollevo evento nuovo valore... + if (eh_doRefresh != null) + { + eh_doRefresh(this, new EventArgs()); + } + } + + #endregion Protected Methods + } +} \ No newline at end of file diff --git a/GPW_Admin/WebUserControls/cmp_footer.ascx.designer.cs b/GPW_Admin/WebUserControls/cmp_footer.ascx.designer.cs new file mode 100644 index 0000000..f86543a --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_footer.ascx.designer.cs @@ -0,0 +1,53 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace GPW_Admin.WebUserControls +{ + + + public partial class cmp_footer + { + + /// + /// Controllo lblDateTime. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblDateTime; + + /// + /// Controllo lblCodOperatore. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblCodOperatore; + + /// + /// Controllo lblApp. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Label lblApp; + + /// + /// Controllo Timer1. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.Timer Timer1; + } +} diff --git a/GPW_Admin/WebUserControls/cmp_menuTop.ascx b/GPW_Admin/WebUserControls/cmp_menuTop.ascx new file mode 100644 index 0000000..9c2201d --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_menuTop.ascx @@ -0,0 +1,52 @@ +<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="cmp_menuTop.ascx.cs" Inherits="GPW_Admin.WebUserControls.cmp_menuTop" %> + + + \ No newline at end of file diff --git a/GPW_Admin/WebUserControls/cmp_menuTop.ascx.cs b/GPW_Admin/WebUserControls/cmp_menuTop.ascx.cs new file mode 100644 index 0000000..1fccf80 --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_menuTop.ascx.cs @@ -0,0 +1,176 @@ +using SteamWare; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace GPW_Admin.WebUserControls +{ + public partial class cmp_menuTop : BaseUserControl + { + #region Public Events + + public event EventHandler eh_doRefresh; + + #endregion Public Events + + #region Protected Properties + + /// + /// Valore ricerca attivo + /// + protected string searchVal + { + get + { + return txtSearch.Text.Trim(); + } + set + { + txtSearch.Text = value.Trim(); + } + } + + #endregion Protected Properties + + #region Public Properties + + /// + /// Abilitazione esecuzione anonima + /// + public bool enableAnonym + { + get + { + bool answ = false; + bool.TryParse(hfAnonym.Value, out answ); + return answ; + } + set + { + hfAnonym.Value = value.ToString(); + } + } + + /// + /// imposta visibilità search globale + /// + public bool showSearch + { + get + { + return divSearch.Visible; + } + set + { + divSearch.Visible = value; + } + } + + #endregion Public Properties + + #region Private Methods + + private void checkAuth() + { + // in primis SOLO SE non è permesso login anonymous... + if (!enableAnonym) + { + if (!Page.User.Identity.IsAuthenticated) + { + Response.Redirect("default"); + } + } + } + + private void doSearch() + { + // se searchVal !="" + if (!string.IsNullOrEmpty(searchVal)) + { + memLayer.ML.setSessionVal("valoreSearch", searchVal); + } + else + { + memLayer.ML.emptySessionVal("valoreSearch"); + } + // se qualcuno ascolta sollevo evento nuovo valore... + if (eh_doRefresh != null) + { + eh_doRefresh(this, new EventArgs()); + } + } + + /// + /// aggiornamento del menù + /// + private void updateTreeMenu() + { + // SOLO SE è permesso login anonymous --> nascondo menù! + if (enableAnonym) + { + menu.Visible = false; + } + else + { + try + { + if (string.IsNullOrEmpty(user_std.UtSn.mappaSito)) + { + Response.Redirect("Default", true); + } + XmlMenu.Data = user_std.UtSn.mappaSito; + XmlMenu.XPath = "mainMenu/menu"; + XmlMenu.DataBind(); + } + catch + { + Response.Redirect("default", true); + } + } + } + + #endregion Private Methods + + #region Protected Methods + + /// + /// click su pagina corrente, fa update! + /// + /// + /// + protected void lbnUpdate_Click(object sender, EventArgs e) + { + // SOLO SE non è permesso login anonymous... + if (!enableAnonym) + { + Response.Redirect("default"); + } + } + + protected void lbtSearch_Click(object sender, EventArgs e) + { + doSearch(); + } + + protected void Page_Load(object sender, EventArgs e) + { + if (!Page.IsPostBack) + { + checkAuth(); + searchVal = ""; + doSearch(); + updateTreeMenu(); + } + } + + protected void txtSearch_TextChanged(object sender, EventArgs e) + { + doSearch(); + } + + #endregion Protected Methods + } +} \ No newline at end of file diff --git a/GPW_Admin/WebUserControls/cmp_menuTop.ascx.designer.cs b/GPW_Admin/WebUserControls/cmp_menuTop.ascx.designer.cs new file mode 100644 index 0000000..3e3523c --- /dev/null +++ b/GPW_Admin/WebUserControls/cmp_menuTop.ascx.designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// Codice generato da uno strumento. +// +// Le modifiche a questo file possono causare un comportamento non corretto e verranno perse se +// il codice viene rigenerato. +// +//------------------------------------------------------------------------------ + +namespace GPW_Admin.WebUserControls +{ + + + public partial class cmp_menuTop + { + + /// + /// Controllo hfAnonym. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.HiddenField hfAnonym; + + /// + /// Controllo menu. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.Repeater menu; + + /// + /// Controllo XmlMenu. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.XmlDataSource XmlMenu; + + /// + /// Controllo divSearch. + /// + /// + /// 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 divSearch; + + /// + /// Controllo txtSearch. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.TextBox txtSearch; + + /// + /// Controllo lbtSearch. + /// + /// + /// Campo generato automaticamente. + /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind. + /// + protected global::System.Web.UI.WebControls.LinkButton lbtSearch; + } +}