Files
SSC/CMS_SC/WebUserControls/mod_elencoDossiers.ascx.cs
2018-03-05 16:30:25 +01:00

179 lines
4.0 KiB
C#

using CMS_SC_Data;
using SteamWare;
using System;
using System.Web.UI.WebControls;
namespace CMS_SC.WebUserControls
{
public partial class mod_elencoDossiers : System.Web.UI.UserControl
{
/// <summary>
/// selezione valore in DettScheda
/// </summary>
public event EventHandler eh_selezioneValore;
/// <summary>
/// eliminazione Scheda
/// </summary>
public event EventHandler eh_deleteVal;
/// <summary>
/// sollevo evento selezione
/// </summary>
protected void raiseEvent()
{
// sollevo evento nuovo valore...
if (eh_selezioneValore != null)
{
eh_selezioneValore(this, new EventArgs());
}
}
protected void Page_Load(object sender, EventArgs e)
{
}
/// <summary>
/// dimensione pagina grid view
/// </summary>
public int pageSize
{
get
{
return grView.PageSize;
}
set
{
grView.PageSize = value;
}
}
/// <summary>
/// dossier selezionato
/// </summary>
public int idxDossier
{
get
{
int answ = 0;
try
{
answ = Convert.ToInt32(grView.SelectedDataKey["IdxDossier"]);
}
catch
{ }
return answ;
}
}
/// <summary>
/// selezione scheda...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
raiseEvent();
}
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// resetto selezione
/// </summary>
private void resetSelezione()
{
grView.SelectedIndex = -1;
grView.DataBind();
raiseEvent();
}
/// <summary>
/// wrapper traduzione
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
/// <summary>
/// imposta se sia abilitato delete "in genere" per il controllo
/// </summary>
public bool showDelete
{
get
{
return memLayer.ML.BoolSessionObj(string.Format("canDel_{0}", devicesAuthProxy.pagCorrente));
}
set
{
if (value != memLayer.ML.BoolSessionObj(string.Format("canDel_{0}", devicesAuthProxy.pagCorrente)))
{
memLayer.ML.setSessionVal(string.Format("canDel_{0}", devicesAuthProxy.pagCorrente), value);
grView.DataBind();
}
}
}
protected bool enableDelDossier
{
get
{
return memLayer.ML.BoolSessionObj("enableDelDossier");
}
}
public bool userCanDel(object _idxDossier)
{
// se è superuser è true SE non ha misure...
bool answ = false;
int idxDossier = 0;
int trovati = 0;
// altrimenti verifico se sia un dossier "vuoto" e quindi eliminabile...
try
{
idxDossier = Convert.ToInt32(_idxDossier);
// cerco se ci sono record misure (NON devono esserci...)
trovati = DtProxy.man.taMis.getByDossier(idxDossier).Rows.Count;
}
catch
{ }
if (trovati == 0)
{
answ = true;
}
return answ || (userIsAdmin && enableDelDossier);
}
/// <summary>
/// determina se user sia SuperAdmin
/// </summary>
public bool userIsAdmin
{
get
{
bool answ = false;
try
{
answ = devicesAuthProxy.stObj.userHasRight("SuperAdmin");
}
catch
{ }
return answ;
}
}
public void doUpdate()
{
grView.DataBind();
}
protected void grView_RowDeleted(object sender, GridViewDeletedEventArgs e)
{
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_deleteVal != null)
{
eh_deleteVal(this, new EventArgs());
}
}
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
}
}
}