solar-scores
Version:
Compute scores for solar decathlon competition - Cali 2015
37 lines (31 loc) • 1.12 kB
JavaScript
;
const points = require('./points');
const utils = require('./utils');
function defaults(options, defaults) {
var keys = Object.keys(defaults);
for(var i=0; i<keys.length; i++) {
if(options[keys[i]] === undefined) {
options[keys[i]] = defaults[keys[i]];
}
}
return options;
}
class baseScore {
constructor(options) {
options = options || {};
defaults(options, {
beginning: new Date('2015-12-07'),
ending: new Date('2015-12-12')
});
this.beginning = options.beginning;
this.ending = options.ending;
if(options.doubleScoringParams) {
this.doubleScoringParams = options.doubleScoringParams;
this.scoringFunction = utils.getDoubleScoringFunction.apply(null, options.doubleScoringParams);
} else if(options.singleScoringParams) {
this.singleScoringParams = options.singleScoringParams;
this.scoringFunction = utils.getSingleScoringFunction.apply(null, options.singleScoringParams);
}
}
}
module.exports = baseScore;