NzbDrone = new Backbone.Marionette.Application(); NzbDrone.Constants = { }; NzbDrone.Events = { DisplayInMainRegion: "DisplayInMainRegion", }; NzbDrone.Routes = { Series: { Add: 'series/add', AddNew: 'series/addnew', AddExisting: 'series/addExisting', AddExistingSingle: 'series/addExisting/single', AddExistingMultiple: 'series/addExisting/multiple', }, }; NzbDrone.Controller = Backbone.Marionette.Controller.extend({ AddSeries: function () { NzbDrone.mainRegion.show(new NzbDrone.AddSeriesView()); }, AddNewSeries: function () { NzbDrone.mainRegion.show(new NzbDrone.AddNewSeriesView()); }, AddExistingSeries: function () { NzbDrone.mainRegion.show(new NzbDrone.AddExistingSeriesView()); }, AddExistingSeriesSingle: function () { NzbDrone.mainRegion.show(new NzbDrone.AddExistingSeriesSingleView()); }, AddExistingSeriesMultiple: function () { NzbDrone.mainRegion.show(new NzbDrone.AddExistingSeriesMultipleView()); }, }); NzbDrone.MyRouter = Backbone.Marionette.AppRouter.extend({ controller: new NzbDrone.Controller(), // "someMethod" must exist at controller.someMethod appRoutes: { "":"AddSeries", "series/add": "AddSeries", "series/addnew": "AddNewSeries", "series/addExisting": "AddExistingSeries", "series/addExisting/single": "AddExistingSeriesSingle", "series/addExisting/multiple": "AddExistingSeriesMultiple", } }); NzbDrone.addInitializer(function (options) { console.log("starting application"); NzbDrone.addRegions({ mainRegion: "#main-region", }); NzbDrone.Router = new NzbDrone.MyRouter(); Backbone.history.start(); });