Fix merge

This commit is contained in:
Stephan
2019-04-24 09:32:49 +02:00
parent be93773399
commit eb390f8d80
8 changed files with 100 additions and 115 deletions

View File

@@ -13,7 +13,7 @@ namespace Umbraco.Web.Routing
/// <inheritdoc />
public virtual UrlInfo GetMediaUrl(UmbracoContext umbracoContext, IPublishedContent content,
string propertyAlias,
UrlProviderMode mode, string culture, Uri current)
UrlMode mode, string culture, Uri current)
{
var prop = content.GetProperty(propertyAlias);
var value = prop?.GetValue(culture);
@@ -40,7 +40,7 @@ namespace Umbraco.Web.Routing
return url == null ? null : UrlInfo.Url(url.ToString(), culture);
}
private Uri AssembleUrl(string path, Uri current, UrlProviderMode mode)
private Uri AssembleUrl(string path, Uri current, UrlMode mode)
{
if (string.IsNullOrEmpty(path))
return null;
@@ -48,15 +48,15 @@ namespace Umbraco.Web.Routing
Uri uri;
if (current == null)
mode = UrlProviderMode.Relative; // best we can do
mode = UrlMode.Relative; // best we can do
switch (mode)
{
case UrlProviderMode.Absolute:
case UrlMode.Absolute:
uri = new Uri(current?.GetLeftPart(UriPartial.Authority) + path);
break;
case UrlProviderMode.Relative:
case UrlProviderMode.Auto:
case UrlMode.Relative:
case UrlMode.Auto:
uri = new Uri(path, UriKind.Relative);
break;
default:

View File

@@ -26,6 +26,6 @@ namespace Umbraco.Web.Routing
/// e.g. a cdn url provider will most likely always return an absolute url.</para>
/// <para>If the provider is unable to provide a url, it returns <c>null</c>.</para>
/// </remarks>
UrlInfo GetMediaUrl(UmbracoContext umbracoContext, IPublishedContent content, string propertyAlias, UrlProviderMode mode, string culture, Uri current);
UrlInfo GetMediaUrl(UmbracoContext umbracoContext, IPublishedContent content, string propertyAlias, UrlMode mode, string culture, Uri current);
}
}

View File

