From 3c811009578a96224d6f7e9ab2a727de61d88c92 Mon Sep 17 00:00:00 2001 From: JonnyWong16 Date: Fri, 2 Feb 2018 23:03:48 -0800 Subject: [PATCH] Fix media info table sorting --- plexpy/libraries.py | 6 +++--- plexpy/webserve.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plexpy/libraries.py b/plexpy/libraries.py index d43e1309..38ed331f 100644 --- a/plexpy/libraries.py +++ b/plexpy/libraries.py @@ -544,19 +544,19 @@ class Libraries(object): filtered_count = len(results) # Sort results - results = sorted(results, key=lambda k: k['sort_title']) + results = sorted(results, key=lambda k: k['sort_title'].lower()) sort_order = json_data['order'] for order in reversed(sort_order): sort_key = json_data['columns'][int(order['column'])]['data'] reverse = True if order['dir'] == 'desc' else False if rating_key and sort_key == 'sort_title': results = sorted(results, key=lambda k: helpers.cast_to_int(k['media_index']), reverse=reverse) - elif sort_key == 'file_size' or sort_key == 'bitrate': + elif sort_key in ('file_size', 'bitrate', 'added_at', 'last_played', 'play_count'): results = sorted(results, key=lambda k: helpers.cast_to_int(k[sort_key]), reverse=reverse) elif sort_key == 'video_resolution': results = sorted(results, key=lambda k: helpers.cast_to_int(k[sort_key].replace('4k', '2160p').rstrip('p')), reverse=reverse) else: - results = sorted(results, key=lambda k: k[sort_key], reverse=reverse) + results = sorted(results, key=lambda k: k[sort_key].lower(), reverse=reverse) total_file_size = sum([helpers.cast_to_int(d['file_size']) for d in results]) diff --git a/plexpy/webserve.py b/plexpy/webserve.py index 7a186563..c7e1b93c 100644 --- a/plexpy/webserve.py +++ b/plexpy/webserve.py @@ -674,7 +674,7 @@ class WebInterface(object): if not kwargs.get('json_data'): # Alias 'title' to 'sort_title' if kwargs.get('order_column') == 'title': - kwargs['order_column'] == 'sort_title' + kwargs['order_column'] = 'sort_title' # TODO: Find some one way to automatically get the columns dt_columns = [("added_at", True, False),