75 lines
1.9 KiB
C#
75 lines
1.9 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Configuration;
|
|
using System.Collections;
|
|
using System.Web;
|
|
using System.Web.Security;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using System.Web.UI.WebControls.WebParts;
|
|
using System.Web.UI.HtmlControls;
|
|
using SteamWare;
|
|
|
|
public partial class mod_menuSx : ApplicationUserControl
|
|
{
|
|
/// <summary>
|
|
/// stringa da pre-mettere all'URL x corretta generazione
|
|
/// </summary>
|
|
public string preUrlString
|
|
{
|
|
set
|
|
{
|
|
memLayer.ML.setSessionVal("preUrlString", value);
|
|
}
|
|
get
|
|
{
|
|
return memLayer.ML.StringSessionObj("preUrlString");
|
|
}
|
|
}
|
|
|
|
protected override void aggiornaControlliDataGL()
|
|
{
|
|
// se l'utente c'è...
|
|
if (user_std.UtSn.isAuth && !Page.IsPostBack)
|
|
{
|
|
updateTreeMenu();
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// aggiornamento del menù
|
|
/// </summary>
|
|
private void updateTreeMenu()
|
|
{
|
|
fixPreMenuString();
|
|
// sostituisco stringa "url="~/ la stringa pre richiesta
|
|
XmlDataSource1.Data = user_std.UtSn.mappaSito.Replace("url=\"~/", string.Format("url=\"~/{0}/", preUrlString));
|
|
XmlDataSource1.XPath = "mainMenu/menu";
|
|
XmlDataSource1.DataBind();
|
|
}
|
|
/// <summary>
|
|
/// sistema stringa pre del menù
|
|
/// </summary>
|
|
private void fixPreMenuString()
|
|
{
|
|
// controllo url
|
|
Uri MyUrl = Request.Url;
|
|
// aggiorno carattere pre del menù!
|
|
string delimStr = "/";
|
|
char[] delimiter = delimStr.ToCharArray();
|
|
string[] finalUrl = MyUrl.LocalPath.ToString().Split(delimiter);
|
|
int n = finalUrl.Length;
|
|
if (n >= 2)
|
|
{
|
|
preUrlString = finalUrl[n - 2].ToString();
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// forza l'update del menù sx
|
|
/// </summary>
|
|
public void forzaUpdateMenu()
|
|
{
|
|
user_std.UtSn.ricaricaMappaSito();
|
|
updateTreeMenu();
|
|
}
|
|
}
|