예제 #1
0
        /// <summary>
        /// Renders the items in the list.
        /// </summary>
        private void Render()
        {
            AclResources res = CurrentResource;

            string[] temp = null;
            switch (res)
            {
            case AclResources.Globals:
                temp = Actions.ForGlobals.All;
                break;

            case AclResources.Namespaces:
                temp = Actions.ForNamespaces.All;
                break;

            case AclResources.Pages:
                temp = Actions.ForPages.All;
                break;

            case AclResources.Directories:
                temp = Actions.ForDirectories.All;
                break;

            default:
                throw new NotSupportedException("ACL Resource not supported");
            }

            // Add full-control action
            string[] actions = new string[temp.Length + 1];
            actions[0] = Actions.FullControl;
            Array.Copy(temp, 0, actions, 1, temp.Length);

            lstActionsGrant.Items.Clear();
            lstActionsDeny.Items.Clear();
            foreach (string action in actions)
            {
                ListItem item = new ListItem(GetName(res, action), action);
                lstActionsGrant.Items.Add(item);
                ListItem itemBlank = new ListItem("&nbsp;", action);
                lstActionsDeny.Items.Add(itemBlank);
            }
        }
예제 #2
0
        private string GetName(AclResources res, string action)
        {
            switch (res)
            {
            case AclResources.Globals:
                return(Actions.ForGlobals.GetFullName(action));

            case AclResources.Namespaces:
                return(Actions.ForNamespaces.GetFullName(action));

            case AclResources.Pages:
                return(Actions.ForPages.GetFullName(action));

            case AclResources.Directories:
                return(Actions.ForDirectories.GetFullName(action));

            default:
                throw new NotSupportedException("ACL Resource not supported");
            }
        }
예제 #3
0
 private string GetName(AclResources res, string action)
 {
     switch(res) {
         case AclResources.Globals:
             return Actions.ForGlobals.GetFullName(action);
         case AclResources.Namespaces:
             return Actions.ForNamespaces.GetFullName(action);
         case AclResources.Pages:
             return Actions.ForPages.GetFullName(action);
         case AclResources.Directories:
             return Actions.ForDirectories.GetFullName(action);
         default:
             throw new NotSupportedException("ACL Resource not supported");
     }
 }