mirror of
https://github.com/SickGear/SickGear.git
synced 2024-12-02 17:33:37 +00:00
Merge branch 'feature/AddIsSiteDown' into develop
This commit is contained in:
commit
27c73d3d3b
6 changed files with 113 additions and 5 deletions
|
@ -1,9 +1,10 @@
|
|||
### 0.17.0 (2018-xx-xx xx:xx:xx UTC)
|
||||
|
||||
* Change add "Keep up to x most recent downloads" to Edit Show/Other
|
||||
* Change add "Keep up to x most recent downloads" to Manage/Bulk Change/Edit
|
||||
* Add TVDB, TheXem, and GitHub buttons to page History/Layout "Provider fails" that fetches a site Up/Down report
|
||||
* Add "Keep up to x most recent downloads" to Edit Show/Other
|
||||
* Add "Keep up to x most recent downloads" to Manage/Bulk Change/Edit
|
||||
* Change append number of downloads to keep to the number of file(s) at Display Show
|
||||
* Change add "Keep up to x most recent downloads" to add show finally step
|
||||
* Add "Keep up to x most recent downloads" to add show finally step
|
||||
* Add prune to refreshDir/rescan
|
||||
* Update Tornado Web Server 5.0.1 (35a538f) to 5.0.1 (2b2a220a)
|
||||
* Add HDME torrent provider
|
||||
|
|
|
@ -3282,6 +3282,9 @@ input.get_less_eps{
|
|||
margin:0 6px 0 0;
|
||||
min-width:70px
|
||||
}
|
||||
#provider-failures .check-site .btn{
|
||||
min-width:115px
|
||||
}
|
||||
#media-search .btn.shows-more,
|
||||
#media-search .btn.shows-less,
|
||||
#provider-failures .btn.shows-more,
|
||||
|
@ -3604,6 +3607,23 @@ img[src=""],img:not([src]){
|
|||
top:-999px
|
||||
}
|
||||
|
||||
.box-green{
|
||||
background-color:#68b92b
|
||||
}
|
||||
.box-red{
|
||||
background-color:#b72828
|
||||
}
|
||||
.box-green,
|
||||
.box-red{
|
||||
color:#eee;
|
||||
padding:0 10px;
|
||||
text-align:center;
|
||||
text-decoration:none;
|
||||
border-radius:4px 4px 4px 4px;
|
||||
-moz-border-radius:3px;
|
||||
-webkit-border-radius:3px
|
||||
}
|
||||
|
||||
/* =======================================================================
|
||||
bootstrap Overrides
|
||||
========================================================================== */
|
||||
|
|
BIN
gui/slick/images/iidrn.png
Normal file
BIN
gui/slick/images/iidrn.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 805 B |
|
@ -589,8 +589,19 @@
|
|||
##
|
||||
##
|
||||
<div id="provider-failures">
|
||||
#for ($check, $check_name, $check_url) in [
|
||||
('tvdb', 'TVDB Api', 'api.thetvdb.com'), ('thexem', 'The Xem', 'thexem.de'), ('github', 'GitHub', 'github.com'),
|
||||
]
|
||||
<div id="check-$check" data-check="check_$check" class="check-site" style="margin-bottom:10px">
|
||||
<input type="button" class="btn" value="Check $check_name">
|
||||
<span style="line-height:26px">Test if site is up<span class="result"></span>
|
||||
<a class="addQTip" style="margin-left:2px;display:none" href="$sickbeard.helpers.anon_url('http://www.isitdownrightnow.com/downorjustme.php?url=' + $check_url)" rel="noreferrer" onclick="window.open(this.href, '_blank'); return !1;" title="View full report for $check_name in new tab"><img alt="[IsItDown]" height="16" width="16" src="$sbRoot/images/iidrn.png" /></a>
|
||||
</span>
|
||||
</div>
|
||||
#end for
|
||||
|
||||
#if not $provider_fails
|
||||
<p>No current failures. Failure stats display here when appropriate.</p>
|
||||
<p>No current provider failures. Failure stats display here when appropriate.</p>
|
||||
#else
|
||||
<p>When a provider cannot be contacted over a period, SickGear backs off and waits an increasing interval between each retry</p>
|
||||
#for $prov in $provider_fail_stats
|
||||
|
@ -604,7 +615,7 @@
|
|||
#else
|
||||
#set $prov_class = $prov_class % ''
|
||||
#end if
|
||||
<input type="button" class="shows-more btn" value="Expand" style="display:none"><input type="button" class="shows-less btn" value="Collapse"><img src="$sbRoot/images/providers/$prov['prov_img']" width="16" height="16" style="margin:0 6px 0 3px">$prov_class$prov['name']
|
||||
<input type="button" class="shows-more btn" value="Expand" style="display:none"><input type="button" class="shows-less btn" value="Collapse"><img src="$sbRoot/images/providers/$prov['prov_img']" width="16" height="16" style="margin:0 6px 0 3px">$prov_class$prov['name']
|
||||
#if $prov['active']
|
||||
#if $prov['next_try']
|
||||
#set nt = $str($prov['next_try']).split('.', 2)[0][::-1].replace(':', ' m', 1).replace(':', ' h', 1)[::-1]
|
||||
|
|
|
@ -186,6 +186,49 @@ $(document).ready(function() {
|
|||
$.SickGear.sumChecked();
|
||||
});
|
||||
|
||||
function updown(data){
|
||||
var result = ': <span class="grey-text">failed to test site, oh the irony!</span>';
|
||||
|
||||
if(!(/undefined/i.test(data))) {
|
||||
// noinspection JSUnresolvedVariable
|
||||
var resp = data.last_down;
|
||||
|
||||
if (!(/undefined/i.test(resp))) {
|
||||
result = ': <span class="grey-text"> yes it\'s <span class="box-green">up</span> and was last down ' + resp + ' ago</span>';
|
||||
} else {
|
||||
// noinspection JSUnresolvedVariable
|
||||
resp = data.down_for;
|
||||
if (!(/undefined/i.test(resp))) {
|
||||
result = ': <span class="red-text">no, it\'s been <span class="box-red">down</span> for ~' + resp + '</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
function check_site(clicked){
|
||||
var that = $(clicked), el$=$(that.parent());
|
||||
that.attr('disabled', !0);
|
||||
$.ajax({
|
||||
url: $.SickGear.Root + '/history/check_site/?site_name=' + el$.attr('data-check'),
|
||||
type: 'GET',
|
||||
dataType: 'json',
|
||||
complete: function (data) {
|
||||
// noinspection JSUnresolvedVariable
|
||||
el$.find('.result').html(updown(data.responseJSON));
|
||||
el$.find('a').show();
|
||||
that.attr('disabled', !1);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$.each(['tvdb', 'thexem', 'github'], function(i, el_id){
|
||||
$('#check-' + el_id).find('input').click(function(){
|
||||
check_site(this);
|
||||
});
|
||||
});
|
||||
|
||||
$('.shows-less').click(function(){
|
||||
var table$ = $(this).nextAll('table:first');
|
||||
table$ = table$.length ? table$ : $(this).parent().nextAll('table:first');
|
||||
|
|
|
@ -5329,6 +5329,39 @@ class History(MainHandler):
|
|||
|
||||
return t.respond()
|
||||
|
||||
def check_site(self, site_name='', *args, **kwargs):
|
||||
|
||||
site_url = dict(
|
||||
tvdb='api.thetvdb.com', thexem='thexem.de', github='github.com'
|
||||
).get(site_name.replace('check_', ''))
|
||||
|
||||
result = {}
|
||||
|
||||
if site_url:
|
||||
resp = helpers.getURL('https://www.isitdownrightnow.com/check.php?domain=%s' % site_url)
|
||||
if resp:
|
||||
check = resp.lower()
|
||||
day = re.findall(r'(\d+)\s*(?:day)', check)
|
||||
hr = re.findall(r'(\d+)\s*(?:hour)', check)
|
||||
mn = re.findall(r'(\d+)\s*(?:min)', check)
|
||||
if any([day, hr, mn]):
|
||||
period = ', '.join(
|
||||
(day and ['%sd' % day[0]] or day)
|
||||
+ (hr and ['%sh' % hr[0]] or hr)
|
||||
+ (mn and ['%sm' % mn[0]] or mn))
|
||||
else:
|
||||
try:
|
||||
period = re.findall('[^>]>([^<]+)ago', check)[0].strip()
|
||||
except (StandardError, Exception):
|
||||
try:
|
||||
period = re.findall('[^>]>([^<]+week)', check)[0]
|
||||
except (StandardError, Exception):
|
||||
period = 'quite some time'
|
||||
|
||||
result = {('last_down', 'down_for')['up' not in check and 'down for' in check]: period}
|
||||
|
||||
return json.dumps(result)
|
||||
|
||||
def clearHistory(self, *args, **kwargs):
|
||||
|
||||
myDB = db.DBConnection()
|
||||
|
|
Loading…
Reference in a new issue