source files -> src/ folder

This commit is contained in:
tmshv committed 2016-01-09 17:26:44 +03:00
1 parent f006207112
commit d25f4439fa
144 files changed

No files matched your search

+20
View File
@@ -0,0 +1,20 @@
module.exports = {
range: range
};
/**
* Generates list of numbers
* @param {Number} start starting value
* @param {Number} num amount of numbers in list
* @param {Number} step difference value
* @return {Array} list of numbers
*/
function range(start, num, step) {
var list = [];
var val = start;
for (var i = 0; i < num; i++) {
list.push(val);
val += step;
}
return list;
}
+21
View File
@@ -0,0 +1,21 @@
var range = require('./common').range;
module.exports = {
getDates: getDates
};
/**
*
* @param start
* @returns {*}
*/
function getDates(start) {
var day = start.getDay();
return range(0, 6, 1).reduce(function (dates, weekDay) {
var d = 1 + weekDay - day;
var time = start.getTime() + (1000 * 60 * 60 * 24) * d;
var date = new Date(time);
dates.push(date.getDate());
return dates;
}, []);
}
+15
View File
@@ -0,0 +1,15 @@
/**
* Created by tmshv on 08/03/15.
*/
module.exports = {
query: function(list){
var params = list.reduce(function (query, param) {
var q = param[0] + "=" + param[1];
query.push(q);
return query;
}, [])
.join("&");
return params
}
};
+38
View File
@@ -0,0 +1,38 @@
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;
}
}