Merge pull request #1147 from tekktrik/dev/remove-stats
Remove stats page
This commit is contained in:
commit
d87e84b7d6
5 changed files with 1 additions and 105 deletions
2
adabot
2
adabot
|
|
@ -1 +1 @@
|
||||||
Subproject commit a295390bb7c1a694cf64da74a5fe99d7dc51e334
|
Subproject commit 2415fa6b5c8e5bbb9a45d6ee4833d03a70bc25ae
|
||||||
|
|
@ -18,7 +18,6 @@
|
||||||
@import 'pages/downloads';
|
@import 'pages/downloads';
|
||||||
@import 'pages/download';
|
@import 'pages/download';
|
||||||
@import 'pages/awesome';
|
@import 'pages/awesome';
|
||||||
@import 'pages/stats';
|
|
||||||
@import 'pages/libraries';
|
@import 'pages/libraries';
|
||||||
@import 'pages/contributing';
|
@import 'pages/contributing';
|
||||||
@import 'pages/espinstaller';
|
@import 'pages/espinstaller';
|
||||||
|
|
|
||||||
|
|
@ -1,72 +0,0 @@
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
async function getBoardStats() {
|
|
||||||
let response = await fetch('https://api.github.com/repos/adafruit/circuitpython/releases');
|
|
||||||
let data = await response.json();
|
|
||||||
return data;
|
|
||||||
}
|
|
||||||
|
|
||||||
function buildBoardStats(data) {
|
|
||||||
let boards = [];
|
|
||||||
|
|
||||||
clearLoadingIndicator();
|
|
||||||
|
|
||||||
data.forEach(function(release) {
|
|
||||||
displayBoardHeader(release);
|
|
||||||
|
|
||||||
release.assets.forEach(function(asset) {
|
|
||||||
let board_name = asset.name.split('-')[2];
|
|
||||||
let index = boards.findIndex(board => board.name === board_name);
|
|
||||||
|
|
||||||
if (index === -1) {
|
|
||||||
boards.push({name: board_name, downloads: asset.download_count});
|
|
||||||
} else {
|
|
||||||
boards[index].downloads += asset.download_count;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
boards.sort(function(a, b) {
|
|
||||||
return b.downloads - a.downloads;
|
|
||||||
});
|
|
||||||
|
|
||||||
displayBoardStats(boards);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
function clearLoadingIndicator() {
|
|
||||||
let contentElement = document.querySelector('.stats-wrapper');
|
|
||||||
contentElement.innerHTML = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
function displayBoardHeader(release) {
|
|
||||||
let contentElement = document.querySelector('.stats-wrapper');
|
|
||||||
let h2Element = document.createElement('h2');
|
|
||||||
let nameContent = document.createTextNode(`${release.tag_name} - ${release.name}`);
|
|
||||||
h2Element.appendChild(nameContent);
|
|
||||||
contentElement.appendChild(h2Element);
|
|
||||||
}
|
|
||||||
|
|
||||||
function displayBoardStats(boards) {
|
|
||||||
let contentElement = document.querySelector('.stats-wrapper');
|
|
||||||
let table = document.createElement('table');
|
|
||||||
|
|
||||||
//header row
|
|
||||||
let thead = table.createTHead();
|
|
||||||
let tr = thead.insertRow();
|
|
||||||
tr.insertCell().appendChild(document.createTextNode("Board"));
|
|
||||||
tr.insertCell().appendChild(document.createTextNode("Downloads"));
|
|
||||||
|
|
||||||
let tbody = table.createTBody();
|
|
||||||
|
|
||||||
boards.forEach(function(board) {
|
|
||||||
let tr = tbody.insertRow();
|
|
||||||
let name = document.createTextNode(board.name);
|
|
||||||
let downloads = document.createTextNode(board.downloads);
|
|
||||||
tr.insertCell().appendChild(name);
|
|
||||||
tr.insertCell().appendChild(downloads);
|
|
||||||
});
|
|
||||||
|
|
||||||
contentElement.appendChild(table);
|
|
||||||
}
|
|
||||||
|
|
||||||
getBoardStats().then(buildBoardStats);
|
|
||||||
});
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
#stats-page {
|
|
||||||
table {
|
|
||||||
border: 1px solid $gray-border;
|
|
||||||
border-collapse: collapse;
|
|
||||||
|
|
||||||
thead {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
|
|
||||||
td {
|
|
||||||
border: 1px solid $gray-border;
|
|
||||||
padding: 5px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
16
stats.html
16
stats.html
|
|
@ -1,16 +0,0 @@
|
||||||
---
|
|
||||||
layout: home
|
|
||||||
title: Stats
|
|
||||||
permalink: /stats
|
|
||||||
---
|
|
||||||
|
|
||||||
<div id="stats-page" class="common-layout">
|
|
||||||
<div class="content">
|
|
||||||
<h1>CircuitPython Download Stats</h1>
|
|
||||||
<div class="stats-wrapper">
|
|
||||||
Loading Stats...
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<script src="/assets/javascript/stats.js"></script>
|
|
||||||
Loading…
Reference in a new issue