using SteamWare; using System; using System.Collections.Generic; using System.Web.UI; namespace MP_SITE.WebUserControls { public partial class mod_menuTop : baseUserControl { #region Public Events public event EventHandler eh_reqUpdateMenu; public event EventHandler eh_toggleMenuSx; #endregion Public Events #region Private Methods private void doFullDataUpdate() { // salvo i dati attuali... string cod_cdc = SteamWare.memLayer.ML.StringSessionObj("valRicercaCdC"); string lingua = user_std.UtSn.lingua; string USER_NAME = SteamWare.memLayer.ML.StringSessionObj("USER_NAME"); string DOMINIO = SteamWare.memLayer.ML.StringSessionObj("DOMINIO"); bool isForceUser = user_std.UtSn.isForcedUser; // salvo i valori delle tab in session... Dictionary sessionParam = SteamWare.memLayer.ML.valSess2SurvUpd; // svuoto session e cache per rileggere i dati da Db Session.RemoveAll(); SteamWare.memLayer.ML.flushRegisteredCache(); // rimemorizzo SteamWare.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) { SteamWare.memLayer.ML.setSessionVal(kvp.Key, kvp.Value, true); } // cambio visibilità del menù laterale... if (eh_reqUpdateMenu != null) { eh_reqUpdateMenu(this, new EventArgs()); } if (memLayer.ML.CRB("UpdateToDefault")) { Response.Redirect("Default.aspx"); } else { Response.Redirect(Page.Request.Url.ToString()); } } private void updateWindowSize() { if (!string.IsNullOrEmpty(HiddenHeight.Value)) { memLayer.ML.setSessionVal("WindowHeight", HiddenHeight.Value, true); } if (!string.IsNullOrEmpty(HiddenWidth.Value)) { memLayer.ML.setSessionVal("WindowWidth", HiddenWidth.Value); } } #endregion Private Methods #region Protected Methods protected void btnLogOut_Click(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("forceUser.aspx"); } protected void btnUpdate_Click(object sender, EventArgs e) { doFullDataUpdate(); updateWindowSize(); } protected void ddlLanguage_SelectedIndexChanged(object sender, EventArgs e) { // recupero string newLang = ddlLanguage.SelectedValue; if (!string.IsNullOrEmpty(newLang)) { user_std.UtSn.lingua = newLang; } doTranslate(); } protected override void doTranslate() { lblTitolo.Text = traduci(pageName); //btnUpdate.Text = traduci("Update"); } protected void HiddenHeight_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } protected void HiddenWidth_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } protected void lblUser_Click(object sender, EventArgs e) { Response.Redirect("./chLang.aspx"); } protected void lnkShowHide_Click(object sender, EventArgs e) { // cambio visibilità del menù laterale... if (eh_toggleMenuSx != null) { eh_toggleMenuSx(this, new EventArgs()); } } protected override void OnInit(EventArgs e) { base.OnInit(e); updateWindowSize(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); } protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); } protected override void Page_Load(object sender, EventArgs e) { btnLogOut.Visible = user_std.UtSn.isForcedUser; if (!Page.IsPostBack) { try { ddlLanguage.SelectedValue = user_std.UtSn.lingua; } catch { } doTranslate(); } if (memLayer.ML.isInSessionObject("doUpdateNow")) { doFullDataUpdate(); memLayer.ML.emptySessionVal("doUpdateNow"); } } #endregion Protected Methods #region Public Methods public string scriviOra() { return string.Format("{0:d} - {0:HH.mm.ss}", DateTime.Now); } #endregion Public Methods } }