1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2024-12-12 11:15:43 +02:00
Sonarr/NzbDrone.Web/Scripts/jquery-tgc-countdown-1.0.js
markus101 da979639ba More config pages have been added. AJAX to save. Order with jquery sortable.
Some RssFeed Parsing has been implemented, it does not currently download items, still need to perform a more verbose episode check.
2011-01-28 22:10:22 -08:00

106 lines
2.2 KiB
JavaScript

/* The Great Cornholio Countdown, version: 1.00 (October 14th, 2010)
* Copyright (c) 2010 Lecho Buszczynski
* lecho@phatcat.eu
* Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
* Requires: jQuery v?.?
*/
(function($) {
$.fn.tgcCountdown = function(options) {
var settings = {counter: '[D] days, [H]:[M]:[S]',counter_warning: '<span style="color: #F00;">[D] days, [H]:[M]:[S]</span>',counter_expired: '<span style="color: #F00;">expired</span>', interval: 1000, warnonminutesleft: 60};
$.extend(settings,options);
var target = $(this);
var stamp = $(this).html();
var date_e = false;
var executer = false;
var getSecondsDiff = function() {
var secs = 0;
var now = new Date();
secs = date_e.getTime() - now.getTime();
return (secs/1000);
}
var getFormattedDiff = function() {
var secs = getSecondsDiff();
var counter = '';
var val = '';
if (secs < 0) {
counterStop();
return settings.counter_expired;
} else if (secs < settings.warnonminutesleft*60) {
counter = settings.counter_warning;
} else {
counter = settings.counter;
}
val = new String(Math.floor(secs/86400));
counter = counter.replace('[D]',val);
secs = secs % 86400;
val = new String(Math.floor(secs/3600));
if (val.length == 1) {
val = '0' + val;
}
counter = counter.replace('[H]',val);
secs = secs % 3600;
val = new String(Math.floor(secs/60));
if (val.length == 1) {
val = '0' + val;
}
counter = counter.replace('[M]',val);
secs = secs % 60;
val = new String(Math.floor(secs));
if (val.length == 1) {
val = '0' + val;
}
counter = counter.replace('[S]',val);
return counter;
}
var counterUpdate = function() {
target.html(getFormattedDiff());
}
var counterStart = function() {
counterUpdate();
executer = setInterval(function() {counterUpdate()},settings.interval);
}
var counterStop = function() {
clearInterval(executer);
}
if (/^[0-9]{14}$/.test(stamp)) {
date_e = new Date(stamp.substr(0,4),(stamp.substr(4,2)- 1),stamp.substr(6,2),stamp.substr(8,2),stamp.substr(10,2),stamp.substr(12,2),0);
counterStart()
}
};
})(jQuery);