diff -r a2497a2b6224 -r 744379451219 cms/app-client/app/models/document.js --- a/cms/app-client/app/models/document.js Tue Jul 05 16:53:04 2016 +0200 +++ b/cms/app-client/app/models/document.js Wed Jul 06 14:22:24 2016 +0200 @@ -8,6 +8,19 @@ issued: DS.attr('date'), title: DS.attr('string'), language: DS.attr('string'), + duration_ms: DS.attr('number', { + defaultValue: function() { + var self = this; + var duration = 0; + Object.keys(this.get('mediaArray')).forEach(function(key) { + if (!duration && self.get('mediaArray')[key].extent_ms) { + duration = self.get('mediaArray')[key].extent_ms; + } + }); + return duration; + } + }), + publisher: DS.attr('string'), publishers: DS.attr({ defaultValue: function() { return []; } }), contributors: DS.attr({ defaultValue: function() { return []; } }), geoInfo: DS.attr({ defaultValue: function() { return {}; } }), @@ -29,15 +42,12 @@ return res; }), - duration: Ember.computed('mediaArray', function() { - var self = this; - var duration = 0; - Object.keys(this.get('mediaArray')).forEach(function(key) { - if (!duration && self.get('mediaArray')[key].extent_ms) { - duration = self.get('mediaArray')[key].extent_ms; - } - }); - return duration / 1000; + duration: Ember.computed('duration_ms', function() { + return this.get('duration_ms')/1000; + }), + + publishers_disp: Ember.computed('publisher', 'publishers', function() { + return this.get('publisher')?this.get('publisher'):this.get('publishers').join(', '); }) });