2013-03-30 20:01:27 +01:00
|
|
|
|
"use strict";
|
|
|
|
|
define(['app', 'Shared/ModalRegion', 'AddSeries/AddSeriesLayout',
|
2013-04-23 02:35:04 +02:00
|
|
|
|
'Series/Index/SeriesIndexLayout', 'Upcoming/UpcomingCollectionView',
|
2013-03-30 00:28:58 +01:00
|
|
|
|
'Calendar/CalendarCollectionView', 'Shared/NotificationView',
|
2013-04-20 02:46:56 +02:00
|
|
|
|
'Shared/NotFoundView', 'MainMenuView',
|
2013-03-30 00:28:58 +01:00
|
|
|
|
'Series/Details/SeriesDetailsView', 'Series/EpisodeCollection',
|
2013-05-03 08:53:32 +02:00
|
|
|
|
'Settings/SettingsLayout', 'Missing/MissingLayout',
|
|
|
|
|
'History/HistoryLayout'],
|
2013-03-30 00:28:58 +01:00
|
|
|
|
function (app, modalRegion) {
|
|
|
|
|
|
|
|
|
|
var controller = Backbone.Marionette.Controller.extend({
|
|
|
|
|
|
2013-03-30 20:01:27 +01:00
|
|
|
|
series: function () {
|
2013-04-19 01:14:08 +02:00
|
|
|
|
this._setTitle('NzbDrone');
|
2013-04-23 02:35:04 +02:00
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Series.Index.SeriesIndexLayout());
|
2013-03-30 00:28:58 +01:00
|
|
|
|
},
|
|
|
|
|
seriesDetails: function (query) {
|
|
|
|
|
|
|
|
|
|
var self = this;
|
2013-04-19 01:14:08 +02:00
|
|
|
|
this._setTitle('Loading Series');
|
2013-03-30 00:28:58 +01:00
|
|
|
|
var series = new NzbDrone.Series.SeriesModel({ id: query });
|
|
|
|
|
series.fetch({
|
|
|
|
|
success: function (seriesModel) {
|
2013-04-19 01:14:08 +02:00
|
|
|
|
self._setTitle(seriesModel.get('title'));
|
2013-03-30 00:28:58 +01:00
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Series.Details.SeriesDetailsView({ model: seriesModel }));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
2013-04-19 01:14:08 +02:00
|
|
|
|
addSeries: function (action) {
|
|
|
|
|
this._setTitle('Add Series');
|
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.AddSeries.AddSeriesLayout({action: action}));
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
upcoming: function () {
|
|
|
|
|
this._setTitle('Upcoming');
|
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Upcoming.UpcomingCollectionView());
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
calendar: function () {
|
|
|
|
|
this._setTitle('Calendar');
|
|
|
|
|
var calendarCollection = new NzbDrone.Calendar.CalendarCollection();
|
|
|
|
|
calendarCollection.fetch();
|
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Calendar.CalendarCollectionView({collection: calendarCollection}));
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
settings: function (action) {
|
|
|
|
|
this._setTitle('Settings');
|
2013-03-30 00:28:58 +01:00
|
|
|
|
|
|
|
|
|
var settingsModel = new NzbDrone.Settings.SettingsModel();
|
|
|
|
|
settingsModel.fetch({
|
|
|
|
|
success: function (settings) {
|
2013-04-19 01:14:08 +02:00
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Settings.SettingsLayout({settings: settings, action: action}));
|
2013-03-30 00:28:58 +01:00
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
2013-04-19 01:14:08 +02:00
|
|
|
|
missing: function () {
|
|
|
|
|
this._setTitle('Missing');
|
2013-03-30 00:28:58 +01:00
|
|
|
|
|
2013-05-01 05:04:06 +02:00
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Missing.MissingLayout());
|
2013-03-30 00:28:58 +01:00
|
|
|
|
},
|
|
|
|
|
|
2013-05-03 08:53:32 +02:00
|
|
|
|
history: function () {
|
|
|
|
|
this._setTitle('History');
|
|
|
|
|
|
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.History.HistoryLayout());
|
|
|
|
|
},
|
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
notFound: function () {
|
2013-04-19 01:14:08 +02:00
|
|
|
|
this._setTitle('Not Found');
|
2013-03-30 00:28:58 +01:00
|
|
|
|
NzbDrone.mainRegion.show(new NzbDrone.Shared.NotFoundView(this));
|
|
|
|
|
},
|
|
|
|
|
|
2013-04-19 01:14:08 +02:00
|
|
|
|
_setTitle: function (title) {
|
2013-04-24 03:55:29 +02:00
|
|
|
|
//$('#title-region').html(title);
|
2013-03-30 00:28:58 +01:00
|
|
|
|
|
|
|
|
|
if (title.toLocaleLowerCase() === 'nzbdrone') {
|
|
|
|
|
window.document.title = 'NzbDrone';
|
2013-03-02 20:13:23 +01:00
|
|
|
|
}
|
2013-03-30 00:28:58 +01:00
|
|
|
|
else {
|
|
|
|
|
window.document.title = title + ' - NzbDrone';
|
2013-03-04 01:09:43 +01:00
|
|
|
|
}
|
2013-03-30 00:28:58 +01:00
|
|
|
|
}
|
|
|
|
|
});
|
2013-02-16 00:38:53 +01:00
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
//Modal dialog initializer
|
|
|
|
|
NzbDrone.addInitializer(function () {
|
2013-02-16 00:38:53 +01:00
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
NzbDrone.addRegions({ modalRegion: modalRegion });
|
2013-02-16 00:38:53 +01:00
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
NzbDrone.vent.on(NzbDrone.Events.OpenModalDialog, function (options) {
|
|
|
|
|
console.log('opening modal dialog ' + options.view.template);
|
|
|
|
|
NzbDrone.modalRegion.show(options.view);
|
|
|
|
|
});
|
2013-02-16 01:49:25 +01:00
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
NzbDrone.vent.on(NzbDrone.Events.CloseModalDialog, function () {
|
|
|
|
|
console.log('closing modal dialog');
|
|
|
|
|
NzbDrone.modalRegion.close();
|
|
|
|
|
});
|
2013-02-16 01:49:25 +01:00
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
2013-03-30 00:28:58 +01:00
|
|
|
|
return new controller();
|
2013-02-16 01:49:25 +01:00
|
|
|
|
|
|
|
|
|
});
|
2013-02-16 00:38:53 +01:00
|
|
|
|
|