mirror of
https://github.com/Radarr/Radarr.git
synced 2026-04-24 22:35:49 -04:00
Changed: Alternative Titles were reworked greatly. This should speed up RSS Sync massively, especially for large libraries (up to 4x).
This commit is contained in:
@@ -0,0 +1,81 @@
|
||||
var _ = require('underscore');
|
||||
var $ = require('jquery');
|
||||
var vent = require('vent');
|
||||
var AppLayout = require('../AppLayout');
|
||||
var Marionette = require('marionette');
|
||||
var Config = require('../Config');
|
||||
var LanguageCollection = require('../Settings/Profile/Language/LanguageCollection');
|
||||
var AltTitleModel = require("./AlternativeTitleModel");
|
||||
var AltYearModel = require("./AlternativeYearModel");
|
||||
var Messenger = require('../Shared/Messenger');
|
||||
require('../Form/FormBuilder');
|
||||
require('bootstrap');
|
||||
|
||||
module.exports = Marionette.ItemView.extend({
|
||||
template : 'Release/ForceDownloadViewTemplate',
|
||||
|
||||
events : {
|
||||
'click .x-download' : '_forceDownload',
|
||||
},
|
||||
|
||||
ui : {
|
||||
titleMapping : "#title-mapping",
|
||||
yearMapping : "#year-mapping",
|
||||
language : "#language-selection",
|
||||
indicator : ".x-indicator",
|
||||
},
|
||||
|
||||
initialize : function(options) {
|
||||
this.release = options.release;
|
||||
this.templateHelpers = {};
|
||||
|
||||
this._configureTemplateHelpers();
|
||||
},
|
||||
|
||||
onShow : function() {
|
||||
if (this.release.get("mappingResult") == "wrongYear") {
|
||||
this.ui.titleMapping.hide();
|
||||
} else {
|
||||
this.ui.yearMapping.hide();
|
||||
}
|
||||
},
|
||||
|
||||
_configureTemplateHelpers : function() {
|
||||
this.templateHelpers.release = this.release.toJSON();
|
||||
this.templateHelpers.languages = LanguageCollection.toJSON()
|
||||
},
|
||||
|
||||
_forceDownload : function() {
|
||||
this.ui.indicator.show();
|
||||
var self = this;
|
||||
|
||||
if (this.release.get("mappingResult") == "wrongYear") {
|
||||
var altYear = new AltYearModel({
|
||||
movieId : this.release.get("suspectedMovieId"),
|
||||
year : this.release.get("year")
|
||||
});
|
||||
this.savePromise = altYear.save();
|
||||
} else {
|
||||
var altTitle = new AltTitleModel({
|
||||
movieId : this.release.get("suspectedMovieId"),
|
||||
title : this.release.get("movieTitle"),
|
||||
language : this.ui.language.val(),
|
||||
});
|
||||
|
||||
this.savePromise = altTitle.save();
|
||||
}
|
||||
|
||||
this.savePromise.always(function(){
|
||||
self.ui.indicator.hide();
|
||||
});
|
||||
|
||||
this.savePromise.success(function(){
|
||||
self.release.save(null, {
|
||||
success : function() {
|
||||
self.release.set('queued', true);
|
||||
vent.trigger(vent.Commands.CloseModalCommand);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user