예제 #1
0
        /// <summary>
        /// nuovo per la gestione degli utenti profilati:
        /// se l'utente è di tipo USER ADMIN, imposta l'amministrazione corrente
        /// </summary>
        /// <returns></returns>
        private bool setCurrAmmAndMenu()
        {
            bool retValue = true;

            try
            {
                // reperimento dati dell'amministrazione alla quale appartiene l'utente loggato
                DocsPAWA.AdminTool.Manager.AmministrazioneManager manager = new DocsPAWA.AdminTool.Manager.AmministrazioneManager();
                //manager.GetAmmAppartenenza(this._userID, this._userPWD);
                if (datiAmministratore != null && !string.IsNullOrEmpty(datiAmministratore.idAmministrazione))
                {
                    manager.InfoAmmCorrente(datiAmministratore.idAmministrazione);
                }
                else
                {
                    manager.GetAmmAppartenenza(this._userID, this._userPWD);
                }
                if (manager.getCurrentAmm() != null)
                {
                    DocsPAWA.DocsPaWR.InfoAmministrazione amm = manager.getCurrentAmm();

                    string codice      = amm.Codice;
                    string descrizione = amm.Descrizione;
                    string dominio     = "";
                    string idAmm       = amm.IDAmm;

                    // imposta la sessione come se l'utente fosse passato dalla homepage ed avesse impostato l'amministrazione da gestire
                    Session["AMMDATASET"] = codice + "@" + descrizione + "@" + dominio + "@" + idAmm;

                    // prende le voci di menu associate a questo USER ADMIN
                    manager.GetAmmListaVociMenu(datiAmministratore.idCorrGlobali, amm.IDAmm);
                    DocsPAWA.DocsPaWR.Menu[] listaVociMenu = manager.getListaVociMenu();

                    if (listaVociMenu != null && listaVociMenu.Length > 0)
                    {
                        datiAmministratore.VociMenu = listaVociMenu;

                        DocsPAWA.AdminTool.Manager.SessionManager session = new DocsPAWA.AdminTool.Manager.SessionManager();
                        session.removeUserAmmSession();
                        session.setUserAmmSession(datiAmministratore);
                    }
                }
                else
                {
                    retValue = false;
                }
            }
            catch
            {
                retValue = false;
            }

            return(retValue);
        }
예제 #2
0
        protected void InitializePage()
        {
            try
            {
                DocsPAWA.AdminTool.Manager.SessionManager         session    = new DocsPAWA.AdminTool.Manager.SessionManager();
                DocsPAWA.AdminTool.Manager.AmministrazioneManager ammManager = new DocsPAWA.AdminTool.Manager.AmministrazioneManager();
                DocsPaWR.InfoUtenteAmministratore infoAmministratore         = session.getUserAmmSession();

                if (infoAmministratore.tipoAmministratore == "2" || infoAmministratore.tipoAmministratore == "3")
                {
                    this.ddl_amministrazione.Items.Clear();
                    ammManager.InfoAmmCorrente(infoAmministratore.idAmministrazione);
                    DocsPaWR.InfoAmministrazione infoAmm = ammManager.getCurrentAmm();
                    this.ddl_amministrazione.Items.Add(new ListItem()
                    {
                        Text     = string.Format("[{0}] {1}", infoAmm.Codice, infoAmm.Descrizione),
                        Value    = infoAmm.IDAmm,
                        Selected = true
                    });

                    this.ddl_amministrazione.Enabled = false;
                }
                else
                {
                    ammManager.ListaAmministrazioni();

                    if (ammManager.getListaAmministrazioni() != null && ammManager.getListaAmministrazioni().Count > 0)
                    {
                        this.ddl_amministrazione.Items.Clear();
                        this.ddl_amministrazione.Items.Add(new ListItem()
                        {
                            Text = string.Empty, Value = "0"
                        });
                        foreach (DocsPaWR.InfoAmministrazione amm in ammManager.getListaAmministrazioni())
                        {
                            ListItem item = new ListItem()
                            {
                                Text  = string.Format("[{0}] {1}", amm.Codice, amm.Descrizione),
                                Value = amm.IDAmm
                            };
                            this.ddl_amministrazione.Items.Add(item);
                            this.ddl_amministrazione.Enabled = true;
                        }
                    }
                }

                this.ddl_dataEsecuzione_SelectedIndexChanged(null, null);
            }
            catch (Exception)
            {
            }
        }