Пример #1
0
 public void UpdateInvitePermissions(Guid userId, Guid subId, ModeratorPermissions permissions)
 {
     _conn.Perform(conn =>
     {
         conn.Update <ModeratorInvite>(new { Permissions = permissions }, x => x.UserId == userId && x.SubId == subId);
     });
 }
Пример #2
0
 public void UpdateInvitePermissions(Guid userId, Guid subId, ModeratorPermissions permissions)
 {
     _conn.Perform(conn =>
     {
         conn.Update<ModeratorInvite>(new { Permissions = permissions }, x => x.UserId == userId && x.SubId == subId);
     });
 }
Пример #3
0
        public static bool HasPermission(this ModeratorPermissions? permissions, ModeratorPermissions permission)
        {
            if (!permissions.HasValue) return false;

            if (permission != ModeratorPermissions.All)
                return permissions.Value.HasFlag(permission) || permissions.Value.HasFlag(ModeratorPermissions.All);
            return permissions.Value.HasFlag(ModeratorPermissions.All);
        }
Пример #4
0
 public static bool HasPermission(this ModeratorPermissions permissions, ModeratorPermissions permission)
 {
     if (permission != ModeratorPermissions.All)
     {
         return(permissions.HasFlag(permission) || permissions.HasFlag(ModeratorPermissions.All));
     }
     return(permissions.HasFlag(ModeratorPermissions.All));
 }
Пример #5
0
 public void UpdateUserModPermissionForSub(Guid userId, Guid subId, ModeratorPermissions permissions)
 {
     if (permissions.HasFlag(ModeratorPermissions.All))
     {
         permissions = ModeratorPermissions.All; // clear our out any 'non needed' flags.
     }
     _conn.Perform(conn =>
     {
         return(conn.Update <Moderator>(new { Permissions = permissions }, x => x.UserId == userId && x.SubId == subId));
     });
 }
Пример #6
0
        public ActionResult ChangeModPermissions(string subName, Guid? subId, Guid userId, ModeratorPermissions permissions)
        {
            _commandBus.Send(new ChangeModPermissionsForSub
            {
                SubName = subName,
                SubId = subId,
                RequestingUser = _userContext.CurrentUser.Id,
                UserToChange = userId,
                Permissions = permissions
            });

            return CommonJsonResult(true);
        }
Пример #7
0
        public static bool HasPermission(this ModeratorPermissions?permissions, ModeratorPermissions permission)
        {
            if (!permissions.HasValue)
            {
                return(false);
            }

            if (permission != ModeratorPermissions.All)
            {
                return(permissions.Value.HasFlag(permission) || permissions.Value.HasFlag(ModeratorPermissions.All));
            }
            return(permissions.Value.HasFlag(ModeratorPermissions.All));
        }
Пример #8
0
        public ActionResult ChangeInvite(string subName, Guid? subId, string userName, Guid? userId, ModeratorPermissions permissions)
        {
            var response = _commandBus.Send<ChangeModInvitePermissions, ChangeModInvitePermissionsResponse>(new ChangeModInvitePermissions
            {
                RequestingUserId = _userContext.CurrentUser.Id,
                UserName = userName,
                UserId = userId,
                SubName = subName,
                SubId = subId,
                Permissions = permissions
            });

            return CommonJsonResult(response.Error);
        }
Пример #9
0
        public void AddModToSub(Guid userId, Guid subId, ModeratorPermissions permissions, Guid? addedBy = null)
        {
            _conn.Perform(conn =>
            {
                if (conn.Count<Moderator>(x => x.UserId == userId && x.SubId == subId) > 0)
                    return;

                conn.Insert(new Moderator
                {
                    Id = GuidUtil.NewSequentialId(),
                    UserId = userId,
                    SubId = subId,
                    AddedOn = Common.CurrentTime(),
                    AddedBy = addedBy,
                    Permissions = permissions
                });
            });
        }
Пример #10
0
 public void AddInvite(Guid userId, Guid subId, Guid? invitedBy, ModeratorPermissions permissions)
 {
     _conn.Perform(conn =>
     {
         if (conn.Count<ModeratorInvite>(x => x.UserId == userId && x.SubId == subId) == 0)
         {
             conn.Insert(new ModeratorInvite
             {
                 Id = GuidUtil.NewSequentialId(),
                 UserId = userId,
                 SubId = subId,
                 InvitedBy = invitedBy,
                 InvitedOn = Common.CurrentTime(),
                 Permissions = permissions
             });
         }
         // update permissions if invite already present?
     });
 }
