Determine urls at save and publish time (#17033)
* Started work on service * temp work * temp commit * Temp commit * Added more routing logic * Fixed tests * Refactor and prepare for isdraft * Work on drafts * Fixed tests * Move to enlistment to ensure caches is only updated on scope complete * Clean up and handle null cultures * Added functionality to the INavigationQueryService to get root keys * Added migration * Fixed issue with navigation * Added migration * Temp commit, move to cache refreshers. * Fixed issues * List urls * fix build * Fixed integration tests * Refactor to create new content finder instead of changing the old * rollback wrong commited line * Clean up, and use docuemnt url service for index * Fixed List endpoin * Do not use Navigation service in methods intended by management api * Fixed examine tests * Make methods virtual * Use domain from published request * Use hybrid cache from new content finder * Eliminate nucache usage * Fixed issue with delivery api and url generation * Fixed linux tests * Added hybrid cache to all integration tests
This commit is contained in:
@@ -17,8 +17,9 @@ public static class ContentBaseExtensions
|
||||
/// <param name="shortStringHelper"></param>
|
||||
/// <param name="urlSegmentProviders"></param>
|
||||
/// <param name="culture">The culture.</param>
|
||||
/// <param name="published">Whether to get the published or draft.</param>
|
||||
/// <returns>The URL segment.</returns>
|
||||
public static string? GetUrlSegment(this IContentBase content, IShortStringHelper shortStringHelper, IEnumerable<IUrlSegmentProvider> urlSegmentProviders, string? culture = null)
|
||||
public static string? GetUrlSegment(this IContentBase content, IShortStringHelper shortStringHelper, IEnumerable<IUrlSegmentProvider> urlSegmentProviders, string? culture = null, bool published = true)
|
||||
{
|
||||
if (content == null)
|
||||
{
|
||||
@@ -30,7 +31,7 @@ public static class ContentBaseExtensions
|
||||
throw new ArgumentNullException(nameof(urlSegmentProviders));
|
||||
}
|
||||
|
||||
var url = urlSegmentProviders.Select(p => p.GetUrlSegment(content, culture)).FirstOrDefault(u => u != null);
|
||||
var url = urlSegmentProviders.Select(p => p.GetUrlSegment(content, published, culture)).FirstOrDefault(u => u != null);
|
||||
if (url == null)
|
||||
{
|
||||
if (_defaultUrlSegmentProvider == null)
|
||||
|
||||
Reference in New Issue
Block a user