release.update_status not triggered on frontend
This commit is contained in:
@@ -150,8 +150,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
for release in fireEvent('release.for_media', m['_id'], single = True):
|
for release in fireEvent('release.for_media', m['_id'], single = True):
|
||||||
if release.get('status') in ['downloaded', 'snatched', 'seeding', 'done']:
|
if release.get('status') in ['downloaded', 'snatched', 'seeding', 'done']:
|
||||||
if params.get('ignore_previous', False):
|
if params.get('ignore_previous', False):
|
||||||
release['status'] = 'ignored'
|
fireEvent('release.update_status', m['_id'], status = 'ignored')
|
||||||
db.update(release)
|
|
||||||
else:
|
else:
|
||||||
fireEvent('release.delete', release['_id'], single = True)
|
fireEvent('release.delete', release['_id'], single = True)
|
||||||
|
|
||||||
|
|||||||
@@ -115,8 +115,15 @@ MA.Release = new Class({
|
|||||||
|
|
||||||
self.releases = null;
|
self.releases = null;
|
||||||
if(self.options_container){
|
if(self.options_container){
|
||||||
self.options_container.destroy();
|
// Releases are currently displayed
|
||||||
self.options_container = null;
|
if(self.options_container.isDisplayed()){
|
||||||
|
self.options_container.destroy();
|
||||||
|
self.createReleases();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
self.options_container.destroy();
|
||||||
|
self.options_container = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -131,10 +138,10 @@ MA.Release = new Class({
|
|||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
createReleases: function(){
|
createReleases: function(refresh){
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
if(!self.options_container){
|
if(!self.options_container || refresh){
|
||||||
self.options_container = new Element('div.options').grab(
|
self.options_container = new Element('div.options').grab(
|
||||||
self.release_container = new Element('div.releases.table')
|
self.release_container = new Element('div.releases.table')
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -54,13 +54,21 @@ var Movie = new Class({
|
|||||||
// Reload when releases have updated
|
// Reload when releases have updated
|
||||||
self.global_events['release.update_status'] = function(notification){
|
self.global_events['release.update_status'] = function(notification){
|
||||||
var data = notification.data;
|
var data = notification.data;
|
||||||
if(data && self.data._id == data.movie_id){
|
if(data && self.data._id == data.media_id){
|
||||||
|
|
||||||
if(!self.data.releases)
|
if(!self.data.releases)
|
||||||
self.data.releases = [];
|
self.data.releases = [];
|
||||||
|
|
||||||
self.data.releases.push({'quality': data.quality, 'status': data.status});
|
var updated = false;
|
||||||
self.updateReleases();
|
self.data.releases.each(function(release){
|
||||||
|
if(release._id == data._id){
|
||||||
|
release['status'] = data.status;
|
||||||
|
updated = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if(updated)
|
||||||
|
self.updateReleases();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -383,13 +383,11 @@ class MovieSearcher(SearcherBase, MovieTypeBase):
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
||||||
db = get_db()
|
|
||||||
rels = fireEvent('release.for_media', media_id, single = True)
|
rels = fireEvent('release.for_media', media_id, single = True)
|
||||||
|
|
||||||
for rel in rels:
|
for rel in rels:
|
||||||
if rel.get('status') in ['snatched', 'done']:
|
if rel.get('status') in ['snatched', 'done']:
|
||||||
rel['status'] = 'ignored'
|
fireEvent('release.update_status', rel.get('_id'), status = 'ignored')
|
||||||
db.update(rel)
|
|
||||||
|
|
||||||
media = fireEvent('media.get', media_id, single = True)
|
media = fireEvent('media.get', media_id, single = True)
|
||||||
if media:
|
if media:
|
||||||
|
|||||||
Reference in New Issue
Block a user