forked from Chaospott/site
added consectuive day streak
This commit is contained in:
parent
65a12a7d14
commit
d56770cda6
54
status.html
54
status.html
@ -5,7 +5,9 @@ layout: default
|
|||||||
<script src="js/d3.min.js"></script>
|
<script src="js/d3.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
var timeFormat = 'YYYY-MM-DD HH:mm:ss';
|
var timeFormat = 'YYYY-MM-DD HH:mm:ss';
|
||||||
|
var dateFormat = 'YYYY-MM-DD';
|
||||||
function toHHMMSS (sec_num) {
|
function toHHMMSS (sec_num) {
|
||||||
|
sec_num = parseInt(sec_num);
|
||||||
var hours = Math.floor(sec_num / 3600);
|
var hours = Math.floor(sec_num / 3600);
|
||||||
var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
|
var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
|
||||||
var seconds = sec_num - (hours * 3600) - (minutes * 60);
|
var seconds = sec_num - (hours * 3600) - (minutes * 60);
|
||||||
@ -52,8 +54,36 @@ layout: default
|
|||||||
var hourStart = moment.unix(data[0].value.lastchange)
|
var hourStart = moment.unix(data[0].value.lastchange)
|
||||||
var openTimeArrayIndex = 0;
|
var openTimeArrayIndex = 0;
|
||||||
var hourArray = [];
|
var hourArray = [];
|
||||||
|
var dayCountHigh = 0;
|
||||||
|
var dayCountHighStart = dayStart.clone();
|
||||||
|
var dayCountHighEnd = dayStart.clone();
|
||||||
|
var dayCountCurrent = 0;
|
||||||
|
var dayCountCurrentStart = dayStart.clone();
|
||||||
|
var dayCountCurrentEnd = dayStart.clone();
|
||||||
|
var wasOpen = null;
|
||||||
while(hourStart < moment()) {
|
while(hourStart < moment()) {
|
||||||
|
|
||||||
|
if(hourStart.date() != dayStart.date()) {
|
||||||
|
dayStart.add(1, 'day');
|
||||||
|
dayCountCurrentEnd = dayStart.clone();
|
||||||
|
|
||||||
|
if(wasOpen == true) {
|
||||||
|
dayCountCurrent++;
|
||||||
|
|
||||||
|
if(dayCountCurrent > dayCountHigh) {
|
||||||
|
dayCountHigh = dayCountCurrent;
|
||||||
|
dayCountHighStart = dayCountCurrentStart.clone();
|
||||||
|
dayCountHighEnd = dayCountCurrentEnd.clone();
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
dayCountCurrent = 0;
|
||||||
|
dayCountCurrentStart = dayStart.clone();
|
||||||
|
}
|
||||||
|
|
||||||
|
wasOpen = false;
|
||||||
|
}
|
||||||
|
|
||||||
if(hourArray[hourStart.isoWeekday()] === undefined)
|
if(hourArray[hourStart.isoWeekday()] === undefined)
|
||||||
hourArray[hourStart.isoWeekday()] = [];
|
hourArray[hourStart.isoWeekday()] = [];
|
||||||
|
|
||||||
@ -62,6 +92,7 @@ layout: default
|
|||||||
|
|
||||||
if(moment.unix(openTimeArray[openTimeArrayIndex][1]) < hourStart && moment.unix(openTimeArray[openTimeArrayIndex][2]) > hourStart) {
|
if(moment.unix(openTimeArray[openTimeArrayIndex][1]) < hourStart && moment.unix(openTimeArray[openTimeArrayIndex][2]) > hourStart) {
|
||||||
hourArray[hourStart.isoWeekday()][hourStart.hour()]++;
|
hourArray[hourStart.isoWeekday()][hourStart.hour()]++;
|
||||||
|
wasOpen = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(moment.unix(openTimeArray[openTimeArrayIndex][2]) < hourStart && openTimeArray.length > openTimeArrayIndex + 1)
|
if(moment.unix(openTimeArray[openTimeArrayIndex][2]) < hourStart && openTimeArray.length > openTimeArrayIndex + 1)
|
||||||
@ -86,6 +117,25 @@ layout: default
|
|||||||
openTimeArray.sort(sortArrayTimeNumber);
|
openTimeArray.sort(sortArrayTimeNumber);
|
||||||
closedTimeArray.sort(sortArrayTimeNumber);
|
closedTimeArray.sort(sortArrayTimeNumber);
|
||||||
|
|
||||||
|
var dayCountCurrentText = "";
|
||||||
|
var dayCountHighText = "";
|
||||||
|
|
||||||
|
if(dayCountCurrent > 1)
|
||||||
|
dayCountCurrentText = dayCountCurrent + " days (" + dayCountCurrentStart.format(dateFormat) + " - " + dayCountCurrentEnd.format(dateFormat) + ")";
|
||||||
|
else
|
||||||
|
dayCountCurrentText = dayCountCurrent + " day (" + dayCountCurrentStart.format(dateFormat) + ")";
|
||||||
|
|
||||||
|
if(dayCountHigh > 1)
|
||||||
|
dayCountHighText = dayCountHigh + " days (" + dayCountHighStart.format(dateFormat) + " - " + dayCountHighEnd.format(dateFormat) + ")";
|
||||||
|
else
|
||||||
|
dayCountHighText = dayCountHigh + " day (" + dayCountHighStart.format(dateFormat) + ")";
|
||||||
|
|
||||||
|
|
||||||
|
var dayCountHighText = dayCountHigh + ' days (' + dayCountHighStart.format(dateFormat) + " - " + dayCountHighEnd.format(dateFormat) + ")";
|
||||||
|
|
||||||
|
$( "#days_open_current td:last" ).html(dayCountCurrentText);
|
||||||
|
$( "#days_open_high td:last" ).html(dayCountHighText);
|
||||||
|
|
||||||
$( "#space_open_percent" ).html(percentOpen + '% open');
|
$( "#space_open_percent" ).html(percentOpen + '% open');
|
||||||
$( "#space_open_percent" ).width(percentOpen + '%');
|
$( "#space_open_percent" ).width(percentOpen + '%');
|
||||||
$( "#space_closed_percent" ).html(percentClosed + '% closed');
|
$( "#space_closed_percent" ).html(percentClosed + '% closed');
|
||||||
@ -311,7 +361,7 @@ layout: default
|
|||||||
unknown
|
unknown
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr id="days_open_current">
|
||||||
<td>
|
<td>
|
||||||
consecutive days open
|
consecutive days open
|
||||||
</td>
|
</td>
|
||||||
@ -319,7 +369,7 @@ layout: default
|
|||||||
unknown
|
unknown
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr id="days_open_high">
|
||||||
<td>
|
<td>
|
||||||
consecutive days open (highest streak)
|
consecutive days open (highest streak)
|
||||||
</td>
|
</td>
|
||||||
|
Loading…
Reference in New Issue
Block a user