diff --git a/CHANGES.md b/CHANGES.md
index 562c03d..ff46d39 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,5 +1,6 @@
### 0.23.0 (2019-xx-xx xx:xx:xx UTC)
+* Add overview of the last release age/date at each newznab provider to History/Layout "Connect fails"
* Add "History new..." to Shows menu by clicking the number
* Add db backup to the scheduled daily update
* Add display "Database backups" location at config/about if feature available
@@ -39,6 +40,8 @@
* Change API version to 14
* Change add a test for both require and ignore show specific words with partial match, both should fail
* Change init showDict for all unit tests
+* Add enum34 1.1.10
+* Add humanize 3.1.0 (aec9dc2)
* Update included fallback timezone info file to 2020d
* Update attr 20.1.0.dev0 (4bd6827) to 20.2.0 (4f74fba)
* Update Beautiful Soup 4.8.2 (r559) to 4.9.3 (r593)
diff --git a/gui/slick/css/style.css b/gui/slick/css/style.css
index 7a3232c..cf10cad 100644
--- a/gui/slick/css/style.css
+++ b/gui/slick/css/style.css
@@ -2775,6 +2775,14 @@ history.tmpl
background-color:#3f993f
}
+.yellow-bg{
+ background-color:#cfd958;
+ color:#282828
+}
+.blue-bg{
+ background-color:#2779d0
+}
+
#history-table td,
#history-table td.provider span{
text-align:center
diff --git a/gui/slick/interfaces/default/history.tmpl b/gui/slick/interfaces/default/history.tmpl
index 5f2d393..7803e22 100644
--- a/gui/slick/interfaces/default/history.tmpl
+++ b/gui/slick/interfaces/default/history.tmpl
@@ -10,6 +10,8 @@
<% def sg_var(varname, default=False): return getattr(sickbeard, varname, default) %>#slurp#
<% def sg_str(varname, default=''): return getattr(sickbeard, varname, default) %>#slurp#
##
+#import humanize
+##
#set $layout = $sg_str('HISTORY_LAYOUT', 'detailed')
#set $layout_name = 'watched' in $layout and 'Watched' or 'stats' in $layout and 'Activity Hits' or 'provider_failures'in $layout and 'Connect Failures' or 'Activity'
#set sg_port = str($getVar('sbHttpPort', WEB_PORT))
@@ -396,7 +398,6 @@
Label (Profile): emby or kodi , !kodi and !plex , emby user2 , emby user" (single end quote excludes user2)
Quality: sd or dl , blu
-
@@ -591,9 +592,6 @@
##
- #for $cur_provider in $sickbeard.newznabProviderList:
-
)
$cur_provider.get_id() - latest release date: $cur_provider.last_recent_search
- #end for
#for ($check, $check_name, $check_url) in [
('tvdb', 'TVDB Api', 'api.thetvdb.com'), ('thexem', 'The Xem', 'thexem.de'), ('github', 'GitHub', 'github.com'),
]
@@ -606,6 +604,82 @@
#end for
+#if $sickbeard.USE_NZBS
+
+
+
+
+
+ |
+ last release age |
+ dated |
+ provider is... |
+
+
+ #set global $row = 0
+
+ #for $cur_provider in $sorted($sickbeard.newznabProviderList, key=lambda x: x.last_recent_search or SGDatetime(2000,1,1), reverse=True)
+ #set $last_rls_date = '-'
+ #set $last_rls_age = None
+ #set $last_rls_age_str = '-'
+ #if $cur_provider.last_recent_search
+ #set $last_rls_date = $SGDatetime.sbfdatetime($cur_provider.last_recent_search)
+ #set $last_rls_timedelta = ($SGDatetime.now() - $cur_provider.last_recent_search)
+ #set $last_rls_age = $last_rls_timedelta.days
+ #set $last_rls_age_str = '%s days ago' % $last_rls_age
+ #set $tmp = $humanize.naturalday(cur_provider.last_recent_search, format='', locale=False)
+ #if $tmp
+ #if 'yesterday' == $tmp
+ #set $last_rls_age_str = $humanize.naturalday(cur_provider.last_recent_search)
+ #else
+ #set $last_rls_age_str = $humanize.naturaltime($last_rls_timedelta)
+ #end if
+ #end if
+ #end if
+ #set $status_class = 'yellow-bg'
+ #set $status_text = 'not enabled'
+ #if $cur_provider.is_active()
+ #if not $cur_provider.enable_recentsearch
+ #set $status_text = 'recent ' + $status_text
+ #else
+ #set $status_class = 'contrast-text green-bg'
+ #set $status_text = 'enabled'
+ #if '-' != $last_rls_date
+ #if 4 > $last_rls_age
+ #set $status_text = 'normal'
+ #else
+ #set $status_class = 'contrast-text'
+ #if 14 >= $last_rls_age
+ #set $status_class += ' blue-bg'
+ #set $status_text = 'overdue'
+ #else
+ #set $status_class += ' red-bg'
+ #set $status_text = 'not normal'
+ #end if
+ #end if
+ #end if
+ #end if
+ #end if
+
+
+ $cur_provider.name
+ |
+ $last_rls_age_str |
+ $last_rls_date |
+ $status_text |
+
+ #end for
+
+
+
+#end if
+
#if $domain_fail_cnt or $provider_fail_cnt