diff options
Diffstat (limited to 'web/cgit-extra.html')
| -rw-r--r-- | web/cgit-extra.html | 37 |
1 files changed, 18 insertions, 19 deletions
diff --git a/web/cgit-extra.html b/web/cgit-extra.html index ed62938..3241e8c 100644 --- a/web/cgit-extra.html +++ b/web/cgit-extra.html @@ -285,23 +285,6 @@ async function getActivityData( days ) { return { values: ret, highest }; } -function getActivityClass( delta, highest ) { - if( !highest ) - return ""; - - const ratio = delta / highest; - if( ratio < 0.0001 ) - return ""; - if( ratio < 0.25 ) - return "activity-low"; - else if( ratio < 0.5 ) - return "activity-medium"; - else if( ratio < 0.75 ) - return "activity-high"; - else - return "activity-very-high"; -} - let spinnerFrame = 0; const spinnerFrames = [ '/', @@ -354,6 +337,19 @@ function createActivityContainer() { content.appendChild( wrapper ); } +function getActivityColor( commits, highest ) { + if( !commits ) return null; + + let percent = commits / highest; + let color = [ + 255 * (1.0 - percent), + 255 * percent, + 255 + ]; + + return `rgb(${color[0]}, ${color[1]}, ${color[2]})`; +} + async function createActivityGraph() { const date = new Date(); let weekday = date.getDay(); @@ -371,10 +367,11 @@ async function createActivityGraph() { for( let i = 0; i < 365 + weekday; ++i ) { const day = 364 + weekday - i; const commits = activity.values[day]; - const aclass = getActivityClass( commits, activity.highest ); + const acol = getActivityColor( commits, activity.highest ); const cell = document.createElement( "td" ); cell.classList.add( "activity-cell-" + day ); - if( aclass ) cell.classList.add( aclass ); + if( acol ) + cell.style.backgroundColor = acol; const popup = document.createElement( "div" ); popup.classList.add( "popup" ); @@ -394,6 +391,8 @@ async function createActivityGraph() { const main = async () => { if( isMainPage() ) { + if( document.querySelector( ".content" ) == null ) + return setTimeout( main, 1 ); createActivityContainer(); return setTimeout( createActivityGraph ); } |
