adds missing translations

This commit is contained in:
Christian Beutel
2024-07-13 22:33:41 +02:00
parent d0a408983b
commit 230f23b9ff
18 changed files with 92 additions and 109 deletions

View File

@@ -36,6 +36,6 @@ docker exec -it wanderer-web run-parts /etc/periodic/15min
## Export ## Export
Currently, wanderer supports exporting only for single trails. A bulk export feature is planned for the near future. To export a single trail head over to `/trails` and select the trail you want to export. From the ⋮ menu select "Export". You can export the route data either in GPX or in GeoJSON format. Furthermore, you can choose whether you want to include the photos and the summit book of the trail. In any case, wanderer will create a ZIP archive with all the data that is then downloaded.
To export a trail head over to `/trails` and select the trail you want to export. From the ⋮ menu select "Export". You can export the route data either in GPX or in GeoJSON format. Furthermore, you can choose whether you want to include the photos and the summit book of the trail. In any case, wanderer will create a ZIP archive with all the data that is then downloaded. You can also export all of your trails at once. To do so, head over to `/settings/export` and click "Export all trails". The other steps remain analogous to exporting a single trail.

View File

@@ -29,7 +29,7 @@
{/if} {/if}
<select <select
{name} {name}
class="bg-input-background h-10 w-full px-4 border-r-8 border-transparent outline outline-1 outline-input-border rounded-md focus:outline-input-border-focus transition-colors" class="block bg-input-background h-10 px-4 border-r-8 border-transparent outline outline-1 outline-input-border rounded-md focus:outline-input-border-focus transition-colors"
class:text-gray-500={disabled} class:text-gray-500={disabled}
{disabled} {disabled}
bind:value bind:value

View File

@@ -50,7 +50,7 @@
<Modal <Modal
id="password-modal" id="password-modal"
size="max-w-xl" size="max-w-sm"
title={$_("change-password")} title={$_("change-password")}
bind:openModal={_openModal} bind:openModal={_openModal}
bind:closeModal bind:closeModal

View File

@@ -1,21 +1,21 @@
<script lang="ts"> <script lang="ts">
import { goto } from "$app/navigation"; import { goto } from "$app/navigation";
import type { DropdownItem } from "../base/dropdown.svelte"; import type { DropdownItem } from "../base/dropdown.svelte";
import { _ } from "svelte-i18n";
export let selected: number; export let selected: number;
const items: DropdownItem[] = [ const items: DropdownItem[] = [
{ text: "My Account", value: "/settings/account" }, { text: $_("my-account"), value: "/settings/account" },
{ text: "Display", value: "/settings/display" }, { text: $_("display"), value: "/settings/display" },
{ text: "Import/Export", value: "/settings/export" }, { text: `${$_("import")}/${$_("export")}`, value: "/settings/export" },
{ text: "Help", value: "https://wanderer.to" }, { text: $_('help'), value: "https://wanderer.to" },
]; ];
function handleItemClick(item: DropdownItem) { function handleItemClick(item: DropdownItem) {
if(item.text != "Help") { if (item.text != "Help") {
goto(item.value); goto(item.value);
}else { } else {
window.open(item.value, '_blank'); window.open(item.value, "_blank");
} }
} }
</script> </script>

View File

@@ -43,22 +43,22 @@
{ {
text: $_("altitude"), text: $_("altitude"),
value: "altitude", value: "altitude",
icon: selectedMetric == "altitude" ? "square-check" : "square", icon: selectedMetric == "altitude" ? "circle-dot" : "circle",
}, },
{ {
text: $_("slope"), text: $_("slope"),
value: "slope", value: "slope",
icon: selectedMetric == "slope" ? "square-check" : "square", icon: selectedMetric == "slope" ? "circle-dot" : "circle",
}, },
{ {
text: $_("speed"), text: $_("speed"),
value: "speed", value: "speed",
icon: selectedMetric == "speed" ? "square-check" : "square", icon: selectedMetric == "speed" ? "circle-dot" : "circle",
}, },
{ {
text: $_("off"), text: $_("off"),
value: false, value: false,
icon: selectedMetric == false ? "square-check" : "square", icon: selectedMetric == false ? "circle-dot" : "circle",
}, },
]; ];

View File

@@ -6,10 +6,10 @@
export let openModal: (() => void) | undefined = undefined; export let openModal: (() => void) | undefined = undefined;
export let closeModal: (() => void) | undefined = undefined; export let closeModal: (() => void) | undefined = undefined;
export let title: string = $_("export");
const dispatch = createEventDispatcher(); const dispatch = createEventDispatcher();
const fileFormats = [ const fileFormats = [
{ text: "GPX", value: "gpx" }, { text: "GPX", value: "gpx" },
{ text: "GeoJSON", value: "json" }, { text: "GeoJSON", value: "json" },
@@ -21,20 +21,13 @@
summitLog: false, summitLog: false,
}; };
function exportTrail() { function exportTrail() {
dispatch("export", exportSettings); dispatch("export", exportSettings);
closeModal!(); closeModal!();
} }
</script> </script>
<Modal <Modal id="export-modal" {title} size="max-w-sm" bind:openModal bind:closeModal>
id="export-modal"
title="Export trail"
size="max-w-sm"
bind:openModal
bind:closeModal
>
<div slot="content"> <div slot="content">
<div class="mb-3"> <div class="mb-3">
<Select <Select

View File

