]> git.sesse.net Git - ultimatescore/blobdiff - update_sheets.js
Restructure config for ranking lists a bit.
[ultimatescore] / update_sheets.js
index 59e41372a4b54557b895ae434ab3143b07dffb12..aa4daa6a8559dbeeeed674da59352fa3ea910826 100644 (file)
@@ -68,16 +68,19 @@ function possibly_update_oauth_key(cb) {
 function publish_group_rank(response, group_name)
 {
        let updates = [];
-       let cols = ultimateconfig['score_sheet_cols'][group_name];
+       let config = ultimateconfig['group_cells'][group_name];
+       let cols = config['score_sheet_cols'];
 
        let teams = parse_teams_from_spreadsheet(response);
        let games = parse_games_from_spreadsheet(response, group_name, false);
        apply_games_to_teams(games, teams);
 
        // Write the points total to the unsorted columns.
-       for (let i = 0; i < teams.length; ++i) {
-               let row = ultimateconfig['point_total_start_row'] + i;
-               updates.push({ "range": cols[2] + row, "values": [ [ teams[i].pts ] ] });
+       if (config['point_total_start_row'] !== null) {
+               for (let i = 0; i < teams.length; ++i) {
+                       let row = config['point_total_start_row'] + i;
+                       updates.push({ "range": cols[2] + row, "values": [ [ teams[i].pts ] ] });
+               }
        }
 
        let tiebreakers = [];
@@ -85,7 +88,7 @@ function publish_group_rank(response, group_name)
 
        // Write the ranking table, from scratch.
        for (let i = 0; i < teams.length; ++i) {
-               let row = ultimateconfig['ranking_list_start_row'] + i;
+               let row = config['ranking_list_start_row'] + i;
                updates.push({ "range": cols[0] + row, "values": [ [ teams[i].rank ] ] });
                updates.push({ "range": cols[1] + row, "values": [ [ teams[i].mediumname ] ] });
                updates.push({ "range": cols[2] + row, "values": [ [ teams[i].pts ] ] });
@@ -95,7 +98,7 @@ function publish_group_rank(response, group_name)
        if (tiebreakers.length != 0) {
                tb_str = tiebreakers.join("\n");
        }
-       updates.push({ "range": cols[0] + ultimateconfig['ranking_list_explain_row'], "values": [ [ tb_str ] ]});
+       updates.push({ "range": cols[0] + config['ranking_list_explain_row'], "values": [ [ tb_str ] ]});
 
        let json = {
                "valueInputOption": "USER_ENTERED",