@@ -79,31 +79,6 @@ namespace Umbraco.Web.Routing
private IPublishedContent GetDocument(int id) => _umbracoContext.Content.GetById(id);
private IPublishedContent GetDocument(Guid id) => _umbracoContext.Content.GetById(id);
/// <summary>
/// Gets the url of a published content.
/// </summary>
/// <param name="content">The published content.</param>
/// <param name="culture">A culture.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the published content.</returns>
public string GetUrl(IPublishedContent content, string culture = null, Uri current = null)
=> GetUrl(content, Mode, culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
/// <param name="content">The published content.</param>
/// <param name="absolute">A value indicating whether the url should be absolute in any case.</param>
/// <param name="culture">A culture.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the published content.</returns>
/// <remarks>
/// <para>The url is absolute or relative depending on <c>Mode</c> and on <c>current</c>, unless
/// <c>absolute</c> is true, in which case the url is always absolute.</para>
/// </remarks>
public string GetUrl(IPublishedContent content, bool absolute, string culture = null, Uri current = null)
=> GetUrl(content, GetMode(absolute), culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
@@ -114,21 +89,6 @@ namespace Umbraco.Web.Routing
public string GetUrl(Guid id, string culture = null, Uri current = null)
=> GetUrl(GetDocument(id), Mode, culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
/// <param name="id">The published content identifier.</param>
/// <param name="absolute">A value indicating whether the url should be absolute in any case.</param>
/// <param name="culture">A culture.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the published content.</returns>
/// <remarks>
/// <para>The url is absolute or relative depending on <c>Mode</c> and on <c>current</c>, unless
/// <c>absolute</c> is true, in which case the url is always absolute.</para>
/// </remarks>
public string GetUrl(Guid id, bool absolute, string culture = null, Uri current = null)
=> GetUrl(GetDocument(id), GetMode(absolute), culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
@@ -150,21 +110,6 @@ namespace Umbraco.Web.Routing
public string GetUrl(int id, string culture = null, Uri current = null)
=> GetUrl(GetDocument(id), Mode, culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
/// <param name="id">The published content identifier.</param>
/// <param name="absolute">A value indicating whether the url should be absolute in any case.</param>
/// <param name="culture">A culture.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the published content.</returns>
/// <remarks>
/// <para>The url is absolute or relative depending on <c>Mode</c> and on <c>current</c>, unless
/// <c>absolute</c> is true, in which case the url is always absolute.</para>
/// </remarks>
public string GetUrl(int id, bool absolute, string culture = null, Uri current = null)
=> GetUrl(GetDocument(id), GetMode(absolute), culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
@@ -176,6 +121,16 @@ namespace Umbraco.Web.Routing
public string GetUrl(int id, UrlMode mode, string culture = null, Uri current = null)
=> GetUrl(GetDocument(id), mode, culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
/// <param name="content">The published content.</param>
/// <param name="culture">A culture.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the published content.</returns>
public string GetUrl(IPublishedContent content, string culture = null, Uri current = null)
=> GetUrl(content, Mode, culture, current);
/// <summary>
/// Gets the url of a published content.
/// </summary>
@@ -273,7 +228,7 @@ namespace Umbraco.Web.Routing
/// when no culture is specified, the current culture.</para>
/// <para>If the provider is unable to provide a url, it returns <see cref="String.Empty"/>.</para>
/// </remarks>
public string GetMediaUrl(IPublishedContent content, string propertyAlias, UrlMode mode = UrlMode.Wtf, string culture = null, Uri current = null)
public string GetMediaUrl(IPublishedContent content, string propertyAlias, string culture = null, Uri current = null)
=> GetMediaUrl(content, propertyAlias, Mode, culture, current);
/// <summary>
@@ -281,23 +236,6 @@ namespace Umbraco.Web.Routing
/// </summary>
/// <param name="content">The published content.</param>
/// <param name="propertyAlias">The property alias to resolve the url from.</param>
/// <param name="absolute">A value indicating whether the url should be absolute in any case.</param>
/// <param name="culture">The variation language.</param>
/// <param name="current">The current absolute url.</param>
/// <returns>The url for the media.</returns>
/// <remarks>
/// <para>The url is absolute or relative depending on <c>mode</c> and on <c>current</c>.</para>
/// <para>If the media is multi-lingual, gets the url for the specified culture or,
/// when no culture is specified, the current culture.</para>
/// <para>If the provider is unable to provide a url, it returns <see cref="String.Empty"/>.</para>
/// </remarks>
public string GetMediaUrl(IPublishedContent content, string propertyAlias, boolx absolute, string culture = null, Uri current = null)
=> GetMediaUrl(content, propertyAlias, GetMode(absolute), culture, current);
/// <summary>
/// Gets the url of a media item.
/// </summary>
/// <param name="content">The published content.</param>
/// <param name="propertyAlias">The property alias to resolve the url from.</param>
/// <param name="mode">The url mode.</param>
/// <param name="culture">The variation language.</param>
/// <param name="current">The current absolute url.</param>
@@ -308,9 +246,7 @@ namespace Umbraco.Web.Routing
/// when no culture is specified, the current culture.</para>
/// <para>If the provider is unable to provide a url, it returns <see cref="String.Empty"/>.</para>
/// </remarks>
public string GetMediaUrl(IPublishedContent content,
string propertyAlias, UrlMode mode = UrlMode.Wtf,
string culture = null, Uri current = null)
public string GetMediaUrl(IPublishedContent content, string propertyAlias, UrlMode mode, string culture = null, Uri current = null)
{
if (propertyAlias == null) throw new ArgumentNullException(nameof(propertyAlias));