Default Avatar özelliği kaldırıldı
This commit is contained in:
parent
50e9334db6
commit
4dddc767b4
3 changed files with 5 additions and 43 deletions
|
|
@ -63,15 +63,10 @@ public class ListFormDynamicApiAppService : PlatformAppService, IListFormDynamic
|
|||
return Guid.TryParse(value, out var id) ? id : Guid.Empty;
|
||||
}
|
||||
|
||||
private async Task SaveAvatarAsync(IdentityUser user, string avatar, bool saveDefaultWhenMissing = false)
|
||||
private async Task SaveAvatarAsync(IdentityUser user, string avatar)
|
||||
{
|
||||
if (avatar.IsNullOrWhiteSpace())
|
||||
{
|
||||
if (saveDefaultWhenMissing)
|
||||
{
|
||||
await SaveDefaultAvatarAsync(user);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -103,38 +98,6 @@ public class ListFormDynamicApiAppService : PlatformAppService, IListFormDynamic
|
|||
user.SetAvatar(AvatarProvider.GetAvatar(configuration, user.TenantId?.ToString(), user.Id.ToString()));
|
||||
}
|
||||
|
||||
private async Task SaveDefaultAvatarAsync(IdentityUser user)
|
||||
{
|
||||
var defaultAvatarPath = FindDefaultAvatarPath();
|
||||
if (defaultAvatarPath == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var fileName = $"{user.Id}.jpg";
|
||||
await using var stream = File.OpenRead(defaultAvatarPath);
|
||||
await blobCdnManager.SaveAsync(BlobContainerNames.Avatar, fileName, stream);
|
||||
user.SetAvatar(AvatarProvider.GetAvatar(configuration, user.TenantId?.ToString(), user.Id.ToString()));
|
||||
}
|
||||
|
||||
private string? FindDefaultAvatarPath()
|
||||
{
|
||||
var directory = new DirectoryInfo(hostEnvironment.ContentRootPath);
|
||||
|
||||
while (directory != null)
|
||||
{
|
||||
var candidate = Path.Combine(directory.FullName, "ui", "public", "img", "others", "default-profile.png");
|
||||
if (File.Exists(candidate))
|
||||
{
|
||||
return candidate;
|
||||
}
|
||||
|
||||
directory = directory.Parent;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
[Authorize(IdentityPermissions.Users.Create)]
|
||||
public async Task PostUserInsertAsync(DynamicApiBaseInput<CreateUpdateUserInput> input)
|
||||
{
|
||||
|
|
@ -160,7 +123,7 @@ public class ListFormDynamicApiAppService : PlatformAppService, IListFormDynamic
|
|||
user.SetJobPositionId(ParseGuid(input.Data.JobPositionId));
|
||||
user.SetIsVerified(verify);
|
||||
|
||||
await SaveAvatarAsync(user, input.Data.Avatar, saveDefaultWhenMissing: true);
|
||||
await SaveAvatarAsync(user, input.Data.Avatar);
|
||||
|
||||
(await userManager.CreateAsync(user, input.Data.Password)).CheckErrors();
|
||||
await userManager.SetLockoutEnabledAsync(user, true);
|
||||
|
|
|
|||
|
|
@ -806,10 +806,10 @@ public class ListFormSeeder_Administration : IDataSeedContributor, ITransientDep
|
|||
PermissionJson = DefaultPermissionJson(PlatformConsts.IdentityPermissions.Users.Create, listFormName, PlatformConsts.IdentityPermissions.Users.Update, PlatformConsts.IdentityPermissions.Users.Delete, PlatformConsts.IdentityPermissions.Users.Export, PlatformConsts.IdentityPermissions.Users.Import, PlatformConsts.IdentityPermissions.Users.Note),
|
||||
DeleteCommand = $"UPDATE \"AbpUsers\" SET \"DeleterId\"=@DeleterId, \"DeletionTime\"=CURRENT_TIMESTAMP, \"IsDeleted\"='true' WHERE \"Id\"=@Id",
|
||||
DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson(),
|
||||
EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 710, true, true, true, true, false),
|
||||
EditingOptionJson = DefaultEditingOptionJson(listFormName, 500, 575, true, true, true, true, false),
|
||||
EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>() {
|
||||
new () { Order=1,ColCount=1,ColSpan=1,ItemType="group",Items=[
|
||||
new EditingFormItemDto { Order=1, DataField="Avatar", ColSpan=1, EditorType2=EditorTypes.dxImageUpload, EditorOptions=EditorOptionValues.ImageUploadOptions(false) },
|
||||
new () { Order=1,ColCount=2,ColSpan=1,ItemType="group",Items=[
|
||||
new EditingFormItemDto { Order=1, DataField="Avatar", ColSpan=2, EditorType2=EditorTypes.dxImageUpload, EditorOptions=EditorOptionValues.ImageUploadOptions(false) },
|
||||
new EditingFormItemDto { Order=2, DataField="Email", ColSpan=1, EditorType2=EditorTypes.dxTextBox },
|
||||
new EditingFormItemDto { Order=3, DataField="Name", ColSpan=1, EditorType2=EditorTypes.dxTextBox },
|
||||
new EditingFormItemDto { Order=4, DataField="Surname", ColSpan=1, EditorType2=EditorTypes.dxTextBox },
|
||||
|
|
|
|||
|
|
@ -357,7 +357,6 @@ const MessengerWidget = () => {
|
|||
<Avatar size={36} shape="circle" src={AVATAR_URL(contact.id, contact.tenantId || tenantId)} />
|
||||
<span className="min-w-0 flex-1">
|
||||
<span className="block truncate text-sm font-medium">{contact.fullName}</span>
|
||||
<span className="block truncate text-xs text-gray-500">{contact.email || contact.userName}</span>
|
||||
<span
|
||||
className={`mt-1 inline-flex items-center gap-1 text-xs font-medium ${
|
||||
contact.isOnline ? 'text-emerald-600' : 'text-red-500'
|
||||
|
|
|
|||
Loading…
Reference in a new issue