Esempio n. 1
0
        public static SelectList EntityStatusEnumsForUsersDropDown(EntityStatusEnum status)
        {
            var enumList = (from EntityStatusEnum bt in Enum.GetValues(typeof(EntityStatusEnum))
                            select new
            {
                Id = bt,
                Name = EnumHelpers.GetDescription((EntityStatusEnum)bt)
            });

            SelectList list = new SelectList(enumList, "Id", "Name", status);

            //remove the non AppUser values...
            list = new SelectList(list
                                  .Where(x => (x.Value != "Rejected") && (x.Value != "Closed") && (x.Value != "Removed"))
                                  .ToList(),
                                  "Value",
                                  "Text",
                                  status);

            return(list);
        }
Esempio n. 2
0
        public static UserAction CreateActionForGroupMemberAccceptance(ApplicationDbContext db, Group group, GroupMember member)
        {
            //Create action for group member acceptance....
            UserAction action = CreateAction(db, ActionTypeEnum.AwaitGroupMemberAcceptance, group.Type, EnumHelpers.GetDescription(group.Type) + " level request.", group.GroupOriginatorAppUserId, group.GroupOriginatorAppUserId, DateTime.Now, EntityStatusEnum.Active);

            //..then assign action to users... it will only add actions to those members that are active on the list (Should really have this level set for new groups, only adding new members)
            List <UserActionAssignment> list = new List <UserActionAssignment>();

            switch (group.AcceptanceLevel)
            {
            case GroupInviteAcceptanceLevelEnum.Owner:
            case GroupInviteAcceptanceLevelEnum.Invitee:
                UserActionAssignment userAssignment = CreateActionAssignment(db, action.UserActionId, group.GroupOriginatorAppUserId);
                break;

            case GroupInviteAcceptanceLevelEnum.Member:
                List <UserActionAssignment> userAssignmentList = CreateActionAssignmentForGroupMembers(db, action.UserActionId, group);
                break;
            }

            return(action);
        }
Esempio n. 3
0
        /// <summary>
        /// Create a Friend Request UserAction.  This will be created for a user at User level, the manager(s) of branch at Branch level, the admin(s) of company at Company level
        /// </summary>
        /// <param name="db"></param>
        /// <param name="level">level of request, i.e. User, Branch, Company, Group</param>
        /// <param name="ofReferenceId">The 'level' reference id</param>
        /// <param name="byReferenceId">The userid making the request</param>
        /// <returns></returns>
        public static UserAction CreateActionForFriendRequestFromUser(ApplicationDbContext db, LevelEnum level, Guid ofReferenceId, Guid byReferenceId)
        {
            UserAction action = CreateAction(ActionTypeEnum.AwaitFriendRequest, level, EnumHelpers.GetDescription(level) + " level request.", byReferenceId, byReferenceId, DateTime.Now, EntityStatusEnum.Active);

            //Create assignment list for this UserAction
            switch (level)
            {
            case LevelEnum.Company:
                CreateUserAssignmentForAction(db, action.UserActionId, level, ofReferenceId, byReferenceId);
                break;

            case LevelEnum.Branch:
                CreateUserAssignmentForAction(db, action.UserActionId, level, ofReferenceId, byReferenceId);
                break;

            case LevelEnum.User:
                CreateUserAssignmentForAction(db, action.UserActionId, level, ofReferenceId, byReferenceId);
                break;
            }

            return(action);
        }