added consectuive day streak
This commit is contained in:
		
							
								
								
									
										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>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user