| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | 
							- using System;
 
- using System.Collections.Generic;
 
- namespace MediaBrowser.Model.Dto
 
- {
 
-     public static class ItemLayout
 
-     {
 
-         public static double? GetDisplayAspectRatio(BaseItemDto item)
 
-         {
 
-             List<BaseItemDto> items = new List<BaseItemDto>();
 
-             items.Add(item);
 
-             return GetDisplayAspectRatio(items);
 
-         }
 
-         public static double? GetDisplayAspectRatio(List<BaseItemDto> items)
 
-         {
 
-             List<double> values = new List<double>();
 
-             foreach (BaseItemDto item in items)
 
-             {
 
-                 if (item.PrimaryImageAspectRatio.HasValue)
 
-                 {
 
-                     values.Add(item.PrimaryImageAspectRatio.Value);
 
-                 }
 
-             }
 
-             if (values.Count == 0)
 
-             {
 
-                 return null;
 
-             }
 
-             values.Sort();
 
-             double halfDouble = values.Count;
 
-             halfDouble /= 2;
 
-             int half = Convert.ToInt32(Math.Floor(halfDouble));
 
-             double result;
 
-             if (values.Count % 2 > 0)
 
-                 result = values[half];
 
-             else
 
-                 result = (values[half - 1] + values[half]) / 2.0;
 
-             // If really close to 2:3 (poster image), just return 2:3
 
-             if (Math.Abs(0.66666666667 - result) <= .15) 
 
-             {
 
-                 return 0.66666666667;
 
-             }
 
-             // If really close to 16:9 (episode image), just return 16:9
 
-             if (Math.Abs(1.777777778 - result) <= .2)
 
-             {
 
-                 return 1.777777778;
 
-             }
 
-             // If really close to 1 (square image), just return 1
 
-             if (Math.Abs(1 - result) <= .15)
 
-             {
 
-                 return 1.0;
 
-             }
 
-             // If really close to 4:3 (poster image), just return 2:3
 
-             if (Math.Abs(1.33333333333 - result) <= .15)
 
-             {
 
-                 return 1.33333333333;
 
-             }
 
-             return result;
 
-         }
 
-     }
 
- }
 
 
  |