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