-s flag for server to skip data fetching

This commit is contained in:
Mario Zechner 2023-09-19 21:57:09 +02:00
parent 14f4b40b3c
commit 16958db8ce
3 changed files with 8 additions and 28 deletions

View File

@ -10,39 +10,31 @@
"Suche": "Search",
"Preisänderungen": "Price changes",
"Warenkörbe": "Shopping carts",
"Noch keine Produkte im Warenkorb.": "No products in your shopping cart yet.",
"Produkte suchen und mit '+' zum Warenkorb hinzufügen.": "Search for products and add them to the shopping cart with '+'.",
"Filtern...": "Filter...",
"(min. 3 Zeichen)": "(at least 3 characters)",
"Produkt hinzufügen...": "Add product...",
"Neuer Warenkorb": "New shopping cart",
"Exportieren": "Export",
"Importieren": "Import",
"Medieninhaber": "Owner",
"Kontakt": "Contact",
"Adresse": "Address",
"Diese nicht-kommerzielle Seite dient KonsumentInnen dazu, Preise von Produkten im Lebensmittelhandel vergleichen zu können.": "This non-commercial site allows consumers to compare prices of products in the grocery store.",
"Video Anleitung": "Video instructions (in German)",
"Text Anleitung": "Text instructions (in German)",
"Medienberichte": "Media reports",
"Produktsuche": "Product search",
"Radio & Fernsehen": "Radio & Television",
"Print & Online": "Print & Online",
"CartsList_Name": "Name",
"CartsList_Produkte": "Product",
"CartsList_Preis": "Price",
"CartsList_Preisänderungen": "Price changes",
"CartsList_Teilen": "Share",
"CartsList_JSON": "JSON",
"CartsList_Löschen": "Delete",
"ItemsChart_Keine Daten ausgewählt": "No data selected",
"ItemsChart_Preissumme Gesamt": "Total price",
"ItemsChart_Preissumme Ketten": "Store price",
@ -50,19 +42,17 @@
"ItemsChart_Änderung in % seit": "Change in % since",
"ItemsChart_Änderung in % seit {{date}}": "Change in % since {{date}}",
"ItemsChart_Preissumme {{s}}": "Price {{s}}",
"ItemsFilter_Produkte suchen...": "Product search...",
"ItemsFilter_Filter anzeigen/ausblenden": "Show/hide filters",
"ItemsFilter_Alle": "All",
"ItemsFilter_Datum": "Date",
"ItemsFilter_Billiger seit letzter Änderung": "Cheaper since last change",
"ItemsFilter_Nur Diskont-Eigenmarken": "Private brands only",
"ItemsFilter_Nur Diskont-Eigenmarken": "Discount store brands only",
"ItemsFilter_Nur Bio": "Only bio",
"ItemsFilter_Exaktes Wort": "Exact word",
"ItemsFilter_Preis €": "Price €",
"ItemsFilter_Teurer": "More expensive",
"ItemsFilter_Billiger": "Cheaper",
"ItemsList_Resultate": "Results",
"ItemsList_Diagramm": "Chart",
"ItemsList_Verkaufspreis": "Unit price",
@ -77,18 +67,15 @@
"ItemsList_Kette": "Store chain",
"ItemsList_Name": "Name",
"ItemsList_Preis": "Price",
"Cart_Teilen": "Detail",
"Cart_Speichern": "Save",
"Cart_Warenkorb {{name}}": "Shopping cart {{name}}",
"Cart_Warenkorb '{{name}}' existiert bereits. Bitte einen anderen Namen für den zu speichernden Warenkorb eingeben": "Shopping cart '{{name}}' already exists. Please enter a different name for the shopping cart to be saved",
"Cart_Warenkorb '{{name}}' existiert nicht.": "Shopping cart '{{name}}' does not exist.",
"Cart_Artikel": "Item",
"Carts_Name für Warenkorb eingeben:": "Enter name for shopping cart:",
"Carts_Warenkorb mit Namen '{{name}}' existiert bereits": "Shopping cart with name '{{name}}' already exists",
"Carts_Warenkorb '{{name}}' existiert bereits. Bitte einen anderen Namen für den zu importierenden Warenkorb eingeben": "Shopping cart '{{name}}' already exists. Please enter a different name for the shopping cart to be imported",
"Settings_Vorselektierte Ketten": "Pre-selected store chains",
"Settings_Start-Datum für Diagramme": "Start date for charts",
"Settings_Diagramm Typ": "Chart type",

14
package-lock.json generated
View File

@ -16,7 +16,9 @@
"chartjs-adapter-moment": "^1.0.1",
"chokidar": "^3.5.3",
"compression": "^1.7.4",
"cross-env": "^7.0.3",
"express": "^4.18.2",
"husky": "^8.0.3",
"hyphen": "^1.6.6",
"moment": "^2.29.4",
"node-html-parser": "^6.1.5",
@ -26,9 +28,7 @@
"devDependencies": {
"autoprefixer": "^10.4.14",
"concurrently": "^8.1.0",
"cross-env": "^7.0.3",
"esbuild": "^0.17.19",
"husky": "^8.0.3",
"postcss": "^8.4.24",
"prettier": "^2.8.8",
"pretty-quick": "^3.1.3",
@ -1417,7 +1417,6 @@
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
"integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.1"
},
@ -1462,7 +1461,6 @@
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true,
"dependencies": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
@ -2378,7 +2376,6 @@
"version": "8.0.3",
"resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz",
"integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==",
"dev": true,
"bin": {
"husky": "lib/bin.js"
},
@ -2534,8 +2531,7 @@
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
"dev": true
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
},
"node_modules/jiti": {
"version": "1.18.2",
@ -3132,7 +3128,6 @@
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true,
"engines": {
"node": ">=8"
}
@ -3746,7 +3741,6 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
"dependencies": {
"shebang-regex": "^3.0.0"
},
@ -3758,7 +3752,6 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true,
"engines": {
"node": ">=8"
}
@ -4320,7 +4313,6 @@
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
"dependencies": {
"isexe": "^2.0.0"
},

View File

@ -56,14 +56,15 @@ function parseArguments() {
throw new Error("Live reload is only supported in development mode");
}
liveReload = true;
} else if (args[i] === "--skip-data-update") {
} else if (args[i] === "-s" || args[i] === "--skip-data-update") {
skipDataUpdate = true;
} else if (args[i] === "-h" || args[i] === "--help") {
console.log("Usage: node server.js [-p|--port PORT] [-l|--live-reload]");
console.log();
console.log("Options:");
console.log(" -p, --port PORT Port to listen on (default: 3000)");
console.log(" -l, --live-reload Enable live reload (automatically enabled if NODE_ENV is development)");
console.log(" -p, --port PORT Port to listen on (default: 3000)");
console.log(" -l, --live-reload Enable live reload (automatically enabled if NODE_ENV is development)");
console.log(" -s, --skip-data-update Skip fetching data");
process.exit(0);
}
}