From 3a315d3b485170feaefbdf026dbad2b40a6770d3 Mon Sep 17 00:00:00 2001 From: Piotr Szmyd Date: Fri, 14 Dec 2012 21:53:32 +0100 Subject: [PATCH] #19205: Fixing unit tests. Menu items with position X.0 should be treated as having a position X when searching for parent. Work Item: 19205 --HG-- branch : 1.x --- src/Orchard/UI/Navigation/MenuItemComparer.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Orchard/UI/Navigation/MenuItemComparer.cs b/src/Orchard/UI/Navigation/MenuItemComparer.cs index 43ccb4244..bc996b1aa 100644 --- a/src/Orchard/UI/Navigation/MenuItemComparer.cs +++ b/src/Orchard/UI/Navigation/MenuItemComparer.cs @@ -37,10 +37,10 @@ namespace Orchard.UI.Navigation { } if (!string.IsNullOrWhiteSpace(x.Position) && !string.IsNullOrWhiteSpace(y.Position)) { - var xLastDot = x.Position.LastIndexOf('.'); - var yLastDot = y.Position.LastIndexOf('.'); - var xParentPosition = xLastDot == -1 ? null : x.Position.Substring(0, xLastDot); - var yParentPosition = yLastDot == -1 ? null : y.Position.Substring(0, yLastDot); + var xPosSplitted = x.Position.Split('.').Where(ss => ss != "0").ToArray(); + var yPosSplitted = y.Position.Split('.').Where(ss => ss != "0").ToArray(); + var xParentPosition = xPosSplitted.Length > 0 ? string.Join(".", xPosSplitted.Take(xPosSplitted.Length - 1)) : null; + var yParentPosition = yPosSplitted.Length > 0 ? string.Join(".", yPosSplitted.Take(yPosSplitted.Length - 1)) : null; if (!string.Equals(xParentPosition, yParentPosition)) {