Port 7.7 - WIP

This commit is contained in:
Stephan
2017-08-24 21:24:14 +02:00
parent ab8fc33691
commit 934d03e63f
44 changed files with 998 additions and 265 deletions

View File

@@ -12,10 +12,12 @@ namespace Umbraco.Core.Strings
public DefaultShortStringHelperConfig Clone()
{
var config = new DefaultShortStringHelperConfig();
config.DefaultCulture = DefaultCulture;
config.ForceSafeAliases = ForceSafeAliases;
config.UrlReplaceCharacters = UrlReplaceCharacters;
var config = new DefaultShortStringHelperConfig
{
DefaultCulture = DefaultCulture,
ForceSafeAliases = ForceSafeAliases,
UrlReplaceCharacters = UrlReplaceCharacters
};
foreach (var kvp1 in _configs)
{
@@ -63,14 +65,19 @@ namespace Umbraco.Core.Strings
UrlReplaceCharacters = umbracoSettings.RequestHandler.CharCollection
.Where(x => string.IsNullOrEmpty(x.Char) == false)
.ToDictionary(x => x.Char, x => x.Replacement);
var convertUrlsToAscii = umbracoSettings.RequestHandler.ConvertUrlsToAscii;
var urlSegmentConvertTo = CleanStringType.Utf8;
if (umbracoSettings.RequestHandler.ConvertUrlsToAscii)
urlSegmentConvertTo = CleanStringType.Ascii;
if (umbracoSettings.RequestHandler.TryConvertUrlsToAscii)
urlSegmentConvertTo = CleanStringType.TryAscii;
return WithConfig(CleanStringType.UrlSegment, new Config
{
PreFilter = ApplyUrlReplaceCharacters,
PostFilter = x => CutMaxLength(x, 240),
IsTerm = (c, leading) => char.IsLetterOrDigit(c) || c == '_', // letter, digit or underscore
StringType = (convertUrlsToAscii ? CleanStringType.Ascii : CleanStringType.Utf8) | CleanStringType.LowerCase,
StringType = urlSegmentConvertTo | CleanStringType.LowerCase,
BreakTermsOnUpper = false,
Separator = '-'
}).WithConfig(CleanStringType.FileName, new Config