69 lines
1.6 KiB
JavaScript
69 lines
1.6 KiB
JavaScript
|
//监控任务
|
||
|
(function () {
|
||
|
var flights = (new FlightMonitorBox()).getAll(),
|
||
|
flightId,
|
||
|
initError = [],
|
||
|
delay;
|
||
|
|
||
|
if ((new FlightMonitorBox()).getCount() > 0 ) {
|
||
|
Util.updateIcon('icons/icon_16.png');
|
||
|
(new TimerManager()).getTimer('flip').start();
|
||
|
} else {
|
||
|
Util.updateIcon('icons/gray.png');
|
||
|
(new TimerManager()).getTimer('flip').halt();
|
||
|
}
|
||
|
|
||
|
for (flightId in flights) {
|
||
|
flights[flightId].flight.getData(
|
||
|
true,
|
||
|
true,
|
||
|
function(data) {
|
||
|
chrome.browserAction.setBadgeText({text: ''});
|
||
|
delete flights[flightId].error;
|
||
|
},
|
||
|
function(error) {
|
||
|
chrome.browserAction.setBadgeText({text: '!'});
|
||
|
flights[flightId].error = error;
|
||
|
|
||
|
if (error.name === 'QuerySoldOutError') {
|
||
|
initError.push({
|
||
|
flightId: flightId,
|
||
|
status: '售罄',
|
||
|
});
|
||
|
}
|
||
|
if (error.name === 'QueryDateError') {
|
||
|
initError.push({
|
||
|
flightId: flightId,
|
||
|
status: '过期',
|
||
|
});
|
||
|
}
|
||
|
},
|
||
|
function() {
|
||
|
(new FlightMonitorBox()).persistenceOne(flightId);
|
||
|
|
||
|
if (initError.length) {
|
||
|
Storage.set('showStage', {
|
||
|
name: 'ticketAdvice',
|
||
|
data: {
|
||
|
errors: initError,
|
||
|
advice: '请您重新设置'
|
||
|
}
|
||
|
});
|
||
|
Util.popup();
|
||
|
}
|
||
|
delay = Math.floor(Math.random() * 120) * 1000;
|
||
|
flights[flightId].monitor.lastTime = Util.date.now() - delay;
|
||
|
|
||
|
(new TimerManager()).addTimer(getFlightTimer(flightId, config.monitor.interval - delay));
|
||
|
(new TimerManager()).getTimer(flightId).start();
|
||
|
}
|
||
|
);
|
||
|
}
|
||
|
}());
|
||
|
|
||
|
//超值线路
|
||
|
(function() {
|
||
|
if (Storage.get('receiveCheap' === 'true')) {
|
||
|
(new TimerManager()).getTimer('bargain').start();
|
||
|
}
|
||
|
}());
|