Merge branch 'develop' into feature/virtual-rooms-1.2
This commit is contained in:
commit
00df2ec2b6
@ -11,7 +11,7 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="AspNetCore.HealthChecks.Elasticsearch" Version="6.0.1" />
|
<PackageReference Include="AspNetCore.HealthChecks.Elasticsearch" Version="5.0.1" />
|
||||||
<PackageReference Include="AspNetCore.HealthChecks.Kafka" Version="6.0.1" />
|
<PackageReference Include="AspNetCore.HealthChecks.Kafka" Version="6.0.1" />
|
||||||
<PackageReference Include="AspNetCore.HealthChecks.MySql" Version="6.0.1" />
|
<PackageReference Include="AspNetCore.HealthChecks.MySql" Version="6.0.1" />
|
||||||
<PackageReference Include="AspNetCore.HealthChecks.NpgSql" Version="6.0.1" />
|
<PackageReference Include="AspNetCore.HealthChecks.NpgSql" Version="6.0.1" />
|
||||||
|
@ -50,24 +50,24 @@ namespace ASC.Api.Core.Core
|
|||||||
name: "kafka",
|
name: "kafka",
|
||||||
tags: new string[] { "kafka" });
|
tags: new string[] { "kafka" });
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var elasticSettings = configuration.GetSection("elastic");
|
var elasticSettings = configuration.GetSection("elastic");
|
||||||
|
|
||||||
if (elasticSettings != null && elasticSettings.GetChildren().Any())
|
if (elasticSettings != null && elasticSettings.GetChildren().Any())
|
||||||
{
|
{
|
||||||
var host = elasticSettings.GetSection("Host").Value ?? "localhost";
|
var host = elasticSettings.GetSection("Host").Value ?? "localhost";
|
||||||
var scheme = elasticSettings.GetSection("Scheme").Value ?? "http";
|
var scheme = elasticSettings.GetSection("Scheme").Value ?? "http";
|
||||||
var port = elasticSettings.GetSection("Port").Value ?? "9200";
|
var port = elasticSettings.GetSection("Port").Value ?? "9200";
|
||||||
var elasticSearchUri = $"{scheme}://{host}:{port}";
|
var elasticSearchUri = $"{scheme}://{host}:{port}";
|
||||||
|
|
||||||
if (Uri.IsWellFormedUriString(elasticSearchUri, UriKind.Absolute))
|
if (Uri.IsWellFormedUriString(elasticSearchUri, UriKind.Absolute))
|
||||||
{
|
{
|
||||||
hcBuilder.AddElasticsearch(elasticSearchUri,
|
hcBuilder.AddElasticsearch(elasticSearchUri,
|
||||||
name: "elasticsearch",
|
name: "elasticsearch",
|
||||||
tags: new string[] { "elasticsearch" });
|
tags: new string[] { "elasticsearch" });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return services;
|
return services;
|
||||||
|
@ -98,7 +98,9 @@ namespace ASC.Web.Api.Models
|
|||||||
|
|
||||||
public bool IsSSO { get; set; }
|
public bool IsSSO { get; set; }
|
||||||
|
|
||||||
public new static EmployeeWraperFull GetSample()
|
public DarkThemeSettingsEnum? Theme { get; set; }
|
||||||
|
|
||||||
|
public static new EmployeeWraperFull GetSample()
|
||||||
{
|
{
|
||||||
return new EmployeeWraperFull
|
return new EmployeeWraperFull
|
||||||
{
|
{
|
||||||
|
61
common/ASC.Core.Common/Users/DarkThemeSettings.cs
Normal file
61
common/ASC.Core.Common/Users/DarkThemeSettings.cs
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
// (c) Copyright Ascensio System SIA 2010-2022
|
||||||
|
//
|
||||||
|
// This program is a free software product.
|
||||||
|
// You can redistribute it and/or modify it under the terms
|
||||||
|
// of the GNU Affero General Public License (AGPL) version 3 as published by the Free Software
|
||||||
|
// Foundation. In accordance with Section 7(a) of the GNU AGPL its Section 15 shall be amended
|
||||||
|
// to the effect that Ascensio System SIA expressly excludes the warranty of non-infringement of
|
||||||
|
// any third-party rights.
|
||||||
|
//
|
||||||
|
// This program is distributed WITHOUT ANY WARRANTY, without even the implied warranty
|
||||||
|
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, see
|
||||||
|
// the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||||
|
//
|
||||||
|
// You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia, EU, LV-1021.
|
||||||
|
//
|
||||||
|
// The interactive user interfaces in modified source and object code versions of the Program must
|
||||||
|
// display Appropriate Legal Notices, as required under Section 5 of the GNU AGPL version 3.
|
||||||
|
//
|
||||||
|
// Pursuant to Section 7(b) of the License you must retain the original Product logo when
|
||||||
|
// distributing the program. Pursuant to Section 7(e) we decline to grant you any rights under
|
||||||
|
// trademark law for use of our trademarks.
|
||||||
|
//
|
||||||
|
// All the Product's GUI elements, including illustrations and icon sets, as well as technical writing
|
||||||
|
// content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||||
|
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
using ASC.Core.Common.Settings;
|
||||||
|
|
||||||
|
namespace ASC.Web.Core.Users;
|
||||||
|
|
||||||
|
[Serializable]
|
||||||
|
public class DarkThemeSettings : ISettings
|
||||||
|
{
|
||||||
|
[JsonIgnore]
|
||||||
|
public Guid ID
|
||||||
|
{
|
||||||
|
get { return new Guid("{38362061-066D-4C57-A23E-8953CF34EFC3}"); }
|
||||||
|
}
|
||||||
|
|
||||||
|
public DarkThemeSettingsEnum Theme { get; set; }
|
||||||
|
|
||||||
|
public ISettings GetDefault(IServiceProvider serviceProvider)
|
||||||
|
{
|
||||||
|
return new DarkThemeSettings
|
||||||
|
{
|
||||||
|
Theme = DarkThemeSettingsEnum.Base,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||||
|
public enum DarkThemeSettingsEnum
|
||||||
|
{
|
||||||
|
Base,
|
||||||
|
Dark,
|
||||||
|
System
|
||||||
|
}
|
@ -220,7 +220,11 @@ namespace ASC.Employee.Core.Controllers
|
|||||||
[Read("@self")]
|
[Read("@self")]
|
||||||
public EmployeeWraper Self()
|
public EmployeeWraper Self()
|
||||||
{
|
{
|
||||||
return EmployeeWraperFullHelper.GetFull(UserManager.GetUser(SecurityContext.CurrentAccount.ID, EmployeeWraperFullHelper.GetExpression(ApiContext)));
|
var result = EmployeeWraperFullHelper.GetFull(UserManager.GetUser(SecurityContext.CurrentAccount.ID, EmployeeWraperFullHelper.GetExpression(ApiContext)));
|
||||||
|
|
||||||
|
result.Theme = SettingsManager.LoadForCurrentUser<DarkThemeSettings>().Theme;
|
||||||
|
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
[Read("email")]
|
[Read("email")]
|
||||||
@ -720,13 +724,13 @@ namespace ASC.Employee.Core.Controllers
|
|||||||
return EmployeeWraperFullHelper.GetFull(user);
|
return EmployeeWraperFullHelper.GetFull(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Update("{userid}")]
|
[Update("{userid}", order: int.MaxValue, DisableFormat = true)]
|
||||||
public EmployeeWraperFull UpdateMemberFromBody(string userid, [FromBody] UpdateMemberModel memberModel)
|
public EmployeeWraperFull UpdateMemberFromBody(string userid, [FromBody] UpdateMemberModel memberModel)
|
||||||
{
|
{
|
||||||
return UpdateMember(userid, memberModel);
|
return UpdateMember(userid, memberModel);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Update("{userid}")]
|
[Update("{userid}", order: int.MaxValue, DisableFormat = true)]
|
||||||
[Consumes("application/x-www-form-urlencoded")]
|
[Consumes("application/x-www-form-urlencoded")]
|
||||||
public EmployeeWraperFull UpdateMemberFromForm(string userid, [FromForm] UpdateMemberModel memberModel)
|
public EmployeeWraperFull UpdateMemberFromForm(string userid, [FromForm] UpdateMemberModel memberModel)
|
||||||
{
|
{
|
||||||
@ -1493,6 +1497,36 @@ namespace ASC.Employee.Core.Controllers
|
|||||||
return users.Select(EmployeeWraperFullHelper.GetFull);
|
return users.Select(EmployeeWraperFullHelper.GetFull);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Read("theme")]
|
||||||
|
public DarkThemeSettings GetTheme()
|
||||||
|
{
|
||||||
|
return SettingsManager.LoadForCurrentUser<DarkThemeSettings>();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Update("theme")]
|
||||||
|
public DarkThemeSettings ChangeThemeFromBody([FromBody] DarkThemeSettingsModel model)
|
||||||
|
{
|
||||||
|
return ChangeTheme(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Update("theme")]
|
||||||
|
[Consumes("application/x-www-form-urlencoded")]
|
||||||
|
public DarkThemeSettings ChangeThemeFromForm([FromForm] DarkThemeSettingsModel model)
|
||||||
|
{
|
||||||
|
return ChangeTheme(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
private DarkThemeSettings ChangeTheme(DarkThemeSettingsModel model)
|
||||||
|
{
|
||||||
|
var darkThemeSettings = new DarkThemeSettings
|
||||||
|
{
|
||||||
|
Theme = model.Theme
|
||||||
|
};
|
||||||
|
|
||||||
|
SettingsManager.SaveForCurrentUser(darkThemeSettings);
|
||||||
|
|
||||||
|
return darkThemeSettings;
|
||||||
|
}
|
||||||
|
|
||||||
[Update("invite")]
|
[Update("invite")]
|
||||||
public IEnumerable<EmployeeWraperFull> ResendUserInvitesFromBody([FromBody] UpdateMembersModel model)
|
public IEnumerable<EmployeeWraperFull> ResendUserInvitesFromBody([FromBody] UpdateMembersModel model)
|
||||||
|
34
products/ASC.People/Server/Models/DarkThemeSettingsModel.cs
Normal file
34
products/ASC.People/Server/Models/DarkThemeSettingsModel.cs
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
// (c) Copyright Ascensio System SIA 2010-2022
|
||||||
|
//
|
||||||
|
// This program is a free software product.
|
||||||
|
// You can redistribute it and/or modify it under the terms
|
||||||
|
// of the GNU Affero General Public License (AGPL) version 3 as published by the Free Software
|
||||||
|
// Foundation. In accordance with Section 7(a) of the GNU AGPL its Section 15 shall be amended
|
||||||
|
// to the effect that Ascensio System SIA expressly excludes the warranty of non-infringement of
|
||||||
|
// any third-party rights.
|
||||||
|
//
|
||||||
|
// This program is distributed WITHOUT ANY WARRANTY, without even the implied warranty
|
||||||
|
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, see
|
||||||
|
// the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||||
|
//
|
||||||
|
// You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia, EU, LV-1021.
|
||||||
|
//
|
||||||
|
// The interactive user interfaces in modified source and object code versions of the Program must
|
||||||
|
// display Appropriate Legal Notices, as required under Section 5 of the GNU AGPL version 3.
|
||||||
|
//
|
||||||
|
// Pursuant to Section 7(b) of the License you must retain the original Product logo when
|
||||||
|
// distributing the program. Pursuant to Section 7(e) we decline to grant you any rights under
|
||||||
|
// trademark law for use of our trademarks.
|
||||||
|
//
|
||||||
|
// All the Product's GUI elements, including illustrations and icon sets, as well as technical writing
|
||||||
|
// content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||||
|
|
||||||
|
using ASC.Web.Core.Users;
|
||||||
|
|
||||||
|
namespace ASC.People.Models;
|
||||||
|
|
||||||
|
public class DarkThemeSettingsModel
|
||||||
|
{
|
||||||
|
public DarkThemeSettingsEnum Theme { get; set; }
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user