Пример #11
0
 public void AddInvite(Guid userId, Guid subId, Guid?invitedBy, ModeratorPermissions permissions)
 {
     _conn.Perform(conn =>
     {
         if (conn.Count <ModeratorInvite>(x => x.UserId == userId && x.SubId == subId) == 0)
         {
             conn.Insert(new ModeratorInvite
             {
                 Id          = GuidUtil.NewSequentialId(),
                 UserId      = userId,
                 SubId       = subId,
                 InvitedBy   = invitedBy,
                 InvitedOn   = Common.CurrentTime(),
                 Permissions = permissions
             });
         }
         // update permissions if invite already present?
     });
 }
Пример #12
0
        public void AddModToSub(Guid userId, Guid subId, ModeratorPermissions permissions, Guid?addedBy = null)
        {
            _conn.Perform(conn =>
            {
                if (conn.Count <Moderator>(x => x.UserId == userId && x.SubId == subId) > 0)
                {
                    return;
                }

                conn.Insert(new Moderator
                {
                    Id          = Guid.NewGuid(),
                    UserId      = userId,
                    SubId       = subId,
                    AddedOn     = TimeHelper.CurrentTime(),
                    AddedBy     = addedBy,
                    Permissions = permissions
                });
            });
        }
Пример #13
0
        public static string ModeratorPermissionsText(this IHtmlHelper htmlHelper, ModeratorPermissions permissions)
        {
            if (permissions.HasPermission(ModeratorPermissions.All))
            {
                return("Full");
            }

            if (permissions == ModeratorPermissions.None)
            {
                return("None");
            }

            var list = new List <string>();

            if (permissions.HasPermission(ModeratorPermissions.Access))
            {
                list.Add("Access");
            }
            if (permissions.HasPermission(ModeratorPermissions.Config))
            {
                list.Add("Config");
            }
            if (permissions.HasPermission(ModeratorPermissions.Flair))
            {
                list.Add("Flair");
            }
            if (permissions.HasPermission(ModeratorPermissions.Mail))
            {
                list.Add("Mail");
            }
            if (permissions.HasPermission(ModeratorPermissions.Posts))
            {
                list.Add("Posts");
            }
            if (permissions.HasPermission(ModeratorPermissions.Styles))
            {
                list.Add("Styles");
            }

            return(string.Join(", ", list));
        }
Пример #14
0
 public static bool HasPermission(this ModeratorPermissions permissions, ModeratorPermissions permission)
 {
     if (permission != ModeratorPermissions.All)
         return permissions.HasFlag(permission) || permissions.HasFlag(ModeratorPermissions.All);
     return permissions.HasFlag(ModeratorPermissions.All);
 }
Пример #15
0
        public ActionResult ChangeModPermissions(string subName, Guid?subId, string userName, Guid?userId, ModeratorPermissions permissions)
        {
            var response = _commandBus.Send <ChangeModPermissionsForSub, ChangeModPermissionsForSubResponse>(new ChangeModPermissionsForSub
            {
                SubName          = subName,
                SubId            = subId,
                RequestingUser   = _userContext.CurrentUser.Id,
                UserNameToChange = userName,
                UserIdToChange   = userId,
                Permissions      = permissions
            });

            return(CommonJsonResult(response.Error));
        }
Пример #16
0
        public ActionResult InviteMod(string subName, Guid?subId, string userName, Guid?userId, ModeratorPermissions permissions)
        {
            var response = _commandBus.Send <InviteModToSub, InviteModToSubResponse>(new InviteModToSub
            {
                RequestingUserId = _userContext.CurrentUser.Id,
                UserName         = userName,
                UserId           = userId,
                SubName          = subName,
                SubId            = subId,
                Permissions      = permissions
            });

            return(CommonJsonResult(response.Error));
        }
Пример #17
0
        public void UpdateUserModPermissionForSub(Guid userId, Guid subId, ModeratorPermissions permissions)
        {
            if(permissions.HasFlag(ModeratorPermissions.All))
                permissions = ModeratorPermissions.All; // clear our out any 'non needed' flags.

            _conn.Perform(conn =>
            {
                return conn.Update<Moderator>(new {Permissions = permissions}, x => x.UserId == userId && x.SubId == subId);
            });
        }