Skip to content

Commit 9a97e48

Browse files
committed
Fixed: excluded paths, forcing https while https is on
1 parent 9edc614 commit 9a97e48

File tree

8 files changed

+48
-11
lines changed

8 files changed

+48
-11
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
using NUnit.Framework;
2+
using Sitecore.SharedSource.DynamicSitemap.Extensions;
3+
using System;
4+
5+
namespace Sitecore.SharedSource.DynamicSitemap.Tests
6+
{
7+
[TestFixture]
8+
public class ExtensionsTests
9+
{
10+
[Test]
11+
public void TestReplaceFirst()
12+
{
13+
String url = "http://old.host.dev/page?arg=1";
14+
String expectedResult = "https://old.host.dev/page?arg=1";
15+
16+
String urlWithTwoOccurences = "http://old.host.http.dev/page?arg=1";
17+
String expectedResultWithTwoOccurences = "https://old.host.http.dev/page?arg=1";
18+
19+
Assert.AreEqual(url.ReplaceFirst("http", "https"), expectedResult);
20+
Assert.AreEqual(urlWithTwoOccurences.ReplaceFirst("http", "https"), expectedResultWithTwoOccurences);
21+
}
22+
}
23+
}

Sitecore.SharedSource.DynamicSitemap.Tests/HelperTests.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,15 @@ public void TestEnsureHttpPrefix()
2424
{
2525
String urlWithHttp = "http://old.host.dev/page?arg=1";
2626
String urlWithHttps = "https://old.host.dev/page?arg=1";
27-
String urlWithoutHttp = "://old.host.dev/page?arg=1";
27+
String urlWithoutProtocol = "://old.host.dev/page?arg=1";
2828

2929
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithHttp), urlWithHttp);
3030
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithHttps), urlWithHttps);
3131

32-
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithoutHttp), "http" + urlWithoutHttp);
33-
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithoutHttp, true), "https" + urlWithoutHttp);
34-
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithHttp, true), "https" + urlWithoutHttp);
32+
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithoutProtocol), "http" + urlWithoutProtocol);
33+
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithoutProtocol, true), "https" + urlWithoutProtocol);
34+
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithHttp, true), "https" + urlWithoutProtocol);
35+
Assert.AreEqual(DynamicSitemapHelper.EnsureHttpPrefix(urlWithHttps, true), "https" + urlWithoutProtocol);
3536
}
3637
}
3738
}

Sitecore.SharedSource.DynamicSitemap.Tests/Sitecore.SharedSource.DynamicSitemap.Tests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@
6262
</Otherwise>
6363
</Choose>
6464
<ItemGroup>
65+
<Compile Include="ExtensionsTests.cs" />
6566
<Compile Include="HelperTests.cs" />
6667
<Compile Include="Properties\AssemblyInfo.cs" />
6768
</ItemGroup>

Sitecore.SharedSource.DynamicSitemap/Constants/Messages.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public static class Messages
1515

1616
public static readonly String ExceptionWhileBuilding = Label + "Exception while building sitemap for {0} - {1}\n\n{2}";
1717

18-
public static readonly String SitemapBuidSuccess = Label + "Sitemap generated - {0}";
18+
public static readonly String SitemapBuildSuccess = Label + "Sitemap generated - {0}";
1919

2020
public static readonly String SitemapSubmitterCannotSubmit = Label + "Cannot submit sitemap to \"{0}\" - {1}";
2121
public static readonly String SitemapSubmitterExceptionWhileSubmit = Label + "Search engine submission \"{0}\" returns an error - {1} \n\n{2}";

Sitecore.SharedSource.DynamicSitemap/DynamicSitemapGenerator.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ public void ReadConfigurations()
172172
}
173173

174174
/// <summary>
175-
/// Read global SC configuration
175+
/// Read global configuration from Sitecore
176176
/// </summary>
177177
protected void ReadGlobalSitecoreConfiguration()
178178
{
@@ -280,7 +280,7 @@ public String BuildSitemap(SitemapSiteConfiguration sitemapSiteConfiguration)
280280

281281
result = stringWriter.ToString();
282282

283-
Sitecore.Diagnostics.Log.Info(String.Format(Messages.SitemapBuidSuccess, sitemapSiteConfiguration), this);
283+
Sitecore.Diagnostics.Log.Info(String.Format(Messages.SitemapBuildSuccess, sitemapSiteConfiguration), this);
284284
}
285285

286286
return result;
@@ -545,7 +545,7 @@ protected bool IsIncluded(Item item, SitemapSiteConfiguration sitemapSiteConfigu
545545

546546
if (!sitemapSiteConfiguration.ExcludedItems.Any(x => x == item.ID.ToString())
547547
&& sitemapSiteConfiguration.IncludedTemplates.Contains(item.TemplateID.ToString())
548-
&& !sitemapSiteConfiguration.ExcludedItemPaths.Any(x => item.Paths.FullPath.StartsWith(x.Paths.FullPath) && item.Paths.FullPath.Equals(x.Paths.FullPath))
548+
&& !sitemapSiteConfiguration.ExcludedItemPaths.Any(x => item.Paths.FullPath.ToLower().StartsWith(x.Paths.FullPath.ToLower()) || item.Paths.FullPath.ToLower().Equals(x.Paths.FullPath.ToLower()))
549549
&& (item.Paths.FullPath.StartsWith(sitemapSiteConfiguration.RootItem.Paths.FullPath)
550550
|| item.Paths.FullPath.Equals(sitemapSiteConfiguration.RootItem.Paths.FullPath)
551551
|| isDataSourceItem)) // - datasource items can be out of root item

Sitecore.SharedSource.DynamicSitemap/Helpers/DynamicSitemapHelper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@ public static String EnsureHttpPrefix(String url, bool useHttps = false)
6060
{
6161
url = (useHttps ? "https" : "http") + url;
6262
}
63-
64-
else if (url.StartsWith("http") && useHttps)
63+
64+
else if (url.StartsWith("http") && !url.StartsWith("https") && useHttps)
6565
{
6666
url = url.ReplaceFirst("http", "https");
6767
}

Sitecore.SharedSource.DynamicSitemap/Model/SitemapSiteConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ public String SitemapUrl
165165
: Site.HostName;
166166
}
167167

168-
url = url.Replace("//", "/");
168+
//url = url.Replace("//", "/");
169169
url = !url.StartsWith("http://")
170170
? "http://" + url
171171
: url;

Sitecore.SharedSource.DynamicSitemap/Model/UrlElement.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,24 @@ namespace Sitecore.SharedSource.DynamicSitemap.Model
1111
/// </summary>
1212
public class UrlElement
1313
{
14+
/// <summary>
15+
/// The &lt;loc&gt; element
16+
/// </summary>
1417
public String Location { get; set; }
1518

19+
/// <summary>
20+
/// The &lt;lastmod&gt; element
21+
/// </summary>
1622
public DateTime LastModification { get; set; }
1723

24+
/// <summary>
25+
/// The &lt;changefreq&gt; element
26+
/// </summary>
1827
public String ChangeFrequency { get; set; }
1928

29+
/// <summary>
30+
/// The &lt;priority&gt; element
31+
/// </summary>
2032
public String Priority { get; set; }
2133
}
2234
}

0 commit comments

Comments
 (0)