Use const wherever possible in js/
[plack-app-gruntmaster.git] / js / 90-tracker.js
index cf46aeb5787acf89db7aa9f8270f207817065903..b7f5e57bacf36f6ff56a03e7fa5220c069daf286 100644 (file)
@@ -12,12 +12,12 @@ function clean_tracker(){
 let tracker;
 
 function update_tracker(){
-       let data = localStorage.getItem('tracker_data');
-       let user = localStorage.getItem('tracker_username');
-       if(!data)
+       if(!localStorage.getItem('tracker_data'))
                return;
-       data = JSON.parse(data);
-       let contests = {}, solved = {}, attempted = {}, solvednr = 0, attemptednr = 0;
+       const data = JSON.parse(localStorage.getItem('tracker_data'));
+       const user = localStorage.getItem('tracker_username');
+       const contests = {}, solved = {}, attempted = {};
+       let solvednr = 0, attemptednr = 0;
        data.problems.forEach(e => {
                if(e.solved) {
                        solved[e.problem] = 1;
@@ -39,7 +39,7 @@ function update_tracker(){
 
        if(location.pathname == '/pb/')
                $('table .name a').each(el => {
-                       let id = el.getAttribute('href').split('?', 2)[0];
+                       const id = el.getAttribute('href').split('?', 2)[0];
                        if(solved[id])
                                el.insertAdjacentHTML('beforebegin', TICK);
                        else if(attempted[id])
@@ -48,17 +48,17 @@ function update_tracker(){
 
        if(location.pathname == '/ct/')
                $('table .name a').each(el => {
-                       let id = el.getAttribute('href').substr(4);
+                       const id = el.getAttribute('href').substr(4);
                        if(contests[id])
                                el.insertAdjacentHTML('beforebegin', TICK);
                });
 
        if(location.pathname == '/log/')
                $('table tbody tr').each(el => {
-                       let owner = el.querySelector('.owner a');
+                       const owner = el.querySelector('.owner a');
                        if(!owner || owner.getAttribute('href') != '/us/' + user)
                                return;
-                       var state = el.getElementsByClassName('r0').length ? TICK : XMARK;
+                       const state = el.getElementsByClassName('r0').length ? TICK : XMARK;
                        el.getElementsByClassName('id')[0].innerHTML += state;
                });
 
@@ -77,14 +77,14 @@ function start_tracking(user){
        $('#tracker_userlink')[0].innerHTML = user;
        tracker.classList.remove('hidden');
        update_tracker();
-       var lastfetch = localStorage.getItem('tracker_lastfetch');
+       const lastfetch = localStorage.getItem('tracker_lastfetch');
        if(Date.now() - lastfetch > 60 * 10 * 1000)
                refresh_tracker();
 }
 
 function refresh_tracker(){
-       var user = localStorage.getItem('tracker_username');
-       var xhr = new XMLHttpRequest();
+       const user = localStorage.getItem('tracker_username');
+       const xhr = new XMLHttpRequest();
        xhr.open('GET', '/us/' + user + '?format=json');
        xhr.onload = () => {
                localStorage.setItem('tracker_data', xhr.responseText);
@@ -104,7 +104,7 @@ function stop_tracking(){
 
 $(function(){
        tracker = m('<div id="tracker" class="hidden">Tracking <a id="tracker_userlink"></a>.<br><a id="tracker_stop" role="button">Stop tracking</a><br><a id="tracker_log">Job log</a><dl class="dl-horizontal"><dt>Solved</dt>    <dd id="tracker_solved">?</dd><dt>Attempted</dt> <dd id="tracker_attempted">?</dd><dt>Contests</dt>  <dd id="tracker_contests">?</dd></dl></div>');
-       var sidebar = $('#sidebar')[0];
+       const sidebar = $('#sidebar')[0];
        sidebar.insertBefore(tracker, sidebar.firstChild);
        $('#tracker_stop').on('click', stop_tracking);
        $('#track_user').on('click', function() { stop_tracking(); start_tracking(this.dataset.user) });
This page took 0.012339 seconds and 4 git commands to generate.