예제 #1
0
        private void GetResourcesDataForSelectedUserInStore()
        {
            listBoxAssigned.Items.Clear();
            resourcesAvailableListBox.Items.Clear();
            selectedUserResources     = SecurityProfileProcedures.GetListOfResources(_UserVO, _ShopID);
            loggedinUserAllResources  = SecurityProfileProcedures.GetListOfResources(loggedInUser, _ShopID);
            selectedUserOnlyResources = new List <string>();
            List <string> userResources = new List <string>();

            //Populate the assigned resources list
            foreach (string s in selectedUserResources)
            {
                userResources.Add(s);
            }

            foreach (string s in userResources)
            {
                string s1           = s;
                string resourceName = (from actorResource in loggedinUserAllResources
                                       where actorResource == s1
                                       select actorResource).FirstOrDefault();
                if (string.IsNullOrEmpty(resourceName))
                {
                    selectedUserOnlyResources.Add(s1);
                }
            }
            if (loggedinUserAllResources.Count > selectedUserResources.Count)
            {
                foreach (string s in loggedinUserAllResources)
                {
                    string s1           = s;
                    string resourceName = (from actorResource in userResources
                                           where actorResource == s1
                                           select actorResource).FirstOrDefault();
                    if (string.IsNullOrEmpty(resourceName))
                    {
                        loggedinUserOnlyResources.Add(s1);
                    }
                }
            }

            userResources.Sort();
            loggedinUserOnlyResources.Sort();
            selectedUserOnlyResources.Sort();

            listBoxAssigned.Items.AddRange(userResources.ToArray());
            //customListBoxAssigned.Items.AddRange(selectedUserOnlyResources.ToArray());

            //populate the available resources list
            List <string> availableResources = loggedinUserOnlyResources;

            resourcesAvailableListBox.Items.AddRange(availableResources.ToArray());
            updateButtons(_Change_Resources, _Change_Limits);
            if (_ShopID != GlobalDataAccessor.Instance.CurrentSiteId.StoreNumber)
            {
                resourcesAvailableListBox.Enabled = false;
                listBoxAssigned.Enabled           = false;
            }
            else
            {
                resourcesAvailableListBox.Enabled = true;
                listBoxAssigned.Enabled           = true;
            }
        }