1
0
Fork 0
mirror of https://github.com/Sonarr/Sonarr synced 2025-03-04 02:28:21 +00:00
Sonarr/UI/Controller.js

113 lines
3.5 KiB
JavaScript
Raw Normal View History

'use strict';
2013-06-20 22:19:41 -07:00
define(
[
'app',
'marionette',
'History/HistoryLayout',
2013-06-20 22:19:41 -07:00
'Settings/SettingsLayout',
'AddSeries/AddSeriesLayout',
'Series/Index/SeriesIndexLayout',
'Series/Details/SeriesDetailsLayout',
'Missing/MissingLayout',
'Series/SeriesModel',
'Calendar/CalendarLayout',
2013-06-20 22:19:41 -07:00
'Logs/Layout',
'Release/Layout',
'Shared/NotFoundView'
], function (App, Marionette, HistoryLayout, SettingsLayout, AddSeriesLayout, SeriesIndexLayout, SeriesDetailsLayout, MissingLayout, SeriesModel, CalendarLayout,
LogsLayout, ReleaseLayout, NotFoundView) {
return Marionette.Controller.extend({
series : function () {
this._setTitle('NzbDrone');
App.mainRegion.show(new SeriesIndexLayout());
},
seriesDetails: function (query) {
var self = this;
this._setTitle('Loading Series');
var series = new SeriesModel({ id: query });
series.fetch({
success: function (seriesModel) {
self._setTitle(seriesModel.get('title'));
App.mainRegion.show(new SeriesDetailsLayout({ model: seriesModel }));
}
});
},
addSeries: function (action) {
this._setTitle('Add Series');
2013-06-20 22:19:41 -07:00
App.mainRegion.show(new AddSeriesLayout({action: action}));
},
calendar: function () {
this._setTitle('Calendar');
App.mainRegion.show(new CalendarLayout());
},
settings: function (action) {
this._setTitle('Settings');
2013-06-18 18:02:23 -07:00
App.mainRegion.show(new SettingsLayout({action: action}));
},
missing: function () {
this._setTitle('Missing');
2013-06-23 19:31:02 -07:00
App.mainRegion.show(new MissingLayout());
},
2013-05-02 23:53:32 -07:00
history: function () {
this._setTitle('History');
2013-06-23 19:31:02 -07:00
App.mainRegion.show(new HistoryLayout());
2013-05-02 23:53:32 -07:00
},
rss: function () {
this._setTitle('RSS');
App.mainRegion.show(new ReleaseLayout());
},
2013-06-04 17:49:53 -07:00
logs: function () {
this._setTitle('logs');
App.mainRegion.show(new LogsLayout());
2013-06-04 17:49:53 -07:00
},
notFound: function () {
this._setTitle('Not Found');
App.mainRegion.show(new NotFoundView(this));
},
2013-06-04 17:49:53 -07:00
_setTitle: function (title) {
//$('#title-region').html(title);
if (title.toLocaleLowerCase() === 'nzbdrone') {
window.document.title = 'NzbDrone';
2013-03-02 11:13:23 -08:00
}
else {
window.document.title = title + ' - NzbDrone';
2013-03-03 16:09:43 -08:00
}
2013-05-27 23:03:25 -07:00
this._clearCookies();
},
_clearCookies: function () {
if (!document.cookie) {
return;
}
2013-06-21 23:24:24 -07:00
var cookies = document.cookie.split(';');
2013-05-27 23:03:25 -07:00
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
2013-06-21 23:24:24 -07:00
var eqPos = cookie.indexOf('=');
2013-05-27 23:03:25 -07:00
var name = eqPos > -1 ? cookie.substr(0, eqPos) :cookie;
2013-06-21 23:24:24 -07:00
document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:00 GMT';
2013-05-27 23:03:25 -07:00
}
}
});
2013-02-15 16:49:25 -08:00
});
2013-02-15 15:38:53 -08:00