More fixes to streak calculation
This commit is contained in:
@ -285,6 +285,7 @@ exports.returnUser = function(req, res, next) {
|
|||||||
var tmpLongest = 1;
|
var tmpLongest = 1;
|
||||||
var timeKeys = R.keys(timeObject);
|
var timeKeys = R.keys(timeObject);
|
||||||
|
|
||||||
|
user.longestStreak = 0;
|
||||||
for (var i = 1; i <= timeKeys.length; i++) {
|
for (var i = 1; i <= timeKeys.length; i++) {
|
||||||
if (moment(timeKeys[i - 1]).add(1, 'd').toString()
|
if (moment(timeKeys[i - 1]).add(1, 'd').toString()
|
||||||
=== moment(timeKeys[i]).toString()) {
|
=== moment(timeKeys[i]).toString()) {
|
||||||
@ -298,18 +299,28 @@ exports.returnUser = function(req, res, next) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
timeKeys = timeKeys.reverse();
|
timeKeys = timeKeys.reverse();
|
||||||
var today = moment(Date.now()), currStreak = 1;
|
tmpLongest = 1;
|
||||||
if (moment(timeKeys[0]).add(1, 'd').toString === today.toString()) {
|
|
||||||
for (var i = 2; i <= timeKeys.length; i++) {
|
var today = moment(Date.now()).format('YYYY-MM-DD');
|
||||||
if (moment(timeKeys[i - 1]).add(1, 'd').toString()
|
|
||||||
=== moment(timeKeys[i]).toString()) {
|
if (moment(today).toString() === moment(timeKeys[0]).toString() ||
|
||||||
currStreak++;
|
moment(today).subtract(1, 'd').toString() ===
|
||||||
|
moment(timeKeys[0]).toString()) {
|
||||||
|
for (var i = 1; i <= timeKeys.length; i++) {
|
||||||
|
if (moment(timeKeys[i - 1]).subtract(1, 'd').toString()
|
||||||
|
=== moment(timeKeys[i]).toString()) {
|
||||||
|
debug(timeKeys[i - 1], timeKeys[i]);
|
||||||
|
tmpLongest++;
|
||||||
|
if (tmpLongest > user.currentStreak) {
|
||||||
|
user.currentStreak = tmpLongest;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
user.currentStreak = 1;
|
||||||
}
|
}
|
||||||
user.currentStreak = currStreak;
|
|
||||||
|
|
||||||
user.save(function(err) {
|
user.save(function(err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
|
Reference in New Issue
Block a user