Files
2019-12-31 10:00:53 +01:00

181 lines
5.2 KiB
C#

using SteamWare;
using System;
using System.Collections.Generic;
using System.Web.UI;
namespace ES3.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());
}
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)
{
//lnkShowHide.Text = user_std.UtSn.Traduci("lnkShowHide");
//lblTitle.Text = user_std.UtSn.Traduci(SteamWare.memLayer.ML.CRS("titleApp"));
if (_titleString != "")
{
//// traduzione di tutti i termini
//lblMessUtente.Text = user_std.UtSn.Traduci(_titleString);
////doppio in english!
//lblMessUtenteEn.Text = "(" + user_std.UtSn.TraduciEn(_titleString) + ")";
_titleString = "";
Session["_titleString"] = _titleString;
Session["SessionUpdateMenu"] = true;
}
else
{
//string titolo = user_std.UtSn.Traduci(SteamWare.memLayer.ML.CRS("welcomeApp"));
//lblMessUtente.Text = string.Format("{0} - {1}", titolo, memLayer.ML.CRS("SiteName"));
//lblMessUtenteEn.Text = "";
Session["SessionUpdateMenu"] = false;
}
btnLogOut.Text = user_std.UtSn.Traduci("LogOut");
btnUpdate.Text = user_std.UtSn.Traduci("Update");
//lblUser.Text = String.Format("{0}: {1}", user_std.UtSn.Traduci("User"), user_std.UtSn.CognomeNome);
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()
{
}
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();
}
}
}