Files
hudozka/utils/populate.js
T
2014-11-04 21:50:09 +03:00

38 lines
669 B
JavaScript

exports.pop = pop;
exports.populate = populate;
function pop(data){
var Populator = function(data){
this.target = data;
}
Populator.prototype = {
populate: function(p){
var self = this;
if(typeof p == "function"){
self.target = p(self.target);
}else if(p instanceof Array){
p.forEach(function(i){
self.target = self.populate(i).result();
});
}
return self;
},
result: function(){
return this.target;
}
};
var fun = new Populator(data);
return fun;
}
function populate(find, field){
return function(lesson){
var id = lesson[field];
var val = find(id);
if(val) lesson[field] = val;
return lesson;
}
}