From 5a5fe76a2769d6a969b96edd2289de07f0956dbb Mon Sep 17 00:00:00 2001 From: herby2212 <12448284+herby2212@users.noreply.github.com> Date: Sun, 15 Oct 2023 18:33:10 +0200 Subject: [PATCH] initial release --- data/interfaces/default/css/tautulli.css | 28 ++++++++++++++++++- .../default/js/tables/history_table.js | 12 +++++--- plexpy/datafactory.py | 10 +++++-- 3 files changed, 43 insertions(+), 7 deletions(-) diff --git a/data/interfaces/default/css/tautulli.css b/data/interfaces/default/css/tautulli.css index e256d2d7..b8249a21 100644 --- a/data/interfaces/default/css/tautulli.css +++ b/data/interfaces/default/css/tautulli.css @@ -1281,7 +1281,7 @@ a .dashboard-activity-metadata-user-thumb:hover { -webkit-backface-visibility: hidden; backface-visibility: hidden; z-index: 1; - -webkit-border-radius: 50%; + -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 350%; overflow: hidden; @@ -2854,6 +2854,32 @@ a .home-platforms-list-cover-face:hover overflow: hidden; max-width: 350px; } +.circle { + margin: 0.05rem; + display: inline-block; + width: 1.55rem; + height: 1.55rem; + border-radius: 50%; + border: 0.2rem solid white; +} +.circle-quarter { + background-image: + linear-gradient(00deg, #0e253f 50%, transparent 50%), + linear-gradient(90deg, #d1d1d1 50%, transparent 50%); +} +.circle-half { + background-image: + linear-gradient(-90deg, #0e253f 50%, transparent 50%), + linear-gradient(90deg, #d1d1d1 50%, transparent 50%); + } +.circle-three-quarter { + background-image: + linear-gradient(180deg, transparent 50%, #d1d1d1 50%), + linear-gradient(90deg, #d1d1d1 50%, transparent 50%); +} +.circle-full { + background: #d1d1d1; +} #graph-tabs { padding-bottom: 10px; float: none; diff --git a/data/interfaces/default/js/tables/history_table.js b/data/interfaces/default/js/tables/history_table.js index d209f90e..7f9d578f 100644 --- a/data/interfaces/default/js/tables/history_table.js +++ b/data/interfaces/default/js/tables/history_table.js @@ -263,13 +263,17 @@ history_table_options = { "targets": [12], "data": "watched_status", "createdCell": function (td, cellData, rowData, row, col) { + var circleValue = ""; if (cellData == 1) { - $(td).html(''); + circleValue = " circle-full"; + } else if (cellData == 0.75) { + circleValue = " circle-three-quarter"; } else if (cellData == 0.5) { - $(td).html(''); - } else { - $(td).html(''); + circleValue = " circle-half"; + } else if (cellData == 0.25) { + circleValue = " circle-quarter"; } + $(td).html('
'); }, "searchable": false, "orderable": false, diff --git a/plexpy/datafactory.py b/plexpy/datafactory.py index 3db32a51..efca7b92 100644 --- a/plexpy/datafactory.py +++ b/plexpy/datafactory.py @@ -282,13 +282,19 @@ class DataFactory(object): if item['live']: item['percent_complete'] = 100 + base_watched_value = watched_percent[item['media_type']] / 4.0 + if helpers.check_watched( item['media_type'], item['view_offset'], item['duration'], item['marker_credits_first'], item['marker_credits_final'] ): watched_status = 1 - elif item['percent_complete'] >= watched_percent[item['media_type']] / 2.0: - watched_status = 0.5 + elif item['percent_complete'] >= base_watched_value * 3.0: + watched_status = 0.75 + elif item['percent_complete'] >= base_watched_value * 2.0: + watched_status = 0.50 + elif item['percent_complete'] >= base_watched_value: + watched_status = 0.25 else: watched_status = 0