Sherzy
3/17/2016 - 5:07 PM

Last 4 weeks / last 30 days

Last 4 weeks / last 30 days

// create array of last 4 weeks
var weeks = [];
var now = new Date();
now.setTime(now.getTime() - (24 * 60 * 60 * 1000) * 7);
for ( var x = 0; x < 4; x++) {
    var obj = {
        Applications: []
    };
    obj.weekEnd = (x > 0) ? weeks[x - 1].weekStart : now;
    var start = new Date(obj.weekEnd);
    start.setTime(start.getTime() - (24 * 60 * 60 * 1000) * 7);
    obj.weekStart = new Date(start);
    weeks[x] = obj;
}

dojoArray.forEach(data, function (item) {
    var d = new Date(item.regData[0].CreatedDate);
    d.setTime(d.getTime() - (24 * 60 * 60 * 1000) * item.regData[0].Age);
    for ( var x = 0; x < weeks.length; x++) {
        var inThisWeek = date.compare(d, weeks[x].weekStart) > -1 && date.compare(d, weeks[x].weekEnd) == -1;
        if (inThisWeek)
            weeks[x].Applications.push(item);
    }
}, this);

// create array of last 30 days
var days = [];
var now = new Date();
now.setTime(now.getTime() - (24 * 60 * 60 * 1000) * 30);
for ( var x = 0; x < 31; x++) {
    var d = new Date()
    d.setTime(now.getTime() + (24 * 60 * 60 * 1000) * x);
    var obj = {
        Applications: []
        , Day: d
    };
    days[x] = obj;
}