diff options
Diffstat (limited to 'module/web/static/js/models/File.js')
-rw-r--r-- | module/web/static/js/models/File.js | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/module/web/static/js/models/File.js b/module/web/static/js/models/File.js index e965df9df..42275a452 100644 --- a/module/web/static/js/models/File.js +++ b/module/web/static/js/models/File.js @@ -1,4 +1,8 @@ -define(['jquery', 'backbone', 'underscore'], function($, Backbone, _) { +define(['jquery', 'backbone', 'underscore', 'utils/apitypes'], function($, Backbone, _, Api) { + + var Finished = [Api.DownloadStatus.Finished, Api.DownloadStatus.Skipped]; + var Failed = [Api.DownloadStatus.Failed, Api.DownloadStatus.Aborted, Api.DownloadStatus.TempOffline, Api.DownloadStatus.Offline]; + // Unfinished - Other return Backbone.Model.extend({ @@ -45,6 +49,18 @@ define(['jquery', 'backbone', 'underscore'], function($, Backbone, _) { isDownload : function() { return this.has('download'); + }, + + isFinished: function() { + return _.indexOf(Finished, this.get('download').status) > -1; + }, + + isUnfinished: function() { + return _.indexOf(Finished, this.get('download').status) === -1 && _.indexOf(Failed, this.get('download').status) === -1; + }, + + isFailed: function() { + return _.indexOf(Failed, this.get('download').status) > -1; } }); |