@@ -2,7 +2,6 @@
"Biking": "Radfahren", "Biking": "Radfahren",
"Canoeing": "Kanufahren", "Canoeing": "Kanufahren",
"Climbing": "Klettern", "Climbing": "Klettern",
"export-all-trails": "",
"Hiking": "Wandern", "Hiking": "Wandern",
"Skiing": "Skifahren", "Skiing": "Skifahren",
"Walking": "Laufen", "Walking": "Laufen",
@@ -24,11 +23,11 @@
"categories": "Kategorien", "categories": "Kategorien",
"category": "Kategorie", "category": "Kategorie",
"change": "Ändern", "change": "Ändern",
"change-email": "", "change-email": "Email ändern",
"change-password": "", "change-password": "Passwort ändern",
"changelog": "Changelog", "changelog": "Changelog",
"chinese": "Chinesisch (vereinfacht)", "chinese": "Chinesisch (vereinfacht)",
"close": "", "close": "Schließen",
"comment": "{n, plural, =1 {Kommentar} other {Kommentare}}", "comment": "{n, plural, =1 {Kommentar} other {Kommentare}}",
"completed": "Abgeschlossen", "completed": "Abgeschlossen",
"completion-status": "Abschlussstatus", "completion-status": "Abschlussstatus",
@@ -36,11 +35,11 @@
"copy-link": "Link kopieren", "copy-link": "Link kopieren",
"create-new-list": "Neue Liste erstellen", "create-new-list": "Neue Liste erstellen",
"creation-date": "Erstellungsdatum", "creation-date": "Erstellungsdatum",
"current-password": "", "current-password": "Aktuelles Passwort",
"cycling": "Radfahren", "cycling": "Radfahren",
"danger-zone": "Gefahrenzone", "danger-zone": "Gefahrenzone",
"date": "Datum", "date": "Datum",
"default-category": "", "default-category": "Standard Kategorie",
"default-location": "Standort", "default-location": "Standort",
"delete": "Löschen", "delete": "Löschen",
"delete-account": "Konto löschen", "delete-account": "Konto löschen",
@@ -51,7 +50,7 @@
"difficult": "Schwer", "difficult": "Schwer",
"difficulty": "Schwierigkeit", "difficulty": "Schwierigkeit",
"directions": "Wegbeschreibung", "directions": "Wegbeschreibung",
"display": "", "display": "Anzeige",
"display-as": "Anzeigen als", "display-as": "Anzeigen als",
"distance": "Distanz", "distance": "Distanz",
"documentation": "Dokumentation", "documentation": "Dokumentation",
@@ -72,18 +71,21 @@
"error-exporting-trail": "Fehler beim Exportieren des Trails", "error-exporting-trail": "Fehler beim Exportieren des Trails",
"error-printing-map": "Fehler beim Drucken der Karte", "error-printing-map": "Fehler beim Drucken der Karte",
"error-reading-file": "Fehler beim Lesen der Datei", "error-reading-file": "Fehler beim Lesen der Datei",
"error-updating-password": "", "error-saving-trail": "Fehler bei Speichern der Route",
"error-updating-password": "Fehler beim Aktualisieren des Passworts",
"est-duration": "Gesch. Dauer", "est-duration": "Gesch. Dauer",
"explore": "Erkunden", "explore": "Erkunden",
"explore-some-trails": "Erkunden Sie einige Routen", "explore-some-trails": "Erkunden Sie einige Routen",
"export": "Exportieren", "export": "Exportieren",
"export-all-trails": "Alle Routen exportieren",
"features": "Features", "features": "Features",
"file-format": "Dateiformat", "file-format": "Dateiformat",
"focus-map-on": "", "focus-map-on": "Karte fokussieren auf",
"french": "Französisch", "french": "Französisch",
"german": "Deutsch", "german": "Deutsch",
"get-position-from-exif": "Koordinaten aus EXIF Daten", "get-position-from-exif": "Koordinaten aus EXIF Daten",
"grid": "Gitter", "grid": "Gitter",
"help": "Hilfe",
"hero_section_0_text": "Entdecke spannende Routen, speichere deine Favoriten und erlebe die Schönheit der Natur. Finde dein nächstes Abenteuer!", "hero_section_0_text": "Entdecke spannende Routen, speichere deine Favoriten und erlebe die Schönheit der Natur. Finde dein nächstes Abenteuer!",
"hero_section_1_heading": "Hier gibt es noch keine Routen", "hero_section_1_heading": "Hier gibt es noch keine Routen",
"hero_section_1_text": "Hier sind einige Routen, die dir gefallen könnten. Oder du wirfst einen Blick auf die vollständige Liste.", "hero_section_1_text": "Hier sind einige Routen, die dir gefallen könnten. Oder du wirfst einen Blick auf die vollständige Liste.",
@@ -93,7 +95,8 @@
"hungarian": "Ungarisch", "hungarian": "Ungarisch",
"icon": "Icon", "icon": "Icon",
"imperial": "Amerikanisch", "imperial": "Amerikanisch",
"import": "", "import": "Importieren",
"import-hint": "GPX, FIT, KML oder TCX Dateien auswählen oder hierher ziehen...",
"include-description": "Beschreibung übernehmen", "include-description": "Beschreibung übernehmen",
"invalid-date": "Ungültiges Datum", "invalid-date": "Ungültiges Datum",
"invalid-username": "Ungültiger Nutzername", "invalid-username": "Ungültiger Nutzername",
@@ -101,11 +104,11 @@
"language": "Sprache", "language": "Sprache",
"latitude": "Breitengrad", "latitude": "Breitengrad",
"license": "Lizenz", "license": "Lizenz",
"link-copied": "", "link-copied": "Link kopiert",
"list": "{n, plural, =1 {Liste} other {Listen}}", "list": "{n, plural, =1 {Liste} other {Listen}}",
"location": "Standort", "location": "Standort",
"login": "Login", "login": "Login",
"login-details": "", "login-details": "Login Details",
"logout": "Logout", "logout": "Logout",
"longitude": "Längengrad", "longitude": "Längengrad",
"make-one": "Neues erstellen!", "make-one": "Neues erstellen!",
@@ -114,6 +117,7 @@
"metric": "Metrisch", "metric": "Metrisch",
"moderate": "Mittel", "moderate": "Mittel",
"must-be-at-least-n-characters-long": "Muss mindestens {n} Zeichen lang sein", "must-be-at-least-n-characters-long": "Muss mindestens {n} Zeichen lang sein",
"my-account": "Mein Konto",
"n-days-ago": "vor {n} Tagen", "n-days-ago": "vor {n} Tagen",
"n-hours-ago": "vor {n} Stunden", "n-hours-ago": "vor {n} Stunden",
"n-minutes-ago": "vor {n} Minuten", "n-minutes-ago": "vor {n} Minuten",
@@ -123,7 +127,7 @@
"name": "Name", "name": "Name",
"near": "Nahe", "near": "Nahe",
"new-list": "Neue Liste", "new-list": "Neue Liste",
"new-password": "", "new-password": "Neues Passwort",
"new-trail": "Neue Route", "new-trail": "Neue Route",
"no-account": "Du hast noch kein Konto?", "no-account": "Du hast noch kein Konto?",
"no-preference": "Keine Präferenz", "no-preference": "Keine Präferenz",
@@ -135,7 +139,7 @@
"orientation": "Ausrichtung", "orientation": "Ausrichtung",
"paper-size": "Papierformat", "paper-size": "Papierformat",
"password": "Passwort", "password": "Passwort",
"password-updated": "", "password-updated": "Passwort aktualisiert",
"photos": "Fotos", "photos": "Fotos",
"pick-a-trail": "Route auswählen", "pick-a-trail": "Route auswählen",
"polish": "Polnisch", "polish": "Polnisch",
@@ -168,14 +172,15 @@
"stop-drawing": "Zeichnen beenden", "stop-drawing": "Zeichnen beenden",
"summit-book": "Gipfelbuch", "summit-book": "Gipfelbuch",
"text": "Text", "text": "Text",
"tilesets": "", "tilesets": "Tilesets",
"trail": "{n, plural, =1 {Route} other {Routen}}", "trail": "{n, plural, =1 {Route} other {Routen}}",
"trail-not-shared": "Route mit niemandem geteilt", "trail-not-shared": "Route mit niemandem geteilt",
"trail-saved-successfully": "Route gespeichert",
"trails-for-you": "Routen für dich", "trails-for-you": "Routen für dich",
"units": "Einheiten", "units": "Einheiten",
"upload-file": "Datei hochladen", "upload-file": "Datei hochladen",
"upload-gpx": "GPX hochladen", "upload-gpx": "GPX hochladen",
"uploaded": "", "uploaded": "hochgeladen",
"username": "Nutzername", "username": "Nutzername",
"view": "Ansehen", "view": "Ansehen",
"waypoints": "{n, plural, =1 {Wegpunkt} other {Wegpunkte}}", "waypoints": "{n, plural, =1 {Wegpunkt} other {Wegpunkte}}",

