Files
MoonPro.net/MP-Site/WebUserControls/mod_menuTop.ascx.cs
T
2018-11-10 11:26:40 +01:00

183 lines
4.8 KiB
C#

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<string, string> 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<string, string> 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();
}
}
}
/// <summary>
/// imposta il tempo di scadenza del timer x il refresh della pagina (della parte top) per evitare che la sessione sul server scada
/// </summary>
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();
}
}
}