X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=roster.js;h=14f1cb46160b04f73e897ba2fa93b137f87d9783;hb=165775c5c9cde9d59b980cc100f3f5b5a8c1e436;hp=b9230fd113ab1c9a68f04559e3587d85bda8d01c;hpb=3326e4adcafebe37c611131a1b70837e497fd89d;p=ultimatescore diff --git a/roster.js b/roster.js index b9230fd..14f1cb4 100644 --- a/roster.js +++ b/roster.js @@ -1,36 +1,49 @@ +'use strict'; + function load_roster(sheet, cb) { - var req = new XMLHttpRequest(); + let req = new XMLHttpRequest(); req.onload = function(e) { - var response = JSON.parse(req.responseText); + let response = JSON.parse(req.responseText); - var team_name = ''; + let team_name = ''; if (response.values[0].length >= 1 && response.values[0][0] !== undefined && response.values[0][0] !== null) { team_name = response.values[0][0]; } - var roster = []; - var i; + let roster = []; + let i; for (i = 0; i < response.values.length; ++i) { - if (response.values[i][0] === 'Number') { + if (response.values[i][0] === 'Number' || + response.values[i][0] === 'Fake #') { ++i; break; } } for ( ; response.values[i] !== undefined && response.values[i].length >= 3; ++i) { - var display_number = response.values[i][1]; - var name = response.values[i][2]; + let display_number = response.values[i][1]; + let name = response.values[i][2]; roster.push({ "number": display_number, "name": name }); } + roster.sort(function(a, b) { + let an = a['number']; + let bn = b['number']; + if (!(parseInt(an) > 0)) an = 1000; + if (!(parseInt(bn) > 0)) bn = 1000; + if (an !== bn) { + return an - bn; + } + return a['name'].localeCompare(b['name']); + }); cb(team_name, roster); }; - req.open('GET', 'https://sheets.googleapis.com/v4/spreadsheets/1RciMlauWxqM9LYKdsY6lPjJbIAcHJpCXTqyZSEHxH3U/values/\'' + sheet + '\'!A1:J50?key=AIzaSyAuP9yQn8g0bSay6r_RpGtpFeIbwprH1TU'); + req.open('GET', 'https://sheets.googleapis.com/v4/spreadsheets/' + ultimateconfig['roster_sheet_id'] + '/values/\'' + sheet + '\'!A1:J50?key=' + ultimateconfig['api_key']); req.send(); }; @@ -38,7 +51,7 @@ function display_roster(team_name, roster) { document.getElementById('entire-bug').style.display = 'none'; - var carousel = document.getElementById('carousel'); + let carousel = document.getElementById('carousel'); clear_carousel(carousel); if (team_name === '') { @@ -47,8 +60,8 @@ function display_roster(team_name, roster) addheading(carousel, 4, 'Team lineup
' + team_name); } - for (var i = 0; i < roster.length; i += 2) { - var tr = document.createElement("tr"); + for (let i = 0; i < roster.length; i += 2) { + let tr = document.createElement("tr"); addth(tr, "playernum", roster[i].number); addtd(tr, "playername", roster[i].name); @@ -79,11 +92,11 @@ function showroster_from_state() function showrostercarousel(sheet1, sheet2) { - var team_names = [null, null]; - var rosters = [null, null]; - var num_left = 2; + let team_names = [null, null]; + let rosters = [null, null]; + let num_left = 2; - var cb = function(id, team_name, roster) { + let cb = function(id, team_name, roster) { team_names[id] = team_name; rosters[id] = roster; if (--num_left == 0) {