View File

@@ -2,7 +2,6 @@
"Biking": "Biking", "Biking": "Biking",
"Canoeing": "Canoeing", "Canoeing": "Canoeing",
"Climbing": "Climbing", "Climbing": "Climbing",
"export-all-trails": "Export all trails",
"Hiking": "Hiking", "Hiking": "Hiking",
"Skiing": "Skiing", "Skiing": "Skiing",
"Walking": "Walking", "Walking": "Walking",
@@ -72,11 +71,13 @@
"error-exporting-trail": "Error exporting trail", "error-exporting-trail": "Error exporting trail",
"error-printing-map": "Error printing map", "error-printing-map": "Error printing map",
"error-reading-file": "Error reading file", "error-reading-file": "Error reading file",
"error-saving-trail": "Error saving trail",
"error-updating-password": "Error updating password", "error-updating-password": "Error updating password",
"est-duration": "Est. duration", "est-duration": "Est. duration",
"explore": "Explore", "explore": "Explore",
"explore-some-trails": "Explore some trails", "explore-some-trails": "Explore some trails",
"export": "Export", "export": "Export",
"export-all-trails": "Export all trails",
"features": "Features", "features": "Features",
"file-format": "File format", "file-format": "File format",
"focus-map-on": "Focus map on", "focus-map-on": "Focus map on",
@@ -84,6 +85,7 @@
"german": "German", "german": "German",
"get-position-from-exif": "Get coordinates from EXIF data", "get-position-from-exif": "Get coordinates from EXIF data",
"grid": "Grid", "grid": "Grid",
"help": "Help",
"hero_section_0_text": "Explore exciting trails, save your favorites, and experience the beauty of nature. Find your next adventure!", "hero_section_0_text": "Explore exciting trails, save your favorites, and experience the beauty of nature. Find your next adventure!",
"hero_section_1_heading": "It seems there are no trails here yet.", "hero_section_1_heading": "It seems there are no trails here yet.",
"hero_section_1_text": "Here are some trails you might like. Or you can just go to the full list right now.", "hero_section_1_text": "Here are some trails you might like. Or you can just go to the full list right now.",
@@ -94,6 +96,7 @@
"icon": "Icon", "icon": "Icon",
"imperial": "Imperial", "imperial": "Imperial",
"import": "Import", "import": "Import",
"import-hint": "Select or drag GPX, FIT, KML or TCX files here...",
"include-description": "Include description", "include-description": "Include description",
"invalid-date": "Invalid Date", "invalid-date": "Invalid Date",
"invalid-username": "Invalid username", "invalid-username": "Invalid username",
@@ -114,6 +117,7 @@
"metric": "Metric", "metric": "Metric",
"moderate": "Moderate", "moderate": "Moderate",
"must-be-at-least-n-characters-long": "Must be at least {n} characters long", "must-be-at-least-n-characters-long": "Must be at least {n} characters long",
"my-account": "My Account",
"n-days-ago": "{n} days ago", "n-days-ago": "{n} days ago",
"n-hours-ago": "{n} hours ago", "n-hours-ago": "{n} hours ago",
"n-minutes-ago": "{n} minutes ago", "n-minutes-ago": "{n} minutes ago",
@@ -171,6 +175,7 @@
"tilesets": "Custom tilesets", "tilesets": "Custom tilesets",
"trail": "{n, plural, =1 {Trail} other {Trails}}", "trail": "{n, plural, =1 {Trail} other {Trails}}",
"trail-not-shared": "Not shared with anyone", "trail-not-shared": "Not shared with anyone",
"trail-saved-successfully": "Trail saved successfully",
"trails-for-you": "Trails for you", "trails-for-you": "Trails for you",
"units": "Units", "units": "Units",
"upload-file": "Upload file", "upload-file": "Upload file",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "Erreur d'impression de la carte", "error-printing-map": "Erreur d'impression de la carte",
"error-reading-file": "Erreur de lecture du fichier", "error-reading-file": "Erreur de lecture du fichier",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Temps estimé", "est-duration": "Temps estimé",
"explore": "Explorer", "explore": "Explorer",
"explore-some-trails": "Explorer certains itinéraires", "explore-some-trails": "Explorer certains itinéraires",
"export": "", "export": "",
"export-all-trails": "",
"features": "Fonctionnalités", "features": "Fonctionnalités",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Allemand", "german": "Allemand",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "Grille", "grid": "Grille",
"help": "",
"hero_section_0_text": "Explorez des itinéraires passionnants, sauvegardez vos favoris et découvrez la beauté de la nature. Trouvez votre prochaine aventure !", "hero_section_0_text": "Explorez des itinéraires passionnants, sauvegardez vos favoris et découvrez la beauté de la nature. Trouvez votre prochaine aventure !",
"hero_section_1_heading": "Il semble qu'il n'y ait pas encore d'itinéraire ici.", "hero_section_1_heading": "Il semble qu'il n'y ait pas encore d'itinéraire ici.",
"hero_section_1_text": "Voici quelques itinéraires qui pourraient vous plaire. Vous pouvez également consulter la liste complète dès maintenant.", "hero_section_1_text": "Voici quelques itinéraires qui pourraient vous plaire. Vous pouvez également consulter la liste complète dès maintenant.",
@@ -94,6 +96,7 @@
"icon": "Icône", "icon": "Icône",
"imperial": "Impérial", "imperial": "Impérial",
"import": "", "import": "",
"import-hint": "",
"include-description": "Inclure la description", "include-description": "Inclure la description",
"invalid-date": "Date invalide", "invalid-date": "Date invalide",
"invalid-username": "Nom d'utilisateur invalide", "invalid-username": "Nom d'utilisateur invalide",
@@ -114,6 +117,7 @@
"metric": "Métrique", "metric": "Métrique",
"moderate": "Modérer", "moderate": "Modérer",
"must-be-at-least-n-characters-long": "Doit être composé d'au moins {n} caractères", "must-be-at-least-n-characters-long": "Doit être composé d'au moins {n} caractères",
"my-account": "",
"n-days-ago": "il y a {n} jours", "n-days-ago": "il y a {n} jours",
"n-hours-ago": "il y a {n} heures", "n-hours-ago": "il y a {n} heures",
"n-minutes-ago": "il y a {n} minutes", "n-minutes-ago": "il y a {n} minutes",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Itinéraire} other {Itinéraires}}", "trail": "{n, plural, =1 {Itinéraire} other {Itinéraires}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "Itinéraire pour vous", "trails-for-you": "Itinéraire pour vous",
"units": "Unités", "units": "Unités",
"upload-file": "Téléverser un fichier", "upload-file": "Téléverser un fichier",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "", "error-printing-map": "",
"error-reading-file": "Hiba a fájl olvasása közben", "error-reading-file": "Hiba a fájl olvasása közben",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Becsült időtartam", "est-duration": "Becsült időtartam",
"explore": "Felfedezés", "explore": "Felfedezés",
"explore-some-trails": "Fedezzen fel néhány ösvényt", "explore-some-trails": "Fedezzen fel néhány ösvényt",
"export": "", "export": "",
"export-all-trails": "",
"features": "Jellemzők", "features": "Jellemzők",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Német", "german": "Német",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "", "grid": "",
"help": "",
"hero_section_0_text": "Fedezze fel az izgalmas útvonalakat, mentse el kedvenceit, és tapasztalja meg a természet szépségét. Találja meg a következő kalandját!", "hero_section_0_text": "Fedezze fel az izgalmas útvonalakat, mentse el kedvenceit, és tapasztalja meg a természet szépségét. Találja meg a következő kalandját!",
"hero_section_1_heading": "Úgy tűnik, itt még nincsenek ösvények.", "hero_section_1_heading": "Úgy tűnik, itt még nincsenek ösvények.",
"hero_section_1_text": "Íme néhány nyomvonal, amely tetszeni fog. Vagy csak menj a teljes listára most rögtön.", "hero_section_1_text": "Íme néhány nyomvonal, amely tetszeni fog. Vagy csak menj a teljes listára most rögtön.",
@@ -94,6 +96,7 @@
"icon": "Ikon", "icon": "Ikon",
"imperial": "Angolszász", "imperial": "Angolszász",
"import": "", "import": "",
"import-hint": "",
"include-description": "", "include-description": "",
"invalid-date": "Érvénytelen dátum", "invalid-date": "Érvénytelen dátum",
"invalid-username": "Érvénytelen felhasználó", "invalid-username": "Érvénytelen felhasználó",
@@ -114,6 +117,7 @@
"metric": "Metrikus", "metric": "Metrikus",
"moderate": "Mérsékelt", "moderate": "Mérsékelt",
"must-be-at-least-n-characters-long": "Legalább {n} karakter hosszúnak kell lennie", "must-be-at-least-n-characters-long": "Legalább {n} karakter hosszúnak kell lennie",
"my-account": "",
"n-days-ago": "", "n-days-ago": "",
"n-hours-ago": "", "n-hours-ago": "",
"n-minutes-ago": "", "n-minutes-ago": "",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Útvonal} other {Útvonalak}}", "trail": "{n, plural, =1 {Útvonal} other {Útvonalak}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "Útvonalak önnek", "trails-for-you": "Útvonalak önnek",
"units": "Mértékegységek", "units": "Mértékegységek",
"upload-file": "Fájl feltöltése", "upload-file": "Fájl feltöltése",

View File

@@ -2,7 +2,6 @@
"Biking": "Ciclismo", "Biking": "Ciclismo",
"Canoeing": "Canoa", "Canoeing": "Canoa",
"Climbing": "Arrampicata", "Climbing": "Arrampicata",
"export-all-trails": "",
"Hiking": "Escursionismo", "Hiking": "Escursionismo",
"Skiing": "Sciare", "Skiing": "Sciare",
"Walking": "Camminare", "Walking": "Camminare",
@@ -72,11 +71,13 @@
"error-exporting-trail": "Errore durante l'esportazione del percorso", "error-exporting-trail": "Errore durante l'esportazione del percorso",
"error-printing-map": "Errore durante la stampa della mappa", "error-printing-map": "Errore durante la stampa della mappa",
"error-reading-file": "Errore durante la lettura del file", "error-reading-file": "Errore durante la lettura del file",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Durata stimata", "est-duration": "Durata stimata",
"explore": "Esplora", "explore": "Esplora",
"explore-some-trails": "Esplora alcuni percorsi", "explore-some-trails": "Esplora alcuni percorsi",
"export": "Esporta", "export": "Esporta",
"export-all-trails": "",
"features": "Caratteristiche", "features": "Caratteristiche",
"file-format": "Formato del file", "file-format": "Formato del file",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Tedesco", "german": "Tedesco",
"get-position-from-exif": "Ottieni posizione da dati EXIF", "get-position-from-exif": "Ottieni posizione da dati EXIF",
"grid": "Griglia", "grid": "Griglia",
"help": "",
"hero_section_0_text": "Scopri percorsi emozionanti, salva i tuoi preferiti e vivi la bellezza della natura. Trova la tua prossima avventura!", "hero_section_0_text": "Scopri percorsi emozionanti, salva i tuoi preferiti e vivi la bellezza della natura. Trova la tua prossima avventura!",
"hero_section_1_heading": "Non ci sono ancora percorsi qui", "hero_section_1_heading": "Non ci sono ancora percorsi qui",
"hero_section_1_text": "Ecco alcuni percorsi che potrebbero piacerti. Oppure dai un'occhiata alla lista completa.", "hero_section_1_text": "Ecco alcuni percorsi che potrebbero piacerti. Oppure dai un'occhiata alla lista completa.",
@@ -94,6 +96,7 @@
"icon": "Icona", "icon": "Icona",
"imperial": "Imperiale", "imperial": "Imperiale",
"import": "", "import": "",
"import-hint": "",
"include-description": "Adotta descrizione", "include-description": "Adotta descrizione",
"invalid-date": "Data non valida", "invalid-date": "Data non valida",
"invalid-username": "Nome utente non valido", "invalid-username": "Nome utente non valido",
@@ -114,6 +117,7 @@
"metric": "Metrico", "metric": "Metrico",
"moderate": "Moderato", "moderate": "Moderato",
"must-be-at-least-n-characters-long": "Deve essere lungo almeno {n} caratteri", "must-be-at-least-n-characters-long": "Deve essere lungo almeno {n} caratteri",
"my-account": "",
"n-days-ago": "{n} giorni fa", "n-days-ago": "{n} giorni fa",
"n-hours-ago": "{n} ore fa", "n-hours-ago": "{n} ore fa",
"n-minutes-ago": "{n} minuti fa", "n-minutes-ago": "{n} minuti fa",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Percorso} other {Percorsi}}", "trail": "{n, plural, =1 {Percorso} other {Percorsi}}",
"trail-not-shared": "Percorso non condiviso con nessuno", "trail-not-shared": "Percorso non condiviso con nessuno",
"trail-saved-successfully": "",
"trails-for-you": "Percorsi per te", "trails-for-you": "Percorsi per te",
"units": "Unità", "units": "Unità",
"upload-file": "Carica file", "upload-file": "Carica file",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "Fout bij afdrukken van kaart", "error-printing-map": "Fout bij afdrukken van kaart",
"error-reading-file": "Het bestand kan niet worden ingelezen", "error-reading-file": "Het bestand kan niet worden ingelezen",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Geschatte duur", "est-duration": "Geschatte duur",
"explore": "Verkennen", "explore": "Verkennen",
"explore-some-trails": "Verken enkele wandelroutes", "explore-some-trails": "Verken enkele wandelroutes",
"export": "", "export": "",
"export-all-trails": "",
"features": "Kenmerken", "features": "Kenmerken",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Duits", "german": "Duits",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "Rooster", "grid": "Rooster",
"help": "",
"hero_section_0_text": "Verken uitdagende wandelroutes, bewaar je favoriete en ervaar de pracht van de natuur. Op naar het volgende avontuur!", "hero_section_0_text": "Verken uitdagende wandelroutes, bewaar je favoriete en ervaar de pracht van de natuur. Op naar het volgende avontuur!",
"hero_section_1_heading": "Je hebt nog geen wandelroutes.", "hero_section_1_heading": "Je hebt nog geen wandelroutes.",
"hero_section_1_text": "Wellicht vind je deze routes interessant. Ook kun je de volledige lijst bekijken.", "hero_section_1_text": "Wellicht vind je deze routes interessant. Ook kun je de volledige lijst bekijken.",
@@ -94,6 +96,7 @@
"icon": "Pictogram", "icon": "Pictogram",
"imperial": "Imperiaal", "imperial": "Imperiaal",
"import": "", "import": "",
"import-hint": "",
"include-description": "Inclusief beschrijving", "include-description": "Inclusief beschrijving",
"invalid-date": "Ongeldige datum", "invalid-date": "Ongeldige datum",
"invalid-username": "Ongeldige gebruikersnaam", "invalid-username": "Ongeldige gebruikersnaam",
@@ -114,6 +117,7 @@
"metric": "Metrisch", "metric": "Metrisch",
"moderate": "Gemiddeld", "moderate": "Gemiddeld",
"must-be-at-least-n-characters-long": "Minimaal {n} tekens", "must-be-at-least-n-characters-long": "Minimaal {n} tekens",
"my-account": "",
"n-days-ago": "{n} dagen geleden", "n-days-ago": "{n} dagen geleden",
"n-hours-ago": "{n} uuren geleden", "n-hours-ago": "{n} uuren geleden",
"n-minutes-ago": "{n} minuten geleden", "n-minutes-ago": "{n} minuten geleden",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Wandelroute} other {Wandelroutes}}", "trail": "{n, plural, =1 {Wandelroute} other {Wandelroutes}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "Wandelroutes voor jou", "trails-for-you": "Wandelroutes voor jou",
"units": "Eenheden", "units": "Eenheden",
"upload-file": "Bestand uploaden", "upload-file": "Bestand uploaden",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "", "error-printing-map": "",
"error-reading-file": "Błąd wczytywania pliku", "error-reading-file": "Błąd wczytywania pliku",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Szacowany czas", "est-duration": "Szacowany czas",
"explore": "Eksploruj", "explore": "Eksploruj",
"explore-some-trails": "Eksploruj różne ścieżki", "explore-some-trails": "Eksploruj różne ścieżki",
"export": "", "export": "",
"export-all-trails": "",
"features": "Funkcje", "features": "Funkcje",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Niemiecki", "german": "Niemiecki",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "", "grid": "",
"help": "",
"hero_section_0_text": "Eksploruj ekscytujące szlaki, zapisz swoje ulubione, doświadcz piękna naturalnego świata. Znajdź swoją następną przygodę!", "hero_section_0_text": "Eksploruj ekscytujące szlaki, zapisz swoje ulubione, doświadcz piękna naturalnego świata. Znajdź swoją następną przygodę!",
"hero_section_1_heading": "Wygląda na to że nie ma tutaj ścieżek.", "hero_section_1_heading": "Wygląda na to że nie ma tutaj ścieżek.",
"hero_section_1_text": "Oto kila ścieżek które możesz zobaczyć lub możesz przejść do pełnej listy.", "hero_section_1_text": "Oto kila ścieżek które możesz zobaczyć lub możesz przejść do pełnej listy.",
@@ -94,6 +96,7 @@
"icon": "Ikona", "icon": "Ikona",
"imperial": "Anglosaskie", "imperial": "Anglosaskie",
"import": "", "import": "",
"import-hint": "",
"include-description": "", "include-description": "",
"invalid-date": "Nieprawidłowa data", "invalid-date": "Nieprawidłowa data",
"invalid-username": "Błędna nazwa użytkownika", "invalid-username": "Błędna nazwa użytkownika",
@@ -114,6 +117,7 @@
"metric": "Metryczne", "metric": "Metryczne",
"moderate": "Średnia", "moderate": "Średnia",
"must-be-at-least-n-characters-long": "Długość musi wynosić przynajmniej {n} znaków", "must-be-at-least-n-characters-long": "Długość musi wynosić przynajmniej {n} znaków",
"my-account": "",
"n-days-ago": "", "n-days-ago": "",
"n-hours-ago": "", "n-hours-ago": "",
"n-minutes-ago": "", "n-minutes-ago": "",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Szlak} other {Szlaki}}", "trail": "{n, plural, =1 {Szlak} other {Szlaki}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "Ścieżki dla ciebie", "trails-for-you": "Ścieżki dla ciebie",
"units": "Jednostki", "units": "Jednostki",
"upload-file": "Przesyłanie pliku", "upload-file": "Przesyłanie pliku",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "", "error-printing-map": "",
"error-reading-file": "Erro ao ler o arquivo", "error-reading-file": "Erro ao ler o arquivo",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "Duração prevista", "est-duration": "Duração prevista",
"explore": "Explorar", "explore": "Explorar",
"explore-some-trails": "Explore algumas trilhas", "explore-some-trails": "Explore algumas trilhas",
"export": "", "export": "",
"export-all-trails": "",
"features": "Características", "features": "Características",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "Alemão", "german": "Alemão",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "", "grid": "",
"help": "",
"hero_section_0_text": "Explore trilhas emocionantes, salve seus favoritos e experimente a beleza da natureza. Encontre sua próxima aventura!", "hero_section_0_text": "Explore trilhas emocionantes, salve seus favoritos e experimente a beleza da natureza. Encontre sua próxima aventura!",
"hero_section_1_heading": "Parece que ainda não há trilhas aqui.", "hero_section_1_heading": "Parece que ainda não há trilhas aqui.",
"hero_section_1_text": "Aqui estão algumas trilhas que você pode gostar. Ou podes ir à lista completa agora.", "hero_section_1_text": "Aqui estão algumas trilhas que você pode gostar. Ou podes ir à lista completa agora.",
@@ -94,6 +96,7 @@
"icon": "Ícone", "icon": "Ícone",
"imperial": "Imperial", "imperial": "Imperial",
"import": "", "import": "",
"import-hint": "",
"include-description": "", "include-description": "",
"invalid-date": "Data inválida", "invalid-date": "Data inválida",
"invalid-username": "Nome de usuário inválido", "invalid-username": "Nome de usuário inválido",
@@ -114,6 +117,7 @@
"metric": "Métrica", "metric": "Métrica",
"moderate": "Moderado", "moderate": "Moderado",
"must-be-at-least-n-characters-long": "Deve ter pelo menos {n} caracteres", "must-be-at-least-n-characters-long": "Deve ter pelo menos {n} caracteres",
"my-account": "",
"n-days-ago": "", "n-days-ago": "",
"n-hours-ago": "", "n-hours-ago": "",
"n-minutes-ago": "", "n-minutes-ago": "",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {Percurso} other {Percursos}}", "trail": "{n, plural, =1 {Percurso} other {Percursos}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "Trilhos para si", "trails-for-you": "Trilhos para si",
"units": "Unidades", "units": "Unidades",
"upload-file": "Subir arquivo", "upload-file": "Subir arquivo",

View File

@@ -2,7 +2,6 @@
"Biking": "", "Biking": "",
"Canoeing": "", "Canoeing": "",
"Climbing": "", "Climbing": "",
"export-all-trails": "",
"Hiking": "", "Hiking": "",
"Skiing": "", "Skiing": "",
"Walking": "", "Walking": "",
@@ -72,11 +71,13 @@
"error-exporting-trail": "", "error-exporting-trail": "",
"error-printing-map": "", "error-printing-map": "",
"error-reading-file": "读取文件错误", "error-reading-file": "读取文件错误",
"error-saving-trail": "",
"error-updating-password": "", "error-updating-password": "",
"est-duration": "预计时长", "est-duration": "预计时长",
"explore": "探索", "explore": "探索",
"explore-some-trails": "探索行程", "explore-some-trails": "探索行程",
"export": "", "export": "",
"export-all-trails": "",
"features": "特性", "features": "特性",
"file-format": "", "file-format": "",
"focus-map-on": "", "focus-map-on": "",
@@ -84,6 +85,7 @@
"german": "德语", "german": "德语",
"get-position-from-exif": "", "get-position-from-exif": "",
"grid": "", "grid": "",
"help": "",
"hero_section_0_text": "探索激动人心的探险,收藏最爱行程,,体验美丽地大自然。找到你的下一次冒险!", "hero_section_0_text": "探索激动人心的探险,收藏最爱行程,,体验美丽地大自然。找到你的下一次冒险!",
"hero_section_1_heading": "这儿似乎还没有行程。", "hero_section_1_heading": "这儿似乎还没有行程。",
"hero_section_1_text": "以下有你可能喜欢的线路,或者立刻浏览全部列表。", "hero_section_1_text": "以下有你可能喜欢的线路,或者立刻浏览全部列表。",
@@ -94,6 +96,7 @@
"icon": "图标", "icon": "图标",
"imperial": "英制", "imperial": "英制",
"import": "", "import": "",
"import-hint": "",
"include-description": "", "include-description": "",
"invalid-date": "无效日期", "invalid-date": "无效日期",
"invalid-username": "无效用户名", "invalid-username": "无效用户名",
@@ -114,6 +117,7 @@
"metric": "公制", "metric": "公制",
"moderate": "中等", "moderate": "中等",
"must-be-at-least-n-characters-long": "长度至少 {n} 字符", "must-be-at-least-n-characters-long": "长度至少 {n} 字符",
"my-account": "",
"n-days-ago": "", "n-days-ago": "",
"n-hours-ago": "", "n-hours-ago": "",
"n-minutes-ago": "", "n-minutes-ago": "",
@@ -171,6 +175,7 @@
"tilesets": "", "tilesets": "",
"trail": "{n, plural, =1 {路线} other {路线}}", "trail": "{n, plural, =1 {路线} other {路线}}",
"trail-not-shared": "", "trail-not-shared": "",
"trail-saved-successfully": "",
"trails-for-you": "推荐路线", "trails-for-you": "推荐路线",
"units": "单位", "units": "单位",
"upload-file": "上传文件", "upload-file": "上传文件",

View File

@@ -79,18 +79,6 @@
})); }));
} }
async function handleSearchClick(item: SearchItem) {
citySearchQuery = item.text;
await settings_update({
id: settings?.id!,
location: {
name: item.value.name,
lat: item.value.lat,
lon: item.value.lon,
},
});
}
async function handleAvatarSelection() { async function handleAvatarSelection() {
const files = ( const files = (
document.getElementById("avatarInput") as HTMLInputElement document.getElementById("avatarInput") as HTMLInputElement
@@ -103,13 +91,6 @@
await users_update($currentUser!, files[0]); await users_update($currentUser!, files[0]);
} }
async function handleUnitSelection(e: RadioItem) {
await settings_update({
id: settings!.id,
unit: e.value as "imperial" | "metric",
});
}
async function handleLanguageSelection( async function handleLanguageSelection(
value: "en" | "de" | "fr" | "hu" | "nl" | "pl" | "pt", value: "en" | "de" | "fr" | "hu" | "nl" | "pl" | "pt",
) { ) {
@@ -120,13 +101,6 @@
}); });
} }
async function handleMapFocusSelection(value: "trails" | "location") {
await settings_update({
id: settings!.id,
mapFocus: value,
});
}
async function deleteAccount() { async function deleteAccount() {
await users_delete($currentUser!); await users_delete($currentUser!);
logout(); logout();
@@ -229,35 +203,6 @@
on:change={(e) => handleLanguageSelection(e.detail)} on:change={(e) => handleLanguageSelection(e.detail)}
></Select> ></Select>
</div> </div>
<!--<div>
<h5 class="font-medium mb-1">{$_("units")}</h5>
<RadioGroup
name="unit"
items={units}
selected={settings?.unit == "metric" ? 0 : 1}
on:change={(e) => handleUnitSelection(e.detail)}
></RadioGroup>
</div>
<div>
<h5 class="font-medium mb-1">Focus map on</h5>
<Select
items={mapFocus}
bind:value={selectedMapFocus}
on:change={(e) => handleMapFocusSelection(e.detail)}
></Select>
{#if selectedMapFocus == "location"}
<div class="mt-3">
<Search
items={searchDropdownItems}
placeholder="{$_('search-cities')}..."
bind:value={citySearchQuery}
on:update={(e) => searchCities(e.detail)}
on:click={(e) => handleSearchClick(e.detail)}
></Search>
</div>
{/if}
</div> -->
<hr class="border-input-border" /> <hr class="border-input-border" />
<div class="space-y-4"> <div class="space-y-4">
<h4 class="text-xl text-red-400">{$_("danger-zone")}</h4> <h4 class="text-xl text-red-400">{$_("danger-zone")}</h4>

View File

@@ -143,13 +143,13 @@
<div class="space-y-6"> <div class="space-y-6">
<h3 class="text-2xl font-semibold">{$_("import")}</h3> <h3 class="text-2xl font-semibold">{$_("import")}</h3>
<button <button
class="drop-area relative h-64 w-full border border-content border-dashed rounded-xl flex items-center justify-center text-gray-500 bg-background cursor-pointer hover:bg-menu-item-background-hover focus:bg-menu-item-background-focus transition-colors" class="drop-area relative h-64 w-full p-4 border border-content border-dashed rounded-xl flex items-center justify-center text-gray-500 bg-background cursor-pointer hover:bg-menu-item-background-hover focus:bg-menu-item-background-focus transition-colors"
style="--progress: {$uploadProgress}%" style="--progress: {$uploadProgress}%"
on:click={openFileBrowser} on:click={openFileBrowser}
on:dragover={handleDragOver} on:dragover={handleDragOver}
on:drop={handleDrop} on:drop={handleDrop}
> >
Select or drag GPX, FIT, KML or TCX files here... {$_('import-hint')}
</button> </button>
<input <input

View File

@@ -189,7 +189,7 @@
show_toast({ show_toast({
type: "success", type: "success",
icon: "check", icon: "check",
text: "Trail saved successfully.", text: $_('trail-saved-successfully'),
}); });
} catch (e) { } catch (e) {
console.error(e); console.error(e);
@@ -197,7 +197,7 @@
show_toast({ show_toast({
type: "error", type: "error",
icon: "close", icon: "close",
text: "Error saving trail.", text: $_('error-saving-trail'),
}); });
} finally { } finally {
loading = false; loading = false;
@@ -766,7 +766,7 @@
name="category" name="category"
label={$_("category")} label={$_("category")}
bind:value={$form.category} bind:value={$form.category}
items={$categories.map((c) => ({ text: c.name, value: c.id }))} items={$categories.map((c) => ({ text: $_(c.name), value: c.id }))}
></Select> ></Select>
<Toggle name="public" label={$_("public")} bind:value={$form.public} <Toggle name="public" label={$_("public")} bind:value={$form.public}
></Toggle> ></Toggle>