You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Lidarr/src/UI/Shared/NzbDroneController.js

67 lines
2.1 KiB

var vent = require('vent');
var AppLayout = require('../AppLayout');
var Marionette = require('marionette');
var NotFoundView = require('./NotFoundView');
var Messenger = require('./Messenger');
module.exports = Marionette.AppRouter.extend({
initialize : function() {
this.listenTo(vent, vent.Events.ServerUpdated, this._onServerUpdated);
},
showNotFound : function() {
this.setTitle('Not Found');
this.showMainRegion(new NotFoundView(this));
},
setTitle : function(title) {
title = title;
if (title === 'Lidarr') {
document.title = 'Lidarr';
} else {
document.title = title + ' - Lidarr';
}
if (window.NzbDrone.Analytics && window.Piwik) {
try {
var piwik = window.Piwik.getTracker(window.location.protocol + '//piwik.nzbdrone.com/piwik.php', 1);
piwik.setReferrerUrl('');
piwik.setCustomUrl('http://local' + window.location.pathname);
piwik.setCustomVariable(1, 'version', window.NzbDrone.Version, 'page');
piwik.setCustomVariable(2, 'branch', window.NzbDrone.Branch, 'page');
piwik.trackPageView(title);
}
catch (e) {
console.error(e);
}
}
},
_onServerUpdated : function() {
var label = window.location.pathname === window.NzbDrone.UrlBase + '/system/updates' ? 'Reload' : 'View Changes';
Messenger.show({
message : 'Lidarr has been updated',
hideAfter : 0,
id : 'lidarrUpdated',
actions : {
viewChanges : {
label : label,
action : function() {
window.location = window.NzbDrone.UrlBase + '/system/updates';
}
}
}
});
this.pendingUpdate = true;
},
showMainRegion : function(view) {
if (this.pendingUpdate) {
window.location.reload();
} else {
AppLayout.mainRegion.show(view);
}
}
});