jellyfin/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs

35 lines
1,002 B
C#
Raw Normal View History

using System;
2019-01-12 21:41:08 +01:00
using MediaBrowser.Controller.Entities;
2013-09-13 22:45:27 +02:00
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
namespace Emby.Server.Implementations.Sorting
2013-09-13 22:45:27 +02:00
{
class SeriesSortNameComparer : IBaseItemComparer
{
/// <summary>
/// Compares the specified x.
/// </summary>
/// <param name="x">The x.</param>
/// <param name="y">The y.</param>
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
2016-03-24 21:27:44 +01:00
return string.Compare(GetValue(x), GetValue(y), StringComparison.CurrentCultureIgnoreCase);
2013-09-13 22:45:27 +02:00
}
private static string GetValue(BaseItem item)
2013-09-13 22:45:27 +02:00
{
2016-07-10 17:44:53 +02:00
var hasSeries = item as IHasSeries;
2013-09-13 22:45:27 +02:00
2017-05-05 19:55:38 +02:00
return hasSeries != null ? hasSeries.FindSeriesSortName() : null;
2013-09-13 22:45:27 +02:00
}
2019-01-12 21:41:08 +01:00
2013-09-13 22:45:27 +02:00
/// <summary>
/// Gets the name.
/// </summary>
/// <value>The name.</value>
public string Name => ItemSortBy.SeriesSortName;
2013-09-13 22:45:27 +02:00
}
}