DocSpace-client/web/ASC.Web.Api/Api/Settings/GreetingSettingsController.cs

71 lines
2.3 KiB
C#
Raw Normal View History

2022-03-01 11:44:13 +00:00
namespace ASC.Web.Api.Controllers.Settings;
2022-03-01 10:58:02 +00:00
2022-03-02 08:08:59 +00:00
public class GreetingSettingsController : BaseSettingsController
2022-03-01 10:58:02 +00:00
{
private Tenant Tenant { get { return _apiContext.Tenant; } }
private readonly MessageService _messageService;
private readonly TenantManager _tenantManager;
private readonly PermissionContext _permissionContext;
private readonly TenantInfoSettingsHelper _tenantInfoSettingsHelper;
2022-03-02 08:08:59 +00:00
public GreetingSettingsController(
TenantInfoSettingsHelper tenantInfoSettingsHelper,
MessageService messageService,
2022-03-01 10:58:02 +00:00
ApiContext apiContext,
TenantManager tenantManager,
PermissionContext permissionContext,
WebItemManager webItemManager,
IMemoryCache memoryCache) : base(apiContext, memoryCache, webItemManager)
2022-03-02 08:08:59 +00:00
{
_tenantInfoSettingsHelper = tenantInfoSettingsHelper;
_messageService = messageService;
2022-03-01 10:58:02 +00:00
_tenantManager = tenantManager;
_permissionContext = permissionContext;
}
[Read("greetingsettings")]
public ContentResult GetGreetingSettings()
{
return new ContentResult { Content = Tenant.Name };
}
[Create("greetingsettings")]
2022-03-15 10:56:22 +00:00
public ContentResult SaveGreetingSettingsFromBody([FromBody] GreetingSettingsRequestsDto inDto)
2022-03-01 10:58:02 +00:00
{
2022-03-15 10:56:22 +00:00
return SaveGreetingSettings(inDto);
2022-03-01 10:58:02 +00:00
}
[Create("greetingsettings")]
[Consumes("application/x-www-form-urlencoded")]
2022-03-15 10:56:22 +00:00
public ContentResult SaveGreetingSettingsFromForm([FromForm] GreetingSettingsRequestsDto inDto)
2022-03-01 10:58:02 +00:00
{
2022-03-15 10:56:22 +00:00
return SaveGreetingSettings(inDto);
2022-03-01 10:58:02 +00:00
}
2022-03-15 10:56:22 +00:00
private ContentResult SaveGreetingSettings(GreetingSettingsRequestsDto inDto)
2022-03-01 10:58:02 +00:00
{
_permissionContext.DemandPermissions(SecutiryConstants.EditPortalSettings);
2022-03-15 10:56:22 +00:00
Tenant.Name = inDto.Title;
2022-03-01 10:58:02 +00:00
_tenantManager.SaveTenant(Tenant);
_messageService.Send(MessageAction.GreetingSettingsUpdated);
return new ContentResult { Content = Resource.SuccessfullySaveGreetingSettingsMessage };
}
[Create("greetingsettings/restore")]
public ContentResult RestoreGreetingSettings()
{
_permissionContext.DemandPermissions(SecutiryConstants.EditPortalSettings);
_tenantInfoSettingsHelper.RestoreDefaultTenantName();
return new ContentResult
{
Content = Tenant.Name
};
}
}