using SteamWare; using System; using System.Collections.Generic; using System.Web.UI; namespace MP_SITE.WebUserControls { public partial class mod_menuTop : System.Web.UI.UserControl { private string _titleString; #region gestione eventi public event EventHandler eh_toggleMenuSx; public event EventHandler eh_reqUpdateMenu; #endregion 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 = 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()); } } protected void bindControlli() { if (!Page.IsPostBack) { //lnkHelp.ToolTip = traduci("ApriManualeHelp"); // solo se user è auth... if (user_std.UtSn.isAuth) { if (_titleString != "") { _titleString = ""; memLayer.ML.setSessionVal("_titleString",_titleString); memLayer.ML.setSessionVal("SessionUpdateMenu", true); } else { memLayer.ML.setSessionVal("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() { //Timer1.Interval = SteamWare.memLayer.ML.CRI("intUpdatePagina_ms"); } 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); } } public string scriviOra() { return string.Format("{0:d} - {0:HH.mm.ss}", DateTime.Now); } protected void HiddenHeight_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } protected void HiddenWidth_ValueChanged(object sender, EventArgs e) { updateWindowSize(); } } }