Merge branch 'dev-v8' into temp-U4-11127

# Conflicts:
#	src/Umbraco.Web.UI.Client/src/views/dashboard/dashboard.tabs.controller.js
This commit is contained in:
Shannon
2018-04-06 13:56:07 +10:00
193 changed files with 2584 additions and 3058 deletions

View File

@@ -6,6 +6,7 @@ using System.Linq;
using System.Reflection;
using System.Security.Claims;
using System.Threading.Tasks;
using Umbraco.Core.Configuration;
using Umbraco.Core.Models.Entities;
using Umbraco.Core.Models.Membership;
using Umbraco.Core.Security;
@@ -64,7 +65,7 @@ namespace Umbraco.Core.Models.Identity
_startContentIds = new int[] { };
_groups = new IReadOnlyUserGroup[] { };
_allowedSections = new string[] { };
_culture = Configuration.GlobalSettings.DefaultUILanguage;
_culture = UmbracoConfig.For.GlobalSettings().DefaultUILanguage; //fixme inject somehow?
_groups = new IReadOnlyUserGroup[0];
_roles = new ObservableCollection<IdentityUserRole<string>>();
_roles.CollectionChanged += _roles_CollectionChanged;
@@ -81,7 +82,7 @@ namespace Umbraco.Core.Models.Identity
_startContentIds = new int[] { };
_groups = new IReadOnlyUserGroup[] { };
_allowedSections = new string[] { };
_culture = Configuration.GlobalSettings.DefaultUILanguage;
_culture = UmbracoConfig.For.GlobalSettings().DefaultUILanguage; //fixme inject somehow?
_groups = groups.ToArray();
_roles = new ObservableCollection<IdentityUserRole<string>>(_groups.Select(x => new IdentityUserRole<string>
{

View File

@@ -1,6 +1,7 @@
using System;
using System.Linq;
using AutoMapper;
using Umbraco.Core.Configuration;
using Umbraco.Core.Models.Membership;
using Umbraco.Core.Security;
using Umbraco.Core.Services;
@@ -9,7 +10,7 @@ namespace Umbraco.Core.Models.Identity
{
public class IdentityProfile : Profile
{
public IdentityProfile(ILocalizedTextService textService, IEntityService entityService)
public IdentityProfile(ILocalizedTextService textService, IEntityService entityService, IGlobalSettings globalSettings)
{
CreateMap<IUser, BackOfficeIdentityUser>()
.BeforeMap((src, dest) =>
@@ -25,7 +26,7 @@ namespace Umbraco.Core.Models.Identity
.ForMember(dest => dest.IsApproved, opt => opt.MapFrom(src => src.IsApproved))
.ForMember(dest => dest.UserName, opt => opt.MapFrom(src => src.Username))
.ForMember(dest => dest.PasswordHash, opt => opt.MapFrom(user => GetPasswordHash(user.RawPasswordValue)))
.ForMember(dest => dest.Culture, opt => opt.MapFrom(src => src.GetUserCulture(textService)))
.ForMember(dest => dest.Culture, opt => opt.MapFrom(src => src.GetUserCulture(textService, globalSettings)))
.ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name))
.ForMember(dest => dest.StartMediaIds, opt => opt.MapFrom(src => src.StartMediaIds))
.ForMember(dest => dest.StartContentIds, opt => opt.MapFrom(src => src.StartContentIds))

View File

@@ -27,7 +27,7 @@ namespace Umbraco.Core.Models.Membership
{
SessionTimeout = 60;
_userGroups = new HashSet<IReadOnlyUserGroup>();
_language = GlobalSettings.DefaultUILanguage;
_language = UmbracoConfig.For.GlobalSettings().DefaultUILanguage; //fixme inject somehow?
_isApproved = true;
_isLockedOut = false;
_startContentIds = new int[] { };

View File

@@ -126,15 +126,16 @@ namespace Umbraco.Core.Models
/// </summary>
/// <param name="user"></param>
/// <param name="textService"></param>
/// <param name="globalSettings"></param>
/// <returns></returns>
public static CultureInfo GetUserCulture(this IUser user, ILocalizedTextService textService)
public static CultureInfo GetUserCulture(this IUser user, ILocalizedTextService textService, IGlobalSettings globalSettings)
{
if (user == null) throw new ArgumentNullException(nameof(user));
if (textService == null) throw new ArgumentNullException(nameof(textService));
return GetUserCulture(user.Language, textService);
return GetUserCulture(user.Language, textService, globalSettings);
}
internal static CultureInfo GetUserCulture(string userLanguage, ILocalizedTextService textService)
internal static CultureInfo GetUserCulture(string userLanguage, ILocalizedTextService textService, IGlobalSettings globalSettings)
{
try
{
@@ -148,7 +149,7 @@ namespace Umbraco.Core.Models
catch (CultureNotFoundException)
{
//return the default one
return CultureInfo.GetCultureInfo(GlobalSettings.DefaultUILanguage);
return CultureInfo.GetCultureInfo(globalSettings.DefaultUILanguage);
}
}