Fixed some issues with profiles on groups
This commit is contained in:
@@ -746,7 +746,7 @@ public partial class LightlessHub
|
||||
var cancellationToken = _contextAccessor.HttpContext.RequestAborted;
|
||||
|
||||
var data = await DbContext.GroupProfiles
|
||||
.FirstOrDefaultAsync(g => g.GroupGID == dto.Group.GID, cancellationToken)
|
||||
.FirstOrDefaultAsync(g => g.Group.GID == dto.Group.GID || g.Group.Alias == dto.Group.GID, cancellationToken)
|
||||
.ConfigureAwait(false);
|
||||
|
||||
var profileDto = new GroupProfileDto(dto.Group, Description: null, Tags: null, PictureBase64: null);
|
||||
@@ -759,10 +759,6 @@ public partial class LightlessHub
|
||||
Tags = data.Tags,
|
||||
PictureBase64 = data.Base64GroupProfileImage,
|
||||
};
|
||||
|
||||
await Clients.User(UserUID)
|
||||
.Client_GroupSendProfile(profileDto)
|
||||
.ConfigureAwait(false);
|
||||
}
|
||||
|
||||
return profileDto;
|
||||
@@ -779,15 +775,33 @@ public partial class LightlessHub
|
||||
if (!hasRights) return;
|
||||
|
||||
var groupProfileDb = await DbContext.GroupProfiles
|
||||
.FirstOrDefaultAsync(g => g.GroupGID == dto.Group.GID,
|
||||
.FirstOrDefaultAsync(g => g.Group.GID == dto.Group.GID || g.Group.Alias == dto.Group.GID,
|
||||
_contextAccessor.HttpContext.RequestAborted)
|
||||
.ConfigureAwait(false);
|
||||
|
||||
if (groupProfileDb != null)
|
||||
{
|
||||
groupProfileDb.Description = dto.Description;
|
||||
groupProfileDb.Tags = dto.Tags;
|
||||
groupProfileDb.Base64GroupProfileImage = dto.PictureBase64;
|
||||
var groupPairs = DbContext.GroupPairs.Where(p => p.GroupGID == groupProfileDb.GroupGID).Select(p => p.GroupUserUID).ToList();
|
||||
|
||||
if (string.Equals("", dto.PictureBase64, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
groupProfileDb.Base64GroupProfileImage = null;
|
||||
}
|
||||
else if (dto.PictureBase64 != null)
|
||||
{
|
||||
groupProfileDb.Base64GroupProfileImage = dto.PictureBase64;
|
||||
}
|
||||
else if (dto.Tags != null)
|
||||
{
|
||||
groupProfileDb.Tags = dto.Tags;
|
||||
}
|
||||
|
||||
if (dto.Description != null)
|
||||
{
|
||||
groupProfileDb.Description = dto.Description;
|
||||
}
|
||||
|
||||
await Clients.Users(groupPairs).Client_GroupSendProfile(groupProfileDb.ToDTO()).ConfigureAwait(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -990,6 +1004,4 @@ public partial class LightlessHub
|
||||
|
||||
return results;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user