using SteamWare; using System; using System.Collections.Generic; using System.Web.UI; namespace MP_ADM.WebUserControls { public partial class mod_menuTop : BaseUserControl { private string _titleString; #region gestione eventi public event EventHandler eh_toggleMenuSx; public event EventHandler eh_reqUpdateMenu; #endregion gestione eventi protected void Page_Load(object sender, EventArgs e) { btnLogOut.Visible = user_std.UtSn.isForcedUser; if (memLayer.ML.isInSessionObject("doUpdateNow")) { doFullDataUpdate(); memLayer.ML.emptySessionVal("doUpdateNow"); } } protected void btnLogOut_Click(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("forceUser.aspx"); } protected void btnUpdate_Click(object sender, EventArgs e) { doFullDataUpdate(); updateWindowSize(); } private void doFullDataUpdate() { // salvo i dati attuali... string cod_cdc = memLayer.ML.StringSessionObj("valRicercaCdC"); string lingua = user_std.UtSn.lingua; string USER_NAME = memLayer.ML.StringSessionObj("USER_NAME"); string DOMINIO = memLayer.ML.StringSessionObj("DOMINIO"); bool isForceUser = user_std.UtSn.isForcedUser; // salvo i valori delle tab in session... Dictionary sessionParam = memLayer.ML.valSess2SurvUpd; // svuoto session e cache per rileggere i dati da Db Session.RemoveAll(); memLayer.ML.flushRegisteredCache(); // rimemorizzo memLayer.ML.setSessionVal("valRicercaCdC", cod_cdc); user_std.UtSn.startUpUtente(DOMINIO, USER_NAME); user_std.UtSn.lingua = lingua; user_std.UtSn.isForcedUser = isForceUser; DataWrap.DW.resetVocabolario(); // risalvo in session i valori... foreach (KeyValuePair kvp in sessionParam) { memLayer.ML.setSessionVal(kvp.Key, kvp.Value, true); } // cambio visibilità del menù laterale... if (eh_reqUpdateMenu != null) { eh_reqUpdateMenu(this, new EventArgs()); } Response.Redirect(Page.Request.Url.ToString()); } protected void bindControlli() { if (!Page.IsPostBack) { // solo se user è auth... if (user_std.UtSn.isAuth) { if (_titleString != "") { _titleString = ""; Session["_titleString"] = _titleString; Session["SessionUpdateMenu"] = true; } else { Session["SessionUpdateMenu"] = false; } btnLogOut.Text = user_std.UtSn.Traduci("LogOut"); btnUpdate.Text = user_std.UtSn.Traduci("Update"); setTimer(); setClock(); } } } /// /// 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() { } protected void lnkShowHide_Click(object sender, EventArgs e) { // cambio visibilità del menù laterale... if (eh_toggleMenuSx != null) { eh_toggleMenuSx(this, new EventArgs()); } } protected void Timer1_Tick(object sender, EventArgs e) { setClock(); } private void setClock() { //lblDateTime.Text = DateTime.Now.ToString("HH:mm:ss"); } protected void lblUser_Click(object sender, EventArgs e) { Response.Redirect("./chLang.aspx"); } protected override void OnInit(EventArgs e) { base.OnInit(e); btnUpdate.Text = "Update"; updateWindowSize(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); } private void updateWindowSize() { if (HiddenHeight.Value != "") { memLayer.ML.setSessionVal("WindowHeight", HiddenHeight.Value, true); } if (HiddenWidth.Value != "") { memLayer.ML.setSessionVal("WindowWidth", HiddenWidth.Value); } } protected void HiddenHeight_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } protected void HiddenWidth_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } } }