Skip to content

Commit

Permalink
Admin panel - Theme list - use automapper
Browse files Browse the repository at this point in the history
  • Loading branch information
KrzysztofPajak committed Sep 23, 2021
1 parent 586781f commit 7c1e4b6
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 30 deletions.
39 changes: 9 additions & 30 deletions src/Web/Grand.Web.Admin/Controllers/SettingController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,6 @@ public partial class SettingController : BaseAdminController

#region Utilities


protected async Task ClearCache()
{
await _cacheBase.Clear();
Expand Down Expand Up @@ -698,16 +697,7 @@ public async Task<IActionResult> GeneralCommon()

model.StoreInformationSettings.AvailableStoreThemes = _themeProvider
.GetConfigurations()
.Select(x => new GeneralCommonSettingsModel.StoreInformationSettingsModel.ThemeConfigurationModel {
ThemeTitle = x.Title,
ThemeName = x.Name,
ThemeVersion = x.Version,
PreviewImageUrl = x.PreviewImageUrl,
PreviewText = x.PreviewText,
SupportRtl = x.SupportRtl,
Selected = x.Name.Equals(storeInformationSettings.DefaultStoreTheme, StringComparison.OrdinalIgnoreCase)
})
.ToList();
.Select(x => x.ToModel(storeInformationSettings.DefaultStoreTheme)).ToList();

//common
var commonSettings = _settingService.LoadSetting<CommonSettings>(storeScope);
Expand Down Expand Up @@ -864,45 +854,37 @@ private void SavePushNotificationsToFile(PushNotificationsSettingsModel model)
if (System.IO.File.Exists(oryginalFilePath))
{
string[] lines = System.IO.File.ReadAllLines(oryginalFilePath);

int i = 0;
foreach (var line in lines)
{
if (line.Contains("apiKey"))
{
lines[i] = "apiKey: \"" + model.PushApiKey + "\",";
}

if (line.Contains("authDomain"))
{
lines[i] = "authDomain: \"" + model.AuthDomain + "\",";
}

if (line.Contains("databaseURL"))
{
lines[i] = "databaseURL: \"" + model.DatabaseUrl + "\",";
}

if (line.Contains("projectId"))
{
lines[i] = "projectId: \"" + model.ProjectId + "\",";
}

if (line.Contains("storageBucket"))
{
lines[i] = "storageBucket: \"" + model.StorageBucket + "\",";
}

if (line.Contains("messagingSenderId"))
{
lines[i] = "messagingSenderId: \"" + model.SenderId + "\",";
}

if (line.Contains("appId"))
{
lines[i] = "appId: \"" + model.AppId + "\",";
}

i++;
}
System.IO.File.WriteAllLines(savedFilePath, lines);
Expand Down Expand Up @@ -939,13 +921,13 @@ public async Task<IActionResult> SystemSetting()
{
var settings = _settingService.LoadSetting<SystemSettings>();

var model = new SystemSettingsModel();

//order ident
model.OrderIdent = await _mediator.Send(new MaxOrderNumberCommand());
//system settings
model.DaysToCancelUnpaidOrder = settings.DaysToCancelUnpaidOrder;
model.DeleteGuestTaskOlderThanMinutes = settings.DeleteGuestTaskOlderThanMinutes;
var model = new SystemSettingsModel {
//order ident
OrderIdent = await _mediator.Send(new MaxOrderNumberCommand()),
//system settings
DaysToCancelUnpaidOrder = settings.DaysToCancelUnpaidOrder,
DeleteGuestTaskOlderThanMinutes = settings.DeleteGuestTaskOlderThanMinutes
};

//area admin settings
var adminsettings = _settingService.LoadSetting<AdminAreaSettings>();
Expand Down Expand Up @@ -976,7 +958,6 @@ public async Task<IActionResult> SystemSetting(SystemSettingsModel model)
settings.DeleteGuestTaskOlderThanMinutes = model.DeleteGuestTaskOlderThanMinutes;
await _settingService.SaveSetting(settings);


//order ident
if (model.OrderIdent.HasValue && model.OrderIdent.Value > 0)
{
Expand All @@ -989,10 +970,8 @@ public async Task<IActionResult> SystemSetting(SystemSettingsModel model)
adminAreaSettings.GridPageSizes = model.GridPageSizes;
adminAreaSettings.UseIsoDateTimeConverterInJson = model.UseIsoDateTimeConverterInJson;
adminAreaSettings.HideStoreColumn = model.HideStoreColumn;

await _settingService.SaveSetting(adminAreaSettings);


//language settings
var langsettings = _settingService.LoadSetting<LanguageSettings>();
langsettings.IgnoreRtlPropertyForAdminArea = model.IgnoreRtlPropertyForAdminArea;
Expand All @@ -1016,4 +995,4 @@ public async Task<IActionResult> SystemSetting(SystemSettingsModel model)

#endregion
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
using Grand.Infrastructure.Mapper;
using Grand.Web.Admin.Models.Settings;
using Grand.Web.Common.Themes;
using System;

namespace Grand.Web.Admin.Extensions
{
public static class ThemeConfigurationMappingExtensions
{
public static GeneralCommonSettingsModel.StoreInformationSettingsModel.ThemeConfigurationModel ToModel(this ThemeConfiguration entity, string defaultStoreTheme)
{
var result = entity.MapTo<ThemeConfiguration, GeneralCommonSettingsModel.StoreInformationSettingsModel.ThemeConfigurationModel>();
result.Selected = result.ThemeName.Equals(defaultStoreTheme, StringComparison.OrdinalIgnoreCase);
return result;
}
}
}
20 changes: 20 additions & 0 deletions src/Web/Grand.Web.Admin/Mapper/ThemeConfigurationProfile.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
using AutoMapper;
using Grand.Infrastructure.Mapper;
using Grand.Web.Admin.Models.Settings;
using Grand.Web.Common.Themes;

namespace Grand.Web.Admin.Mapper
{
public class ThemeConfigurationProfile : Profile, IAutoMapperProfile
{
public ThemeConfigurationProfile()
{
CreateMap<ThemeConfiguration, GeneralCommonSettingsModel.StoreInformationSettingsModel.ThemeConfigurationModel>()
.ForMember(dest => dest.ThemeTitle, mo => mo.MapFrom(p => p.Title))
.ForMember(dest => dest.ThemeName, mo => mo.MapFrom(p => p.Name))
.ForMember(dest => dest.ThemeVersion, mo => mo.MapFrom(p => p.Version));
}

public int Order => 0;
}
}

0 comments on commit 7c1e4b6

Please sign in to comment.