2013-06-21 23:24:24 -07:00
|
|
|
'use strict';
|
2013-06-24 16:41:59 -07:00
|
|
|
define(
|
|
|
|
[
|
|
|
|
'backbone',
|
2013-07-16 23:23:44 -07:00
|
|
|
'moment',
|
2013-06-24 16:41:59 -07:00
|
|
|
'Series/SeriesModel'
|
2013-07-16 23:23:44 -07:00
|
|
|
], function (Backbone, Moment, SeriesModel) {
|
2013-06-24 16:41:59 -07:00
|
|
|
return Backbone.Model.extend({
|
|
|
|
|
2013-07-16 17:41:04 -07:00
|
|
|
initialize: function () {
|
|
|
|
if (this.has('series')) {
|
2013-07-23 22:28:06 -07:00
|
|
|
var start = Moment(this.get('airDateUtc'));
|
2013-07-16 17:41:04 -07:00
|
|
|
var runtime = this.get('series').get('runtime');
|
2013-04-30 18:54:15 -07:00
|
|
|
|
2013-07-16 23:23:44 -07:00
|
|
|
this.set('end', start.add('minutes', runtime));
|
2013-06-24 16:41:59 -07:00
|
|
|
}
|
2013-05-20 14:06:01 -07:00
|
|
|
},
|
2013-03-02 11:13:23 -08:00
|
|
|
|
2013-06-24 16:41:59 -07:00
|
|
|
parse: function (model) {
|
|
|
|
model.series = new SeriesModel(model.series);
|
|
|
|
|
|
|
|
return model;
|
|
|
|
},
|
2013-06-09 13:51:32 -07:00
|
|
|
|
2013-06-24 16:41:59 -07:00
|
|
|
toJSON: function () {
|
|
|
|
var json = _.clone(this.attributes);
|
2013-06-09 13:51:32 -07:00
|
|
|
|
2013-06-24 16:41:59 -07:00
|
|
|
if (this.has('series')) {
|
|
|
|
json.series = this.get('series').toJSON();
|
2013-06-09 22:27:20 -07:00
|
|
|
}
|
2013-06-24 16:41:59 -07:00
|
|
|
return json;
|
|
|
|
},
|
2013-06-09 19:10:15 -07:00
|
|
|
|
2013-06-24 16:41:59 -07:00
|
|
|
defaults: {
|
|
|
|
seasonNumber: 0,
|
2013-06-28 17:35:21 -07:00
|
|
|
status : 0
|
2013-06-24 16:41:59 -07:00
|
|
|
}
|
|
|
|
});
|
2013-03-02 11:13:23 -08:00
|
|
|
});
|