BCWS
@@ -206,7 +205,6 @@
- <%----%>
@@ -273,4 +271,4 @@
-
\ No newline at end of file
+
diff --git a/PROJ-ETS/PROJ-ETS/WebUserControls/mod_fasi.ascx.cs b/PROJ-ETS/PROJ-ETS/WebUserControls/mod_fasi.ascx.cs
index 2b7974f..4bc4c49 100644
--- a/PROJ-ETS/PROJ-ETS/WebUserControls/mod_fasi.ascx.cs
+++ b/PROJ-ETS/PROJ-ETS/WebUserControls/mod_fasi.ascx.cs
@@ -17,6 +17,116 @@ namespace PROJ_ETS.WebUserControls
///
protected void Page_Load(object sender, EventArgs e)
{
+ if (!Page.IsPostBack)
+ {
+ PagCorrente();
+ /// su queste pagine posso andare solo se ho almeno 1 diritto x la pagina corrente ed è soddisfatta almeno 1 condizione:
+ /// - sono SuperUser
+ /// - sono SuperReader (ma non posso modificare...)
+ /// - sono User e sono CC della commessa corrente
+ /// ...altrimenti redirect a pagina unauthorized
+ if (!(isPowerUser || isPowerReader || (isUser && isCurrentCC)))
+ {
+ utils.obj.setSessionVal("_paginaPrecedente", _paginaCorrente);
+ Response.Redirect("unauthorized");
+ }
+ }
+ }
+ ///
+ /// pagina corrente (URL finale)
+ ///
+ public string _paginaCorrente { get; set; }
+ ///
+ /// idx commessa corrente
+ ///
+ public int idxFaseSel
+ {
+ get
+ {
+ return utils.obj.IntSessionObj("idxFase_sel");
+ }
+ }
+ ///
+ /// salva in variabile pagina il nome della pagina corrente
+ ///
+ protected void PagCorrente()
+ {
+ Uri MyUrl = Request.Url;
+ string delimStr = "/";
+ char[] delimiter = delimStr.ToCharArray();
+ string[] finalUrl = MyUrl.LocalPath.ToString().Split(delimiter);
+ int n = finalUrl.Length;
+ _paginaCorrente = finalUrl[n - 1].ToString();
+ }
+ ///
+ /// risponde alla domanda se l'utente sia CC della commessa corrente
+ ///
+ ///
+ public bool isCurrentCC
+ {
+ get
+ {
+ bool answ = false;
+ string CapoCommessa = "";
+ try
+ {
+ CapoCommessa = DataProxy_ProjEts.DP.taDC.GetData(idxFaseSel)[0].CapoCommessa;
+ }
+ catch
+ { }
+ if (user_std.UtSn.currUserNomeCognome == CapoCommessa || user_std.UtSn.currUserCognomeNome == CapoCommessa)
+ {
+ answ = true;
+ }
+ return answ;
+ }
+ }
+ ///
+ /// risponde alla domanda se l'utente abbia permesso tipo writable (S) nel permessi2funzione
+ ///
+ ///
+ public bool isWritable()
+ {
+ bool answ = false;
+ if (_paginaCorrente == null)
+ {
+ PagCorrente();
+ }
+ answ = user_std.UtSn.isPageWriteEnabled(_paginaCorrente);
+ return answ;
+ }
+ ///
+ /// risponde alla domanda se l'utente sia PowerUser
+ ///
+ ///
+ public bool isPowerUser
+ {
+ get
+ {
+ return user_std.UtSn.userHasRight("PowerUser");
+ }
+ }
+ ///
+ /// risponde alla domanda se l'utente sia PowerReader
+ ///
+ ///
+ public bool isPowerReader
+ {
+ get
+ {
+ return user_std.UtSn.userHasRight("PowerReader");
+ }
+ }
+ ///
+ /// risponde alla domanda se l'utente sia User
+ ///
+ ///
+ public bool isUser
+ {
+ get
+ {
+ return user_std.UtSn.userHasRight("User");
+ }
}
///
/// effettua update controllo