Files
2023-09-12 19:04:38 +02:00

180 lines
5.1 KiB
C#

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<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());
}
}
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
}
}