Existing series view loads again

pull/3113/head
Mark McDowall 12 years ago
parent 687f8d9384
commit 525963f2a6

@ -23,7 +23,7 @@ namespace NzbDrone.Api.RootFolders
private List<RootFolderResource> GetRootFolders() private List<RootFolderResource> GetRootFolders()
{ {
return ApplyToList(_rootFolderService.All); return ApplyToList(_rootFolderService.AllWithUnmappedFolders);
} }
private void DeleteFolder(int id) private void DeleteFolder(int id)

@ -1,5 +1,7 @@
using System; using System;
using System.Collections.Generic;
using NzbDrone.Api.REST; using NzbDrone.Api.REST;
using NzbDrone.Core.RootFolders;
namespace NzbDrone.Api.RootFolders namespace NzbDrone.Api.RootFolders
{ {
@ -7,5 +9,7 @@ namespace NzbDrone.Api.RootFolders
{ {
public String Path { get; set; } public String Path { get; set; }
public Int64 FreeSpace { get; set; } public Int64 FreeSpace { get; set; }
public List<UnmappedFolder> UnmappedFolders { get; set; }
} }
} }

@ -12,6 +12,7 @@ namespace NzbDrone.Core.RootFolders
public interface IRootFolderService public interface IRootFolderService
{ {
List<RootFolder> All(); List<RootFolder> All();
List<RootFolder> AllWithUnmappedFolders();
RootFolder Add(RootFolder rootDir); RootFolder Add(RootFolder rootDir);
void Remove(int id); void Remove(int id);
List<UnmappedFolder> GetUnmappedFolders(string path); List<UnmappedFolder> GetUnmappedFolders(string path);
@ -37,6 +38,13 @@ namespace NzbDrone.Core.RootFolders
{ {
var rootFolders = _rootFolderRepository.All().ToList(); var rootFolders = _rootFolderRepository.All().ToList();
return rootFolders;
}
public virtual List<RootFolder> AllWithUnmappedFolders()
{
var rootFolders = _rootFolderRepository.All().ToList();
rootFolders.ForEach(folder => rootFolders.ForEach(folder =>
{ {
if (_diskProvider.FolderExists(folder.Path)) if (_diskProvider.FolderExists(folder.Path))

@ -0,0 +1,15 @@
"use strict";
define(['app', 'Series/SeriesModel'], function () {
NzbDrone.AddSeries.Collection = Backbone.Collection.extend({
url : NzbDrone.Constants.ApiRoot + '/series/lookup',
model: NzbDrone.Series.SeriesModel,
parse: function (response) {
_.each(response, function (model) {
model.id = undefined;
});
return response;
}
});
});

@ -1,6 +1,11 @@
'use strict'; 'use strict';
define([ define([
'app', 'AddSeries/RootFolders/RootFolderCollection', 'Quality/QualityProfileCollection', 'Shared/NotificationCollection', 'AddSeries/Existing/UnmappedFolderModel', 'Series/SeriesModel'], function (app, rootFolders, qualityProfileCollection, notificationCollection) { 'app', 'AddSeries/RootFolders/RootFolderCollection',
'Quality/QualityProfileCollection',
'Shared/NotificationCollection',
'AddSeries/Existing/UnmappedFolderModel',
'AddSeries/Collection',
'Series/SeriesModel'], function (app, rootFolders, qualityProfileCollection, notificationCollection) {
NzbDrone.AddSeries.Existing.FolderMatchResultView = Backbone.Marionette.ItemView.extend({ NzbDrone.AddSeries.Existing.FolderMatchResultView = Backbone.Marionette.ItemView.extend({
template: 'AddSeries/SearchResultTemplate', template: 'AddSeries/SearchResultTemplate',
@ -29,7 +34,7 @@ define([
this.model.set('rootFolderId', rootFolderId); this.model.set('rootFolderId', rootFolderId);
this.model.set('folder', folder); this.model.set('folder', folder);
var seriesCollection = new NzbDrone.Series.SeriesCollection(); var seriesCollection = new NzbDrone.AddSeries.Collection();
seriesCollection.add(this.model); seriesCollection.add(this.model);
this.model.save(undefined, { this.model.save(undefined, {
@ -68,7 +73,7 @@ define([
}, },
initialize: function () { initialize: function () {
this.collection = new NzbDrone.Series.SeriesCollection(); this.collection = new NzbDrone.AddSeries.Collection();
this.collection.bind('reset', this.collectionReset, this); this.collection.bind('reset', this.collectionReset, this);
this.on("itemview:seriesAdded", function(){ this.on("itemview:seriesAdded", function(){
@ -77,7 +82,6 @@ define([
}, },
onRender: function () { onRender: function () {
this.collection.url = NzbDrone.Constants.ApiRoot + '/series/lookup';
this.resultView = new NzbDrone.AddSeries.SearchResultView({ collection: this.collection }); this.resultView = new NzbDrone.AddSeries.SearchResultView({ collection: this.collection });
}, },

@ -1,5 +1,6 @@
"use strict"; "use strict";
define(['app', 'AddSeries/RootFolders/RootFolderCollection', 'AddSeries/New/SearchResultView', 'Shared/SpinnerView'], function () { define(['app', 'AddSeries/RootFolders/RootFolderCollection', 'AddSeries/New/SearchResultView', 'Shared/SpinnerView',
'AddSeries/Collection'], function () {
NzbDrone.AddSeries.New.AddNewSeriesView = Backbone.Marionette.Layout.extend({ NzbDrone.AddSeries.New.AddNewSeriesView = Backbone.Marionette.Layout.extend({
template: 'AddSeries/New/AddNewSeriesTemplate', template: 'AddSeries/New/AddNewSeriesTemplate',
route : 'Series/add/new', route : 'Series/add/new',
@ -14,16 +15,9 @@ define(['app', 'AddSeries/RootFolders/RootFolderCollection', 'AddSeries/New/Sear
initialize: function () { initialize: function () {
this.collection = new NzbDrone.Series.SeriesCollection(); this.collection = new NzbDrone.AddSeries.Collection();
this.collection.parse = function (response) {
_.each(response, function (model) {
model.id = undefined; model.id = undefined;
});
return response;
};
NzbDrone.AddSeries.New.AddNewSeriesContext = this; NzbDrone.AddSeries.New.AddNewSeriesContext = this;
NzbDrone.vent.on(NzbDrone.Events.SeriesAdded, function (options) { NzbDrone.vent.on(NzbDrone.Events.SeriesAdded, function (options) {
@ -46,7 +40,6 @@ define(['app', 'AddSeries/RootFolders/RootFolderCollection', 'AddSeries/New/Sear
self.$el.data('timeout', window.setTimeout(self.search, 500, self)); self.$el.data('timeout', window.setTimeout(self.search, 500, self));
}); });
this.collection.url = NzbDrone.Constants.ApiRoot + '/series/lookup';
this.resultView = new NzbDrone.AddSeries.SearchResultView({ collection: this.collection }); this.resultView = new NzbDrone.AddSeries.SearchResultView({ collection: this.collection });
}, },

Loading…
Cancel
Save