From 44678f4a2ce542dfd8a97083702fbbf290495ab0 Mon Sep 17 00:00:00 2001
From: mrfry <mr.fry@tutanota.com>
Date: Mon, 22 Nov 2021 20:14:45 +0100
Subject: [PATCH] package updates, server stats script update

---
 package-lock.json                 | 36 +++++++++++++++----------------
 scripts/serverStats.js            | 24 ++++++++++++++++-----
 submodules/moodle-test-userscript |  2 +-
 3 files changed, 38 insertions(+), 24 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index f219bec..5f7f924 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1444,9 +1444,9 @@
       }
     },
     "node_modules/ansi-regex": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
-      "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
       "dev": true,
       "engines": {
         "node": ">=8"
@@ -7656,9 +7656,9 @@
       }
     },
     "node_modules/tar": {
-      "version": "6.1.0",
-      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
-      "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+      "version": "6.1.11",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+      "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
       "dependencies": {
         "chownr": "^2.0.0",
         "fs-minipass": "^2.0.0",
@@ -7758,9 +7758,9 @@
       "dev": true
     },
     "node_modules/tmpl": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
-      "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
+      "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
       "dev": true
     },
     "node_modules/to-fast-properties": {
@@ -9644,9 +9644,9 @@
       }
     },
     "ansi-regex": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
-      "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
       "dev": true
     },
     "ansi-styles": {
@@ -14473,9 +14473,9 @@
       }
     },
     "tar": {
-      "version": "6.1.0",
-      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz",
-      "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==",
+      "version": "6.1.11",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
+      "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==",
       "requires": {
         "chownr": "^2.0.0",
         "fs-minipass": "^2.0.0",
@@ -14561,9 +14561,9 @@
       "dev": true
     },
     "tmpl": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz",
-      "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=",
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
+      "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
       "dev": true
     },
     "to-fast-properties": {
diff --git a/scripts/serverStats.js b/scripts/serverStats.js
index 671df7c..858e9c3 100644
--- a/scripts/serverStats.js
+++ b/scripts/serverStats.js
@@ -83,19 +83,29 @@ const filterFromDailyStats = [
 const fs = require('fs') // eslint-disable-line
 
 const dir = process.argv[2]
+const startDay = !isNaN(parseInt(process.argv[3])) && parseInt(process.argv[3]) > 0 ? 0 : parseInt(process.argv[3])
 if (!dir) {
   console.log('No params')
   process.exit()
 }
 
 function getDayIndex(offset) {
+  let os = offset
   if (!offset) {
-    offset = 0
+    os = 0
+  }
+
+  if (!isNaN(startDay)) {
+    if (!offset) {
+      os = startDay
+    } else {
+      os = startDay + offset
+    }
   }
 
   const date = new Date()
-  if (offset) {
-    date.setDate(date.getDate() + offset)
+  if (os) {
+    date.setDate(date.getDate() + os)
   }
   return (
     date.getFullYear() +
@@ -172,7 +182,11 @@ function countLinesMatching(text, toMatch) {
 }
 
 function getDayName(day) {
-  switch (day) {
+  let d = day
+  if (!isNaN(startDay)) {
+    d += startDay
+  }
+  switch (d) {
     case 0:
     case undefined:
       return 'Today'
@@ -181,7 +195,7 @@ function getDayName(day) {
     case -2:
       return 'Before yesterday'
     default:
-      return `Day ${day.toString()}`
+      return `Day ${d.toString()}`
   }
 }
 
diff --git a/submodules/moodle-test-userscript b/submodules/moodle-test-userscript
index 27211c7..d06e990 160000
--- a/submodules/moodle-test-userscript
+++ b/submodules/moodle-test-userscript
@@ -1 +1 @@
-Subproject commit 27211c7bc83e0e930fabc430ffb5615b52523106
+Subproject commit d06e9900445ca8af4ee354244b056f24bb76bc0c