Esempio n. 1
0
        public Dictionary <string, string> GetFunctionalityDescriptionDictionary()
        {
            Dictionary <string, string> funcDescs = null;
            string sql = null;

            Logger.Log("Getting the functionality description dictionary ...");
            try
            {
                sql = GroupQB.GetSelectFunctionDescriptionSql();

                List <string[]> data = dbInfo.GetDataList(sql);
                if (data == null)
                {
                    Logger.LogError(5, "Error getting functionality description for data sql: " + sql);
                    return(null);
                }
                else if (data.Count == 0)
                {
                    Logger.Log("No record was found in the database for sql :" + sql);
                    return(new Dictionary <string, string>());
                }

                string functionalityEnumString = null;
                SecureRequestContext.FunctionalityType functionalityEnumVal = SecureRequestContext.FunctionalityType.UNKNOWN;
                string functionalityDesc = null;
                funcDescs = new Dictionary <string, string>();
                foreach (string[] row in data)
                {
                    functionalityEnumString = row[0];
                    functionalityDesc       = row[1];

                    try
                    {
                        functionalityEnumVal =
                            (SecureRequestContext.FunctionalityType)
                            Enum.Parse(typeof(SecureRequestContext.FunctionalityType),
                                       functionalityEnumString);
                    }
                    catch (Exception ex)
                    {
                        Logger.LogError(5, "Error parsing Functionality Enum String at " + ex);
                        functionalityEnumVal = SecureRequestContext.FunctionalityType.UNKNOWN;
                    }

                    if (functionalityEnumVal != SecureRequestContext.FunctionalityType.UNKNOWN &&
                        !funcDescs.ContainsKey(functionalityEnumString) &&
                        functionalityDesc != null)
                    {
                        funcDescs.Add(functionalityEnumString, functionalityDesc);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.LogError(5, "Error Getting Functionality description dictionary at " + ex);
                return(null);
            }

            return(funcDescs);
        }
Esempio n. 2
0
        public bool IsContained(List <GroupPermissions.GroupFunctionalityPermission> groupPerms, SecureRequestContext.FunctionalityType functionType)
        {
            bool isContained = false;

            if (groupPerms == null || groupPerms.Count == 0)
            {
                return(false);
            }

            try
            {
                foreach (GroupPermissions.GroupFunctionalityPermission groupPerm in groupPerms)
                {
                    if (groupPerm.FunctionType == functionType)
                    {
                        return(true);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.LogError(5, "Problem checking if group functionality permission is contained in group perms list at " + ex);
                return(false);
            }

            return(isContained);
        }