diff --git a/frontend/src/i18n/locales/ca_ES/common.json b/frontend/src/i18n/locales/ca_ES/common.json
new file mode 100644
index 000000000..797be2ac8
--- /dev/null
+++ b/frontend/src/i18n/locales/ca_ES/common.json
@@ -0,0 +1,55 @@
+{
+ "name": "Crab Fit",
+ "tagline": "Crea el teu",
+ "cta": "Crea el teu Crab Fit!",
+ "created": "Creat {{date}}",
+ "donate": {
+ "info": "Gràcies per utilitzar Crab Fit. Si t'és útil, considera fer una donació.",
+ "button": "Fer una donació",
+ "title": "Cada cèntim compta :)"
+ },
+ "options": {
+ "name": "Opcions",
+ "weekStart": {
+ "label": "La setmana comença el",
+ "options": {
+ "Sunday": "Diumenge",
+ "Monday": "Dilluns"
+ }
+ },
+ "timeFormat": {
+ "label": "Format horari",
+ "options": {
+ "12h": "12h",
+ "24h": "24h"
+ }
+ },
+ "theme": {
+ "label": "Tema",
+ "options": {
+ "System": "Automàtic",
+ "Light": "Clar",
+ "Dark": "Fosc"
+ }
+ },
+ "highlight": {
+ "label": "Ressaltar la disponibilitat més alta",
+ "title": "Fes que la disponibilitat més alta destaqui en el mapa de calor",
+ "options": {
+ "Off": "Apagat",
+ "On": "Encès"
+ }
+ },
+ "language": {
+ "label": "Idioma"
+ },
+ "colormap": {
+ "label": "Colors del mapa de calor",
+ "classic": "Crab Fit (clàssic)"
+ }
+ },
+ "video": {
+ "title": "Vídeo promocional de Crab Fit",
+ "button": "Veure el vídeo"
+ }
+}
diff --git a/frontend/src/i18n/locales/ca_ES/event.json b/frontend/src/i18n/locales/ca_ES/event.json
new file mode 100644
index 000000000..a093b29ff
--- /dev/null
+++ b/frontend/src/i18n/locales/ca_ES/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "disponibles",
+ "greyed_times": "Aquesta àrea està atenuada ja que no forma part dels horaris disponibles per a l'esdeveniment. És possible que estiguis accedint a aquest esdeveniment amb una zona horària diferent a la que es va usar en la creació d'aquest.",
+
+ "nav": {
+ "title": "Fes clic per copiar",
+ "copied": "Copiat!",
+ "shareinfo": "Copia l'enllaç d'aquesta pàgina, o comparteix-lo via <1>correu electrònic1>.",
+ "shareinfo_alt": "Clica l'enllaç per copiar-lo al porta-retalls, o comparteix-lo via <1>correu electrònic1>.",
+ "email_subject": "Programació de {{event_name}}",
+ "email_body": "Entra a aquest enllaç per a especificar la teva disponibilitat:"
+ },
+ "form": {
+ "signed_out": "Inicia sessió per a concretar la teva disponibilitat",
+ "signed_in": "Sessió iniciada com a {{name}}",
+
+ "name": "El teu nom",
+ "password": "Contrasenya (opcional)",
+ "button": "Iniciar sessió",
+ "logout_button": "Tancar sessió",
+ "info": "Aquestes credencials són úniques per a aquest esdeveniment. Utilitzeu una contrasenya si voleu evitar que altres modifiquin la vostra disponibilitat.",
+
+ "timezone": "La teva zona horària",
+
+ "errors": {
+ "name_required": "El teu nom és necessari per a enregistrar la teva disponibilitat.",
+ "password_incorrect": "La contrasenya és incorrecta. Comprova si el teu nom està escrit correctament.",
+ "unknown": "L'inici de sessió ha fallat. Si us plau, prova-ho de nou."
+ },
+
+ "created_in_timezone": "Aquest esdeveniment va ser creat amb la zona horària {{timezone}}. <3>Fes clic aquí3> per utilitzar-la.",
+ "local_timezone": "Hem detectat que la teva zona horària és {{timezone}}. <3>Fes clic aquí3> per utilitzar-la."
+ },
+ "offline": {
+ "title": "No tens connexió a la xarxa",
+ "body": "Crab Fit no funciona sense connexió a a xarxa.
Assegura't de que estàs connectat a internet i prova-ho de nou."
+ },
+ "error": {
+ "title": "Esdeveniment no trobat",
+ "body": "Comprova que la URL és correcte. Tingues en compte que amb tal de protegir la privadesa dels nostres usuaris, els esdeveniments s'esborren automàticament després de 3 mesos d'inactivitat."
+ },
+
+ "tabs": {
+ "you": "La teva disponibilitat",
+ "you_tooltip": "Inicia sessió per establir la teva disponibilitat",
+ "group": "Disponibilitat del grup"
+ },
+
+ "group": {
+ "legend_tooltip": "Fes clic per ressaltar la disponibilitat més elevada",
+ "info1": "Posa el cursor a sobre del calendari per veure qui té disponibilitat i fes clic per a copiar els detalls de l'hora en qüestió",
+ "info2": "Fes clic sobre els noms de sota per veure'n la seva disponibilitat",
+ "clipboard_message": "Gent amb disponibilitat el {{date}}"
+ },
+
+ "you": {
+ "info": "Fes clic i arrossega el cursor pel calendari per establir la teva disponibilitat",
+ "select_all": "Seleccionar-ho tot",
+ "select_none": "Desseleccionar-ho tot",
+ "select_invert": "Invertir selecció",
+
+ "google_cal": "Sincronitzar amb Google Calendar",
+ "outlook_cal": "Sincronitzar amb el calendari d'Outlook",
+ "recent_event": "Sincronitzar amb un esdeveniment recent",
+ "integration": {
+ "logout": "tancar sessió",
+ "close": "tanca",
+ "info": "El procés d'importació sobreescriurà la teva disponibilitat actual",
+ "button": "Importar disponibilitat"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/ca_ES/help.json b/frontend/src/i18n/locales/ca_ES/help.json
new file mode 100644
index 000000000..fdae1c4f1
--- /dev/null
+++ b/frontend/src/i18n/locales/ca_ES/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Com usar Crab Fit",
+
+ "p1": "Crab Fit és una eina que t'ajuda a planejar esdeveniments amb amics o companys. Només necessites crear un esdeveniment, especificar la teva disponibilitat, enviar-lo i podràs veure els horaris de tothom!",
+ "p2": "A continuació es descriu el procés de creació d'un Crab Fit.",
+
+ "s1": "Pas 1",
+
+ "p3": "Utilitza el formulari disponible a <1>crab.fit1> per crear un nou esdeveniment. Només és necessari especificar els horaris aproximats de l'esdeveniment, no la teva disponibilitat.",
+ "p4": "Utilitzarem la festa d'aniversari de la Jenny com a exemple. La Jenny vol organitzar un dinar per celebrar el seu aniversari, i vol fer-ho la mateixa setmana, la del 15 d'abril, però sap que no tots els seus amics hi poden assistir el 15. També ha decidit que no ho vol celebrar durant el cap de setmana.",
+ "p5": "La Jenny també sap que, donat que es un dinar, no pot començar abans de les 11AM o acabar després de les 5PM.",
+
+ "s2": "Pas 2",
+
+ "p6": "Concreta la teva disponibilitat per l'esdeveniment que acabes de crear.",
+ "p7": "En el nostre exemple, la Jenny especifica la seva disponibilitat pel dinar. Pot durant tota la setmana, exceptuant el dimarts i dimecres després de les 3PM i el divendres no pot abans de la 1PM.",
+
+ "s3": "Pas 3",
+
+ "p8": "Envia el enllaç a tots els assistents.",
+ "p9": "Un cop la Jenny ha enviat l'enllaç als seus amics i ha esperat a que omplissin les seves disponibilitats, les pot veure clarament al mapa de calor de sota i pot organitzar el seu esdeveniment durant la franja horària il·lustrada per l'àrea de color més fosc, quan hi pot assistir tothom.",
+ "p10": "En aquest exemple, tots els amics de la Jenny tenen disponible el divendres 16 de 1PM a 3PM."
+}
diff --git a/frontend/src/i18n/locales/ca_ES/home.json b/frontend/src/i18n/locales/ca_ES/home.json
new file mode 100644
index 000000000..da479edbc
--- /dev/null
+++ b/frontend/src/i18n/locales/ca_ES/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "CREA UN",
+ "recently_visited": "Accedits recentment",
+ "form": {
+ "name": {
+ "label": "Posa nom al teu esdeveniment!",
+ "sublabel": "O deixa'l en blanc per generar-ne un aleatori"
+ },
+ "dates": {
+ "label": "Quin rang de dies s'adequa a l'esdeveniment?",
+ "sublabel": "Fes clic i arrossega el cursor per seleccionar",
+ "options": {
+ "specific": "Dies específics",
+ "week": "Dies de la setmana"
+ },
+ "tooltips": {
+ "previous": "Mes anterior",
+ "next": "Mes següent",
+ "today": "avui"
+ },
+ "warnings": {
+ "date_in_past": "Alguns dels dies que has seleccionat ja han passat"
+ }
+ },
+ "times": {
+ "label": "Quines hores son apropiades per l'esdeveniment?",
+ "sublabel": "Fes clic i arrossega el cursor per seleccionar el rang de temps"
+ },
+ "timezone": {
+ "label": "Zona horària",
+ "defaultOption": "Selecciona..."
+ },
+
+ "button": "Crear",
+ "errors": {
+ "no_dates": "No hi ha cap dia seleccionat",
+ "same_times": "L'esdeveniment no pot començar i acabar a la mateixa hora",
+ "no_time": "No hi ha cap hora seleccionada",
+ "unknown": "Error intern. Si us plau, prova-ho més tard."
+ }
+ },
+
+ "about": {
+ "name": "Sobre Crab Fit",
+ "events": "Esdeveniments creats",
+ "availabilities": "Disponibilitats entrades",
+ "content": {
+ "p1": "Crab Fit t'ajuda a adaptar el teu esdeveniment als horaris dels participants. Només cal crear un esdeveniment a la part superior de la pàgina i enviar el enllaç als assistents. Podràs veure les disponibilitats actualitzar-se en viu en un mapa de calor. <1/><2>Descrobreix més sobre com usar Crab Fit2>.",
+ "p3": "Creat per <1>Ben Grant1>, Crab Fit és la solució moderna pels debats de coordinació d'horaris.",
+ "p4": "Crab Fit és de codi obert, si hi trobes cap problema o vols contribuir-hi, pots visitar el <1>repositori1>. Al utilitzar Crab Fit acceptes la <3>política de privadesa3>.",
+ "p6": "Amb tal de protegir la teva privadesa, els esdeveniments s'esborren després de 3 mesos d'inactivitat i totes les credencials s'encripten amb algorismes segurs de xifrat.",
+ "p5": "Considera fer una donació si Crab Fit t'ha estat útil, amb tal de poder mantenir el seu ús gratuït per tothom. 🦀"
+ },
+ "chrome_extension": "Adquireix l'extensió per a Chrome",
+ "firefox_extension": "Adquireix l'extensió per a Firefox",
+ "safari_extension": "Adquireix l'extensió per a Safari",
+ "android_app": "Adquireix l'aplicació per a dispositius Android"
+ }
+}
diff --git a/frontend/src/i18n/locales/ca_ES/privacy.json b/frontend/src/i18n/locales/ca_ES/privacy.json
new file mode 100644
index 000000000..eb34bedb9
--- /dev/null
+++ b/frontend/src/i18n/locales/ca_ES/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "Política de privadesa",
+ "translate": "Tradueix la pàgina al teu idioma"
+}
diff --git a/frontend/src/i18n/locales/cs/common.json b/frontend/src/i18n/locales/cs/common.json
new file mode 100644
index 000000000..8f35b9991
--- /dev/null
+++ b/frontend/src/i18n/locales/cs/common.json
@@ -0,0 +1,55 @@
+{
+ "name": "Crab Fit",
+ "tagline": "Vytvořit vlastní",
+ "cta": "Vytvořit vlastní Crab Fit!",
+ "created": "Vytvořeno {{date}}",
+ "donate": {
+ "info": "Děkujeme, že používáte službu Crab Fit. Pokud se vám líbí, zvažte možnost přispět.",
+ "button": "Darovat",
+ "title": "Jakákoli částka se počítá :)"
+ },
+ "options": {
+ "name": "Možnosti",
+ "weekStart": {
+ "label": "Týden začíná",
+ "options": {
+ "Sunday": "Neděle",
+ "Monday": "Pondělí"
+ }
+ },
+ "timeFormat": {
+ "label": "Formát času",
+ "options": {
+ "12h": "12h",
+ "24h": "24h"
+ }
+ },
+ "theme": {
+ "label": "Téma",
+ "options": {
+ "System": "Systém",
+ "Light": "Světlé",
+ "Dark": "Tmavé"
+ }
+ },
+ "highlight": {
+ "label": "Zvýraznit nejvyšší dostupnost",
+ "title": "Zvýraznit nejvyšší dostupnost na heatmapě",
+ "options": {
+ "Off": "Off",
+ "On": "On"
+ }
+ },
+ "language": {
+ "label": "Jazyk"
+ },
+ "colormap": {
+ "label": "Barva heatmapy",
+ "classic": "Crab Fit (klasický)"
+ }
+ },
+ "video": {
+ "title": "Crab Fit propagační video",
+ "button": "Shlédnout video"
+ }
+}
diff --git a/frontend/src/i18n/locales/cs/event.json b/frontend/src/i18n/locales/cs/event.json
new file mode 100644
index 000000000..6d624849a
--- /dev/null
+++ b/frontend/src/i18n/locales/cs/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "mám čas",
+ "greyed_times": "Tato oblast je šedá, protože není součástí události. Je možné, že se na tuto událost díváte v jiném časovém pásmu, než ve kterém byla vytvořena.",
+
+ "nav": {
+ "title": "Kliknutím zkopírujete",
+ "copied": "Zkopírováno!",
+ "shareinfo": "Zkopírujte odkaz na tuto stránku nebo jej sdílejte <1> e-mailem 1>.",
+ "shareinfo_alt": "Kliknutím na výše uvedený odkaz jej zkopírujte do schránky, nebo jej sdílejte prostřednictvím <1> e-mailu 1>.",
+ "email_subject": "Plánování {{event_name}}",
+ "email_body": "Na tomto odkazu zadejte své volné termíny:"
+ },
+ "form": {
+ "signed_out": "Přihlaste se pro vyplnění svých volných termínů",
+ "signed_in": "Jste přihlášeni jako {{name}}",
+
+ "name": "Vaše jméno",
+ "password": "Heslo (nepovinné)",
+ "button": "Přihlášení",
+ "logout_button": "Odhlásit se",
+ "info": "Tyto údaje se týkají pouze této akce. Použijte heslo, abyste zabránili ostatním ve změně vašich volných termínů.",
+
+ "timezone": "Vaše časové pásmo",
+
+ "errors": {
+ "name_required": "Vaše jméno je nutné k uložení vašich volných termínů.",
+ "password_incorrect": "Heslo je nesprávné. Zkontrolujte, zda je vaše jméno napsáno správně.",
+ "unknown": "Nepodařilo se přihlásit. Zkuste to prosím znovu."
+ },
+
+ "created_in_timezone": "Tato událost byla vytvořena v časovém pásmu {{timezone}} . Chcete-li ho použít, <3> klikněte sem 3>.",
+ "local_timezone": "Vaše místní časové pásmo je detekováno jako {{timezone}} . <3> Klikněte zde <4> pro jeho použití."
+ },
+ "offline": {
+ "title": "Jste offline",
+ "body": "Crab Fit nefunguje offline.
Ujistěte se, že jste připojeni k internetu, a zkuste to znovu."
+ },
+ "error": {
+ "title": "Událost nebyla nalezena",
+ "body": "Zkontrolujte, zda je zadaná adresa url správná. Vezměte na vědomí, že z důvodu ochrany vašeho soukromí jsou události po 3 měsících nečinnosti smazány."
+ },
+
+ "tabs": {
+ "you": "Vaše volné termíny",
+ "you_tooltip": "Přihlaste se pro zadání svých volných termínů",
+ "group": "Volné termíny skupiny"
+ },
+
+ "group": {
+ "legend_tooltip": "Kliknutím zvýrazníte nejčastější volný termín",
+ "info1": "Najetím na kalendář níže nebo klepnutím na něj zjistíte, kdo má čas, a kliknutím zkopírujete podrobnosti o časovém úseku.",
+ "info2": "Kliknutím na jména níže zobrazíte jednotlivé osoby",
+ "clipboard_message": "Lidé mají čas {{date}}"
+ },
+
+ "you": {
+ "info": "Kliknutím a přetažením kalendáře níže nastavíte své volné termíny",
+ "select_all": "Vybrat vše",
+ "select_none": "Nevybrat žádné",
+ "select_invert": "Invertovat výběr",
+
+ "google_cal": "Synchronizovat s Google kalendářem",
+ "outlook_cal": "Synchronizovat s Outlook kalendářem",
+ "recent_event": "Synchronizovat s nedávnou událostí",
+ "integration": {
+ "logout": "odhlásit se",
+ "close": "zavřít",
+ "info": "Importem se přepíší vaše aktuální volné termíny",
+ "button": "Importovat volné termíny"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/cs/help.json b/frontend/src/i18n/locales/cs/help.json
new file mode 100644
index 000000000..83c9bf32d
--- /dev/null
+++ b/frontend/src/i18n/locales/cs/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Jak používat Crab Fit",
+
+ "p1": "Crab Fit je nástroj, který vám pomůže při plánování akcí s přáteli nebo spolupracovníky. Stačí vytvořit událost, zadat své volné termíny, odeslat ji a zjistit, kdy mají všichni čas!",
+ "p2": "Níže naleznete podrobný postup, jak na vaši událost.",
+
+ "s1": "Krok 1",
+
+ "p3": "Použijte formulář na adrese <1> crab.fit 1> pro vytvoření nové události. Zde je třeba zadat pouze přibližný časový úsek, kdy se událost může konat, nikoliv vaše volné termíny.",
+ "p4": "Například \"Oslava narozenin Alex\". Alex chce, aby se její narozeninový oběd konal ve stejný týden, kdy má narozeniny, tedy 15. dubna, ale ví, že ne celé její kamarádstvo je 15. dubna k dispozici. Také ho nechce uskutečnit o víkendu.",
+ "p5": "Alex také ví, že vzhledem k tomu, že se jedná o polední akci, nemůže začít před 11. hodinou dopoledne ani skončit později než v 17 hodin.",
+
+ "s2": "Krok 2",
+
+ "p6": "Zadejte svou dostupnost pro právě vytvořenou událost.",
+ "p7": "V našem příkladu nyní Alex zadá svou dostupnost pro narozeninový oběd. Má volno po celý týden, kromě úterý a středy po 15:00 a v pátek před 13:00.",
+
+ "s3": "Krok 3",
+
+ "p8": "Pošlete odkaz všem, kteří chtějí přijít.",
+ "p9": "Poté, co Alex poslala odkaz svému kamarádstvu a počkala, až také vyplní své volné termíny, může je nyní všechny snadno vidět na níže uvedené mapě a vybrat si nejtmavší oblast pro čas, který vyhovuje všem!",
+ "p10": "V tomto příkladu platí pro všechny Alex přátele čas od 13:00 do 15:00 v pátek 16. září."
+}
diff --git a/frontend/src/i18n/locales/cs/home.json b/frontend/src/i18n/locales/cs/home.json
new file mode 100644
index 000000000..82726fc48
--- /dev/null
+++ b/frontend/src/i18n/locales/cs/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "VYTVOŘIT",
+ "recently_visited": "Nedávno navštívené",
+ "form": {
+ "name": {
+ "label": "Pojmenujte svou událost!",
+ "sublabel": "Nebo ponechte pole prázdné pro vygenerování"
+ },
+ "dates": {
+ "label": "Jaké termíny by mohly být vhodné?",
+ "sublabel": "Kliknutím a přetažením vyberte",
+ "options": {
+ "specific": "Konkrétní termíny",
+ "week": "Dny v týdnu"
+ },
+ "tooltips": {
+ "previous": "Předchozí měsíc",
+ "next": "Příští měsíc",
+ "today": "dnes"
+ },
+ "warnings": {
+ "date_in_past": "Některá z vámi vybraných termínů jsou v minulosti."
+ }
+ },
+ "times": {
+ "label": "Jaké časy by mohly být vhodné?",
+ "sublabel": "Kliknutím a přetažením vyberte časový rozsah"
+ },
+ "timezone": {
+ "label": "A časové pásmo",
+ "defaultOption": "Vyberte..."
+ },
+
+ "button": "Vytvořit",
+ "errors": {
+ "no_dates": "Nejsou vybrány žádné termíny",
+ "same_times": "Počáteční a koncový čas nesmí být stejný",
+ "no_time": "Není vybrán žádný čas",
+ "unknown": "Něco se pokazilo. Zkuste to prosím později."
+ }
+ },
+
+ "about": {
+ "name": "O službě Crab Fit",
+ "events": "Vytvořené události",
+ "availabilities": "Zadané volné termíny",
+ "content": {
+ "p1": "Crab Fit vám pomůže přizpůsobit akci časovým možnostem účastnictva. Jednoduše vytvořte událost výše a pošlete odkaz všem, kteří*které se jí účastní. Výsledky se budou živě aktualizovat a vy budete moci zobrazit mapu, kdy mají všichni čas. <1/> <2> Zjistěte více o tom, jak na Crab Fit 2>.",
+ "p3": "Vytvořil <1> Ben Grant 1>, Crab Fit je moderním řešením vašich debat o plánování skupinových akcí.",
+ "p4": "Crab Fit je open source, pokud najdete nějaké problémy nebo chcete přispět, můžete navštívit stránku <1> repozitář 1>. Používáním Crab Fit souhlasíte se <3> zásadami ochrany osobních údajů 3>.",
+ "p6": "Z důvodu ochrany vašeho soukromí jsou události po 3 měsících nečinnosti smazány a všechna hesla jsou bezpečně hešována.",
+ "p5": "Zvažte možnost přispět níže, pokud vám služba pomohla, aby Crab Fit mohl zůstat zdarma pro všechny. 🦀"
+ },
+ "chrome_extension": "Získejte rozšíření pro Chrome",
+ "firefox_extension": "Získejte rozšíření pro Firefox",
+ "safari_extension": "Získejte rozšíření pro Safari",
+ "android_app": "Stáhněte si aplikaci pro Android"
+ }
+}
diff --git a/frontend/src/i18n/locales/cs/privacy.json b/frontend/src/i18n/locales/cs/privacy.json
new file mode 100644
index 000000000..dc496c6a1
--- /dev/null
+++ b/frontend/src/i18n/locales/cs/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "Zásady ochrany osobních údajů",
+ "translate": "Zobrazit ve vašem jazyce"
+}
diff --git a/frontend/src/i18n/locales/da_DK/common.json b/frontend/src/i18n/locales/da_DK/common.json
new file mode 100644
index 000000000..7c7b84305
--- /dev/null
+++ b/frontend/src/i18n/locales/da_DK/common.json
@@ -0,0 +1,55 @@
+{
+ "name": "Crab Fit",
+ "tagline": "Opret din egen",
+ "cta": "Opret din egen Crab Fit!",
+ "created": "Oprettet {{date}}",
+ "donate": {
+ "info": "Tak for at bruge Crab Fit. Hvis du synes om det, så overvej at donere.",
+ "button": "Donér",
+ "title": "Alle beløb tæller :)"
+ },
+ "options": {
+ "name": "Valg",
+ "weekStart": {
+ "label": "Uge starter på",
+ "options": {
+ "Sunday": "Søndag",
+ "Monday": "Mandag"
+ }
+ },
+ "timeFormat": {
+ "label": "Tidsformat",
+ "options": {
+ "12h": "12-timer",
+ "24h": "24-timer"
+ }
+ },
+ "theme": {
+ "label": "Tema",
+ "options": {
+ "System": "System",
+ "Light": "Lys",
+ "Dark": "Mørk"
+ }
+ },
+ "highlight": {
+ "label": "Fremhæv højeste tilgængelighed",
+ "title": "Fremhæv den højeste tilgængelighed på farvediagrammet",
+ "options": {
+ "Off": "Inaktiv",
+ "On": "Aktiv"
+ }
+ },
+ "language": {
+ "label": "Sprog"
+ },
+ "colormap": {
+ "label": "Farvediagramfarver",
+ "classic": "Crab Fit (klassisk)"
+ }
+ },
+ "video": {
+ "title": "Crab Fit reklamevideo",
+ "button": "Se videoen"
+ }
+}
diff --git a/frontend/src/i18n/locales/da_DK/event.json b/frontend/src/i18n/locales/da_DK/event.json
new file mode 100644
index 000000000..31396933b
--- /dev/null
+++ b/frontend/src/i18n/locales/da_DK/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "tilgængelig",
+ "greyed_times": "Dette område er maskeret, fordi det ikke er en del af begivenheden. Måske ser du på denne begivenhed i en anden tidszone end hvor den blev oprettet.",
+
+ "nav": {
+ "title": "Klik for at kopiere",
+ "copied": "Kopieret!",
+ "shareinfo": "Kopier linket til denne side, eller del <1>e-mail1>.",
+ "shareinfo_alt": "Klik på linket ovenfor for at kopiere det til din udklipsholder eller del via <1>e-mail1>.",
+ "email_subject": "Planlægning af {{event_name}}",
+ "email_body": "Besøg dette link for at angive hvornår du er tilgængelig:"
+ },
+ "form": {
+ "signed_out": "Log ind for at tilføje din tilgængelighed",
+ "signed_in": "Logget ind som {{name}}",
+
+ "name": "Dit navn",
+ "password": "Adgangskode (valgfri)",
+ "button": "Log ind",
+ "logout_button": "Log ud",
+ "info": "Disse detaljer er kun til denne begivenhed. Brug et kodeord for at forhindre andre i at ændre din tilgængelighed.",
+
+ "timezone": "Din tidszone",
+
+ "errors": {
+ "name_required": "Dit navn er nødvendigt for at gemme din tilgængelighed.",
+ "password_incorrect": "Adgangskoden er forkert. Tjek at dit navn er stavet korrekt.",
+ "unknown": "Fejl ved login. Prøv venligst igen."
+ },
+
+ "created_in_timezone": "Denne begivenhad blev oprettet i tidsxonen {{timezone}}. <3>Klik her3> for at bruge den.",
+ "local_timezone": "Din lokale tidszone er registreret som {{timezone}}. <3>Klik her3> for at bruge den."
+ },
+ "offline": {
+ "title": "Du er offline",
+ "body": "En Crab Fit fungerer ikke offline.
Sørg for, at du er forbundet til internettet, og prøv igen."
+ },
+ "error": {
+ "title": "Begivenhed ikke fundet",
+ "body": "Kontroller, at den indtastede URL er korrekt. Bemærk, at begivenheder slettes efter 3 måneders inaktivitet for at beskytte dit privatliv."
+ },
+
+ "tabs": {
+ "you": "Din tilgængelighed",
+ "you_tooltip": "Log ind for at angive din tilgængelighed",
+ "group": "Gruppens tilgængelighed"
+ },
+
+ "group": {
+ "legend_tooltip": "Klik for at fremhæve højeste tilgængelighed",
+ "info1": "Svæv over eller tryk på kalenderen nedenfor for at se, hvem der er tilgængelig, og klik for at kopiere detaljer om et tidsinterval.",
+ "info2": "Klik på navnene nedenfor for at se personerne individuelt.",
+ "clipboard_message": "Mennesker tilgængelige den {{date}}"
+ },
+
+ "you": {
+ "info": "Klik og træk kalenderen nedenfor for at angive dine tilgængeligheder",
+ "select_all": "Vælg alle",
+ "select_none": "Vælg ingen",
+ "select_invert": "Vælg det modsatte",
+
+ "google_cal": "Synkronisér med Google-kalender",
+ "outlook_cal": "Synkronisér med Outlook-kalender",
+ "recent_event": "Synkronisér med en nylig begivenhed",
+ "integration": {
+ "logout": "log ud",
+ "close": "luk",
+ "info": "Importering vil overskrive din nuværende tilgængelighed",
+ "button": "Importér tilgængelighed"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/da_DK/help.json b/frontend/src/i18n/locales/da_DK/help.json
new file mode 100644
index 000000000..7186e7de3
--- /dev/null
+++ b/frontend/src/i18n/locales/da_DK/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Hvordan du bruger Crab Fit",
+
+ "p1": "Crab Fit er et værktøj til at hjælpe dig, når du planlægger arrangementer med venner eller kolleger. Du opretter bare et arrangement, angiver din tilgængelighed, sender det ud og ser, hvornår alle er ledige!",
+ "p2": "Se nedenfor for detaljerede trin til, hvordan du tilpasser din begivenhed til Crab Fit.",
+
+ "s1": "Trin 1",
+
+ "p3": "Brug formularen på <1>crab.fit1> til at oprette en ny begivenhed. Du skal kun angive det omtrentlige tidsrum for, hvornår din begivenhed finder sted her, ikke din tilgængelighed.",
+ "p4": "Som eksempel vil vi bruge \"Jennys fødselsdagsfrokost\". Jenny ønsker, at hendes fødselsdagsfrokost skal ske i den samme uge som hendes fødselsdag, den 15. april, men hun ved, at ikke alle hendes venner er tilgængelige den 15. Hun ønsker heller ikke at gøre det i weekenden.",
+ "p5": "Jenny ved også, at da det er en frokostbegivenhed, kan den ikke starte før kl. 11 eller fortsætte efter kl. 17.",
+
+ "s2": "Trin 2",
+
+ "p6": "Indtast din tilgængelighed for den begivenhed, du lige har oprettet.",
+ "p7": "I vores eksempel sætter Jenny nu sin tilgængelighed for sin fødselsdagsfrokost. Hun er ledig hele ugen, undtagen efter kl. 15 tirsdag og onsdag, og før kl. 13 fredag.",
+
+ "s3": "Trin 3",
+
+ "p8": "Send linket til alle, du vil have til at komme.",
+ "p9": "Efter Jenny har sendt linket til sine venner og ventet på, at de også har udfyldt deres tilgængelighed, kan hun nu nemt se dem alle på farvediagrammet nedenfor og vælge det mørkeste område til et tidspunkt, der passer alle!",
+ "p10": "I dette eksempel fungerer 13:00 til 15:00 fredag d. 16. for alle Jennys venner."
+}
diff --git a/frontend/src/i18n/locales/da_DK/home.json b/frontend/src/i18n/locales/da_DK/home.json
new file mode 100644
index 000000000..9c14d9e2b
--- /dev/null
+++ b/frontend/src/i18n/locales/da_DK/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "CREATE A",
+ "recently_visited": "Nyligt besøgt",
+ "form": {
+ "name": {
+ "label": "Giv din begivenhed et navn!",
+ "sublabel": "Eller lad være blank for at danne et"
+ },
+ "dates": {
+ "label": "Hvilke datoer kunne fungere?",
+ "sublabel": "Klik og træk for at vælge",
+ "options": {
+ "specific": "Specifikke datoer",
+ "week": "Ugedage"
+ },
+ "tooltips": {
+ "previous": "Forrige måned",
+ "next": "Næste måned",
+ "today": "i dag"
+ },
+ "warnings": {
+ "date_in_past": "Nogle af de datoer, du har valgt, er i fortiden."
+ }
+ },
+ "times": {
+ "label": "Hvilke tidspunkter kunne fungere?",
+ "sublabel": "Klik og træk for at vælge et tidsinterval"
+ },
+ "timezone": {
+ "label": "Og tidszonen",
+ "defaultOption": "Vælg..."
+ },
+
+ "button": "Opret",
+ "errors": {
+ "no_dates": "Der er ikke valgt nogen datoer",
+ "same_times": "Start- og sluttidspunkterne kan ikke være ens",
+ "no_time": "Der er ikke valgt nogen tid.",
+ "unknown": "Noget gik galt. Prøv venligst igen senere."
+ }
+ },
+
+ "about": {
+ "name": "Om Crab Fit",
+ "events": "Begivenheder oprettet",
+ "availabilities": "Tilgængeligheder angivet",
+ "content": {
+ "p1": "Crab Fit hjælper dig med at tilpasse dit arrangement til alles tidsplaner. Opret blot et arrangement ovenfor og send linket til alle, der deltager. Resultaterne opdateres live, og du vil kunne se et farvediagram over, hvornår alle er ledige.<1/><2>Lær mere om, hvordan du bruger Crab Fit.2>.",
+ "p3": "Crab Fit er udviklet af <1>Ben Grant1>, og er den moderne løsning på dine gruppebegivenhedsplanlægningsdisussioner.",
+ "p4": "Koden til Crab Fit er åben kildekode. Hvis du finder fejl eller ønsker at bidrage, kan du gå til <1>kildekodearkivet1>. Ved at bruge Crab Fit accepterer du <3>privatlivspolitikken3>.",
+ "p6": "For at beskytte dit privatliv slettes begivenheder efter 3 måneders inaktivitet, og alle adgangskoder er sikkert hashet.",
+ "p5": "Overvej at donere nedenfor, hvis det har hjulpet dig, så Crab Fit kan forblive gratis for alle. 🦀"
+ },
+ "chrome_extension": "Hent Chrome-udvidelsen",
+ "firefox_extension": "Hent Firefox-udvidelsen",
+ "safari_extension": "Hent Safari-udvidelsen",
+ "android_app": "Download Android-appen"
+ }
+}
diff --git a/frontend/src/i18n/locales/da_DK/privacy.json b/frontend/src/i18n/locales/da_DK/privacy.json
new file mode 100644
index 000000000..2c26ddead
--- /dev/null
+++ b/frontend/src/i18n/locales/da_DK/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "Privatlivspolitik",
+ "translate": "Se på dit sprog"
+}
diff --git a/frontend/src/i18n/locales/de/event.json b/frontend/src/i18n/locales/de/event.json
index fa2a5860c..9edf0af23 100644
--- a/frontend/src/i18n/locales/de/event.json
+++ b/frontend/src/i18n/locales/de/event.json
@@ -48,19 +48,23 @@
"group": {
"legend_tooltip": "Klicke hier, um die grösste Verfügbarkeit hervorzuheben",
- "info1": "Bewege den Mauszeiger oder tippe auf den Kalender unten, um zu sehen, wer verfügbar ist",
- "info2": "Klicke auf die Namen unten, um einzelne Personen anzuzeigen"
+ "info1": "Bewege den Mauszeiger auf den Kalender unten oder tippe darauf, um zu sehen, wer verfügbar ist, und klicke, um Details über ein Zeitfenster zu kopieren",
+ "info2": "Klicke auf die Namen unten, um einzelne Personen anzuzeigen",
+ "clipboard_message": "Personen verfügbar am {{date}}"
},
"you": {
"info": "Klicke und ziehe im Kalender unten, um deine Verfügbarkeit festzulegen",
"select_all": "Alle wählen",
"select_none": "Keine wählen",
+ "select_invert": "Auswahl umkehren",
"google_cal": "Mit Google Kalender synchronisieren",
"outlook_cal": "Mit Outlook Kalender synchronisieren",
+ "recent_event": "Mit einem kürzlichen Ereignis synchronisieren",
"integration": {
"logout": "ausloggen",
+ "close": "Schließen",
"info": "Durch den Import wird deine aktuelle Verfügbarkeit überschrieben",
"button": "Verfügbarkeit importieren"
}
diff --git a/frontend/src/i18n/locales/de/home.json b/frontend/src/i18n/locales/de/home.json
index d48acf9e2..4e4896e01 100644
--- a/frontend/src/i18n/locales/de/home.json
+++ b/frontend/src/i18n/locales/de/home.json
@@ -17,6 +17,9 @@
"previous": "Vorheriger Monat",
"next": "Nächster Monat",
"today": "heute"
+ },
+ "warnings": {
+ "date_in_past": "Manche der ausgewählten Daten liegen in der Vergangenheit"
}
},
"times": {
diff --git a/frontend/src/i18n/locales/eo/common.json b/frontend/src/i18n/locales/eo/common.json
new file mode 100644
index 000000000..89a5645fb
--- /dev/null
+++ b/frontend/src/i18n/locales/eo/common.json
@@ -0,0 +1,55 @@
+{
+ "name": "Crab Fit",
+ "tagline": "Kreu vian propran",
+ "cta": "Kreu vian propran Crab Fit!",
+ "created": "Kreita je {{date}}",
+ "donate": {
+ "info": "Dankon pro uzi Crab Fit. Se vi ŝatas ĝin, konsideru donaci.",
+ "button": "Donaci",
+ "title": "Ĉiu kvanto valoras :)"
+ },
+ "options": {
+ "name": "Agordoj",
+ "weekStart": {
+ "label": "Semajno komenciĝas",
+ "options": {
+ "Sunday": "Dimanĉe",
+ "Monday": "Lunde"
+ }
+ },
+ "timeFormat": {
+ "label": "Tempoformato",
+ "options": {
+ "12h": "12h",
+ "24h": "24h"
+ }
+ },
+ "theme": {
+ "label": "Etoso",
+ "options": {
+ "System": "Sistema",
+ "Light": "Hela",
+ "Dark": "Malhela"
+ }
+ },
+ "highlight": {
+ "label": "Emfazu plej altan disponeblon",
+ "title": "Elstarigu la plej altan disponeblon sur la varmomapo",
+ "options": {
+ "Off": "Ne",
+ "On": "Jes"
+ }
+ },
+ "language": {
+ "label": "Lingvo"
+ },
+ "colormap": {
+ "label": "Koloroj de varmomapo",
+ "classic": "Crab Fit (klasika)"
+ }
+ },
+ "video": {
+ "title": "Crab Fit Reklama Filmeto",
+ "button": "Spektu la filmeton"
+ }
+}
diff --git a/frontend/src/i18n/locales/eo/event.json b/frontend/src/i18n/locales/eo/event.json
new file mode 100644
index 000000000..ae466c455
--- /dev/null
+++ b/frontend/src/i18n/locales/eo/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "disponebla",
+ "greyed_times": "Ĉi tiu areo estas grizigita ĉar ĝi ne estas parto de la evento. Vi eble rigardas ĉi tiun eventon en malsama horzono de kie ĝi estis kreita.",
+
+ "nav": {
+ "title": "Klaku por kopii",
+ "copied": "Kopiita!",
+ "shareinfo": "Kopiu la ligon de ĉi tiu paĝo, aŭ kundividu <1>retpoŝte1>.",
+ "shareinfo_alt": "Alklaku la supran ligilon por kopii ĝin al via tondujo aŭ dividi <1> retpoŝte <2>.",
+ "email_subject": "Planado {{event_name}}",
+ "email_body": "Vizitu ĉi tiun ligon por enigi viajn disponeblecoj:"
+ },
+ "form": {
+ "signed_out": "Ensalutu por aldoni vian disponeblo",
+ "signed_in": "Ensalutita kiel {{name}}",
+
+ "name": "Via nomo",
+ "password": "Pasvorto (laŭvole)",
+ "button": "Ensaluti",
+ "logout_button": "Elsaluti",
+ "info": "Ĉi tiuj detaloj estas nur por ĉi tiu evento. Uzu pasvorton por malhelpi aliajn ŝanĝi vian disponeblo.",
+
+ "timezone": "Via horzono",
+
+ "errors": {
+ "name_required": "Via nomo estas necesa por konservi vian disponeblo.",
+ "password_incorrect": "Pasvorto estas malĝusta. Kontrolu, ke via nomo estas literumita ĝuste.",
+ "unknown": "Malsukcesis ensaluti. Bonvolu reprovi."
+ },
+
+ "created_in_timezone": "Ĉi tiu evento estis kreita en la horzono {{timezone}} . <3>Klaku ĉi tie3> por uzi ĝin.",
+ "local_timezone": "Via loka horzono estas detektita kiel {{ timezone }}. <3>Klaku ĉi tie3>por uzi ĝin."
+ },
+ "offline": {
+ "title": "Vi estas eksterrete",
+ "body": "Crab Fit ne funkcias eksterrete.
Certigu, ke vi estas konektita al la interreto kaj provu denove."
+ },
+ "error": {
+ "title": "Evento ne trovita",
+ "body": "Kontrolu, ke la url, kiun vi enigis, estas ĝusta. Notu, ke por protekti vian privatecon, eventoj estas forigitaj post 3 monatoj da neaktiveco."
+ },
+
+ "tabs": {
+ "you": "Via disponebla",
+ "you_tooltip": "Ensalutu por agordi vian disponebla",
+ "group": "Grupo disponebla"
+ },
+
+ "group": {
+ "legend_tooltip": "Klaku por reliefigi plej altan disponebla",
+ "info1": "Ŝvebu aŭ frapetu la kalendaron sube por vidi kiu disponeblas, kaj alklaku por kopii detalojn pri temponiĉo",
+ "info2": "Alklaku la nomojn sube por vidi homojn individue",
+ "clipboard_message": "Homoj disponeblaj je {{ dato }}"
+ },
+
+ "you": {
+ "info": "Alklaku kaj trenu la kalendaron sube por agordi viajn disponeblaj",
+ "select_all": "Elekti ĉion",
+ "select_none": "Elektu nenion",
+ "select_invert": "Inverti elekton",
+
+ "google_cal": "Sinkronigi kun Google Calendar",
+ "outlook_cal": "Sinkronigi kun Outlook Calendar",
+ "recent_event": "Sinkronigi kun lastatempa evento",
+ "integration": {
+ "logout": "elsaluti",
+ "close": "fermi",
+ "info": "Importado anstataŭigos vian nunan disponebla",
+ "button": "Importado disponebla"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/eo/help.json b/frontend/src/i18n/locales/eo/help.json
new file mode 100644
index 000000000..b88f16636
--- /dev/null
+++ b/frontend/src/i18n/locales/eo/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Kiel Crab Fit",
+
+ "p1": "Crab Fit estas ilo, kiu helpas vin kiam vi planas eventojn kun amikoj aŭ kunlaborantoj. Vi nur kreas eventon, enigu vian disponeblan, sendu ĝin kaj vidu kiam ĉiuj estas liberaj!",
+ "p2": "Vidu sube por detalaj paŝoj pri kiel Crab Fit vian eventon.",
+
+ "s1": "Paŝo 1",
+
+ "p3": "Uzu la formularon ĉe <1>crab.fit1> por fari novan eventon. Vi nur bezonas enmeti la malglatan periodon por kiam via evento okazas ĉi tie, ne vian disponeblon.",
+ "p4": "Ekzemple, ni uzos \"Naskiĝtagmanĝo de Jenny\". Jenny volas ke ŝia naskiĝtaga tagmanĝo okazu en la sama semajno kiel ŝia naskiĝtago, la 15-a de aprilo, sed ŝi scias ke ne ĉiuj ŝiaj amikoj estas disponeblaj la 15-an. Ŝi ankaŭ ne volas fari ĝin dum la semajnfino.",
+ "p5": "Jenny ankaŭ scias, ke ĉar ĝi estas tagmanĝa evento, ĝi ne povas komenci antaŭ la 11-a aŭ iri poste ol la 5-a.",
+
+ "s2": "Paŝo 2",
+
+ "p6": "Enigu vian disponeblon por la evento kiun vi ĵus kreis.",
+ "p7": "En nia ekzemplo, Jenny nun metas sian disponeblon por sia naskiĝtaga tagmanĝo. Ŝi estas libera la tutan semajnon, krom post la 15a horo marde kaj merkredo, kaj antaŭ la 13a horo vendrede.",
+
+ "s3": "Paŝo 3",
+
+ "p8": "Sendu la ligilon al ĉiuj, kiujn vi volas veni.",
+ "p9": "Post kiam Jenny sendis la ligon al siaj amikoj kaj atendis, ke ili ankaŭ plenigu iliajn disponojn, ŝi nun povas facile vidi ilin ĉiujn sur la varmomapo sube kaj elekti la plej malhelan areon por tempo, kiu konvenas al ĉiuj!",
+ "p10": "En ĉi tiu ekzemplo, 13-a ĝis 15-a vendrede la 16-a funkcias por ĉiuj amikoj de Jenny."
+}
diff --git a/frontend/src/i18n/locales/eo/home.json b/frontend/src/i18n/locales/eo/home.json
new file mode 100644
index 000000000..e78c79cc6
--- /dev/null
+++ b/frontend/src/i18n/locales/eo/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "KREU",
+ "recently_visited": "Lastatempe vizitita",
+ "form": {
+ "name": {
+ "label": "Donu nomon al via evento!",
+ "sublabel": "Aŭ lasu malplenan por generi unu"
+ },
+ "dates": {
+ "label": "Kiuj datoj povus funkcii?",
+ "sublabel": "Klaku kaj trenu por elekti",
+ "options": {
+ "specific": "Specifaj datoj",
+ "week": "Tagoj de la semajno"
+ },
+ "tooltips": {
+ "previous": "Antaŭa monato",
+ "next": "Venontmonate",
+ "today": "Hodiaŭ"
+ },
+ "warnings": {
+ "date_in_past": "Kelkaj el la datoj, kiujn vi elektis, estas en la pasinteco"
+ }
+ },
+ "times": {
+ "label": "Kiuj tempoj povus funkcii?",
+ "sublabel": "Klaku kaj trenu por elekti tempon"
+ },
+ "timezone": {
+ "label": "Kaj la horzono",
+ "defaultOption": "Elektu..."
+ },
+
+ "button": "Krei",
+ "errors": {
+ "no_dates": "Ne estas elektitaj datoj",
+ "same_times": "La komenco kaj fintempo ne povas esti la sama",
+ "no_time": "Neniu tempo estas elektita",
+ "unknown": "Io misfunkciis. Bonvolu reprovi poste."
+ }
+ },
+
+ "about": {
+ "name": "Pri Crab Fit",
+ "events": "Eventoj kreitaj",
+ "availabilities": "Disponebloj eniris",
+ "content": {
+ "p1": "Crab Fit helpas vin adapti vian eventon al ĉies horaroj. Simple kreu eventon supre kaj sendu la ligon al ĉiuj partoprenantoj. Rezultoj ĝisdatigas vive kaj vi povos vidi varmmapon pri kiam ĉiuj estas liberaj. <1/><2>Lernu pli pri kiel Crab Fit2>.",
+ "p3": "Kreita de <1>Ben Grant1>, Crab Fit estas la nuntempa solvo por viaj grupaj eventoplanaj debatoj.",
+ "p4": "La kodo por Crab Fit estas malfermfonta, se vi trovas problemojn aŭ volas kontribui, vi povas viziti la <1>deponejon1>. Uzante Crab Fit vi konsentas pri la <3>privateca politiko3>.",
+ "p6": "Por protekti vian privatecon, eventoj estas forigitaj post 3 monatoj da neaktiveco, kaj ĉiuj pasvortoj estas sekure hakitaj.",
+ "p5": "Konsideru donaci sube, se ĝi helpis vin, por ke Crab Fit povu resti senpaga por ĉiuj. 🦀"
+ },
+ "chrome_extension": "Akiru la Kroman Etendon",
+ "firefox_extension": "Akiru la Etendon de Firefox",
+ "safari_extension": "Akiru la Safari-Etendaĵon",
+ "android_app": "Elŝutu la Android-apon"
+ }
+}
diff --git a/frontend/src/i18n/locales/eo/privacy.json b/frontend/src/i18n/locales/eo/privacy.json
new file mode 100644
index 000000000..4215e29da
--- /dev/null
+++ b/frontend/src/i18n/locales/eo/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "Privateca Politiko",
+ "translate": "Vidu en via lingvo"
+}
diff --git a/frontend/src/i18n/locales/es/common.json b/frontend/src/i18n/locales/es/common.json
index a471d7b5a..e602f34f3 100644
--- a/frontend/src/i18n/locales/es/common.json
+++ b/frontend/src/i18n/locales/es/common.json
@@ -1,6 +1,6 @@
{
"name": "Crab Fit",
- "tagline": "Crea tu propio",
+ "tagline": "¡Crea tu propio Crab Fit!",
"cta": "¡Crea tu propio Crab Fit!",
"created": "Creado {{date}}",
"donate": {
@@ -13,8 +13,8 @@
"weekStart": {
"label": "La semana empieza el",
"options": {
- "Sunday": "domingo",
- "Monday": "lunes"
+ "Sunday": "Domingo",
+ "Monday": "Lunes"
}
},
"timeFormat": {
@@ -33,8 +33,8 @@
}
},
"highlight": {
- "label": "Resalte la mayor disponibilidad",
- "title": "Destaque la mayor disponibilidad en el mapa de calor",
+ "label": "Resaltar la mayor disponibilidad",
+ "title": "Destaca la mayor disponibilidad en el mapa de calor",
"options": {
"Off": "Apagado",
"On": "Encendido"
@@ -49,7 +49,7 @@
}
},
"video": {
- "title": "Vídeo Promocional de Crab Fit",
+ "title": "Vídeo promocional de Crab Fit",
"button": "Ver el vídeo"
}
}
diff --git a/frontend/src/i18n/locales/es/event.json b/frontend/src/i18n/locales/es/event.json
index 038576bef..c74079d30 100644
--- a/frontend/src/i18n/locales/es/event.json
+++ b/frontend/src/i18n/locales/es/event.json
@@ -1,62 +1,62 @@
{
- "available": "disponible",
- "greyed_times": "Esta área está atenuada porque no es parte del evento. Es posible que esté viendo este evento en una zona horaria diferente de donde se creó.",
+ "available": "disponibles",
+ "greyed_times": "Esta área está atenuada porque no forma parte del evento. Es posible que este se haya creado en una zona horaria distinta a la que has seleccionado.",
"nav": {
- "title": "Haga clic para copiar",
+ "title": "Haz clic para copiar",
"copied": "¡Copiado!",
- "shareinfo": "Copie el enlace a esta página o compártalo por <1>correo electrónico1>.",
- "shareinfo_alt": "Haga clic en el enlace de arriba para copiarlo en su portapapeles o compartirlo por <1>correo electrónico1>.",
+ "shareinfo": "Copia el enlace a esta página o compártelo por <1>correo electrónico1>.",
+ "shareinfo_alt": "Haz clic en el enlace de arriba para copiarlo en tu portapapeles o compártelo por <1>correo electrónico1>.",
"email_subject": "Programación de {{event_name}}",
- "email_body": "Visite este enlace para ingresar sus disponibilidades:"
+ "email_body": "Abre este enlace para ingresar tu disponibilidad:"
},
"form": {
- "signed_out": "Inicia sesión para añadir su disponibilidad",
+ "signed_out": "Inicia sesión para añadir tu disponibilidad",
"signed_in": "Has iniciado sesión como {{name}}",
"name": "Tu nombre",
"password": "Contraseña (opcional)",
"button": "Iniciar sesión",
- "logout_button": "Desconectar",
- "info": "Estos detalles son solo para este evento. Utilice una contraseña para evitar que otros cambien su disponibilidad.",
+ "logout_button": "Cerrar sesión",
+ "info": "Estos detalles son solo para este evento. Utiliza una contraseña para evitar que otros cambien tu disponibilidad.",
"timezone": "Tu zona horaria",
"errors": {
- "name_required": "Su nombre es necesario para almacenar su disponibilidad.",
- "password_incorrect": "La contraseña es incorrecta. Compruebe que su nombre esté bien escrito.",
+ "name_required": "Tu nombre es necesario para almacenar tu disponibilidad.",
+ "password_incorrect": "La contraseña es incorrecta. Comprueba que tu nombre esté bien escrito.",
"unknown": "Error al iniciar sesión. Inténtalo de nuevo."
},
- "created_in_timezone": "Este evento se creó en la zona horaria {{timezone}}. <3>Haga clic aquí3> para usarlo.",
- "local_timezone": "Se detecta que su zona horaria local es {{timezone}}. <3>Haga clic aquí3> para usarlo."
+ "created_in_timezone": "Este evento se creó en la zona horaria {{timezone}}. <3>Haz clic aquí3> para usarla.",
+ "local_timezone": "Se ha detectado que tu zona horaria local es {{timezone}}. <3>Haz clic aquí3> para usarla."
},
"offline": {
- "title": "Estas desconectado",
+ "title": "Estás desconectado",
"body": "Un Crab Fit no funciona sin conexión.
Asegúrate de estar conectado a Internet y vuelve a intentarlo."
},
"error": {
"title": "Evento no encontrado",
- "body": "Verifique que la URL que ingresó sea correcta. Tenga en cuenta que para proteger su privacidad, los eventos se eliminan después de 3 meses de inactividad."
+ "body": "Verifica que la URL que a la has ingresado sea correcta. Ten en cuenta que para proteger la privacidad de nuestros usuarios, los eventos se eliminan después de 3 meses de inactividad."
},
"tabs": {
"you": "Tu disponibilidad",
- "you_tooltip": "Inicie sesión para establecer su disponibilidad",
+ "you_tooltip": "Inicia sesión para establecer tu disponibilidad",
"group": "Disponibilidad del grupo"
},
"group": {
- "legend_tooltip": "Haga clic para resaltar la disponibilidad más alta",
+ "legend_tooltip": "Haz clic para resaltar la disponibilidad más elevada",
"info1": "Pon el ratón encima para ver quien está disponible, y haz clic para copiar los datos de disponibilidad",
- "info2": "Haga clic en los nombres a continuación para ver a las personas individualmente",
+ "info2": "Haz clic en los nombres a continuación para ver la disponibilidad de estos",
"clipboard_message": "Personas disponibles el {{date}}"
},
"you": {
- "info": "Haga clic y arrastre el calendario a continuación para configurar sus disponibilidades",
+ "info": "Haz clic y arrastra el calendario a continuación para configurar tu disponibilidad",
"select_all": "Seleccionar todo",
- "select_none": "Seleccionar ninguno",
+ "select_none": "Deseleccionar todo",
"select_invert": "Invertir selección",
"google_cal": "Sincronizar con Google Calendar",
@@ -65,8 +65,8 @@
"integration": {
"logout": "cerrar sesión",
"close": "cerrar",
- "info": "La importación sobrescribirá su disponibilidad actual",
- "button": "Disponibilidad de importación"
+ "info": "El proceso de importación sobrescribirá tu disponibilidad actual",
+ "button": "Importar disponibilidad"
}
}
}
diff --git a/frontend/src/i18n/locales/es/help.json b/frontend/src/i18n/locales/es/help.json
index 1bcd2645b..ac1fda11b 100644
--- a/frontend/src/i18n/locales/es/help.json
+++ b/frontend/src/i18n/locales/es/help.json
@@ -1,23 +1,23 @@
{
- "name": "Como usar Crab Fit",
+ "name": "Cómo usar Crab Fit",
- "p1": "Crab Fit is a tool that helps you when planning events with friends or coworkers. You just create an event, enter your availability, send it out, and see when everyone is free!",
- "p2": "See below for detailed steps of how to Crab Fit your event.",
+ "p1": "Crab Fit es una herramienta que te ayuda a planear eventos con amigos o compañeros. Simplemente crea un evento, elije cuando estás disponible, envíalo y comprueba la disponibilidad de los otros.",
+ "p2": "A continuación se detalla el proceso de creación de un Crab Fit.",
"s1": "Paso 1",
- "p3": "Use the form at <1>crab.fit1> to make a new event. You only need to put in the rough time period for when your event occurs here, not your availability.",
- "p4": "For example, we'll use \"Jenny's Birthday Lunch\". Jenny wants her birthday lunch to happen on the same week as her birthday, the 15th of April, but she knows that not all of her friends are available on the 15th. She also doesn't want to do it on the weekend.",
- "p5": "Jenny also knows that since it's a lunch event, it can't start before 11am or go any later than 5pm.",
+ "p3": "Usa el formulario de <1>crab.fit1> para crear un nuevo evento. Sólo tienes que poner la franja horaria aproximada para tu evento, no tu disponibilidad.",
+ "p4": "Vamos a usar la fiesta de aniversario de Jenny como ejemplo. Jenny quiere organizar un almuerzo para su aniversario y quiere que este se celebre durante la misma semana, la del 15 de abril, pero también sabe que el 15 no podrían asistir todos sus amigos. Ha decidido que no quiere celebrarlo durante el fin de semana.",
+ "p5": "Jenny también sabe que, dado que es un almuerzo, este no puede empezar antes de las 11AM o acabar después de las 5PM.",
"s2": "Paso 2",
- "p6": "Enter your availability for the event you just created.",
- "p7": "In our example, Jenny now puts in her availability for her birthday lunch. She is free all week, except after 3pm on Tuesday and Wednesday, and before 1pm on Friday.",
+ "p6": "Elije tu disponibilidad para el evento que acabas de crear.",
+ "p7": "En nuestro ejemplo, Jenny elije su disponibilidad para el almuerzo. Está disponible durante toda la semana, exceptuando el martes y el miércoles después de las 3PM y el viernes antes de la 1PM.",
"s3": "Paso 3",
- "p8": "Send the link to everyone you want to come.",
- "p9": "After Jenny has sent the link to her friends and waited for them to also fill out their availabilities, she can now easily see them all on the heatmap below and choose the darkest area for a time that suits everyone!",
- "p10": "In this example, 1pm to 3pm on Friday the 16th works for all Jenny's friends."
+ "p8": "Envía el enlace a todos los participantes.",
+ "p9": "Una vez Jenny ha enviado el enlace a sus amigos y ha esperado a que rellenaran el Crab Fit, los puede ver fácilmente en el mapa de calor y organizar el evento durante las horas indicadas por el área más oscura, cuando todos pueden asistir.",
+ "p10": "En este ejemplo, podemos ver que todos los amigos de Jenny están disponibles de 1PM a 3PM el viernes 16."
}
diff --git a/frontend/src/i18n/locales/es/home.json b/frontend/src/i18n/locales/es/home.json
index a8a856a7d..ace9adb4c 100644
--- a/frontend/src/i18n/locales/es/home.json
+++ b/frontend/src/i18n/locales/es/home.json
@@ -1,14 +1,14 @@
{
"create": "CREA UN",
- "recently_visited": "Recientemente visitado",
+ "recently_visited": "Visitados recientemente",
"form": {
"name": {
"label": "¡Dale un nombre a tu evento!",
- "sublabel": "O dejar en blanco para generar uno"
+ "sublabel": "O déjalo en blanco para generar uno aleatorio"
},
"dates": {
- "label": "¿Qué fechas podrían funcionar?",
- "sublabel": "Haga clic y arrastre para seleccionar",
+ "label": "¿Qué rango de fechas es adecuado?",
+ "sublabel": "Haz clic y arrastra para seleccionar",
"options": {
"specific": "Fechas específicas",
"week": "Días de la semana"
@@ -23,20 +23,20 @@
}
},
"times": {
- "label": "¿A qué horas podría funcionar?",
- "sublabel": "Haga clic y arrastre para seleccionar un rango de tiempo"
+ "label": "¿Qué horas son apropiadas para el evento?",
+ "sublabel": "Haz clic y arrastra para seleccionar un rango de tiempo"
},
"timezone": {
- "label": "Y la zona horaria",
- "defaultOption": "Seleccione..."
+ "label": "Zona horaria",
+ "defaultOption": "Selecciona..."
},
"button": "Crear",
"errors": {
"no_dates": "No hay fechas seleccionadas",
- "same_times": "Las horas de inicio y finalización no pueden ser las mismas",
- "no_time": "No hay ningún tiempo seleccionado",
- "unknown": "Algo salió mal. Por favor, inténtelo de nuevo más tarde."
+ "same_times": "La hora de inicio y finalización no puede ser la misma",
+ "no_time": "No hay horas seleccionada",
+ "unknown": "Algo salió mal. Por favor, inténtalo de nuevo más tarde."
}
},
@@ -45,15 +45,15 @@
"events": "Eventos creados",
"availabilities": "Disponibilidades ingresadas",
"content": {
- "p1": "Crab Fit te ayuda a adaptar tu evento a los horarios de todos. Simplemente cree un evento arriba y envíe el enlace a todos los participantes. Los resultados se actualizan en vivo y podrá ver un mapa de calor de cuándo todos están libres.<1/><2>Obtenga más información sobre cómo Crab Fit.2>",
- "p3": "Creado por <1>Ben Grant1>, Crab Fit es la solución moderna para sus debates de planificación de eventos grupales.",
- "p4": "Crab Fit es de código abierto, si encuentra algún problema o desea contribuir, puede visitar el <1>repositorio1>. Al utilizar Crab Fit, acepta la <3>política de privacidad3>.",
- "p6": "Para proteger su privacidad, los eventos se eliminan después de 3 meses de inactividad y todas las contraseñas tienen un cifrado seguro.",
- "p5": "Considere hacer una donación a continuación si lo ayudó para que pueda ser gratuito para todos. 🦀"
+ "p1": "Crab Fit te ayuda a adaptar tu evento a los horarios de todos los participantes. Simplemente crea un evento arriba y comparte el enlace. Los resultados se actualizan en vivo y podrás ver un mapa de calor con la disponibilidad de todos.<1/><2>Obtén más información sobre cómo usar Crab Fit.2>",
+ "p3": "Creado por <1>Ben Grant1>, Crab Fit es la solución moderna para tus debates de planificación de eventos grupales.",
+ "p4": "Crab Fit es de código abierto, si encuentras algún problema o deseas contribuir, puedes visitar el <1>repositorio1>. Al utilizar Crab Fit, aceptas la <3>política de privacidad3>.",
+ "p6": "Para proteger tu privacidad, los eventos se eliminan después de 3 meses de inactividad y todas las contraseñas tienen un cifrado seguro.",
+ "p5": "Considera hacer una donación a continuación para que Crab Fit pueda ser gratuito para todos. 🦀"
},
- "chrome_extension": "Obtén la extensión de Chrome",
- "firefox_extension": "Obtén la extensión de Firefox",
- "safari_extension": "Obtén la extensión de Safari",
- "android_app": "Descarga la aplicación de Android"
+ "chrome_extension": "Obtén la extensión para Chrome",
+ "firefox_extension": "Obtén la extensión para Firefox",
+ "safari_extension": "Obtén la extensión para Safari",
+ "android_app": "Descarga la aplicación para Android"
}
}
diff --git a/frontend/src/i18n/locales/es/privacy.json b/frontend/src/i18n/locales/es/privacy.json
index 2fed42acb..18a187df1 100644
--- a/frontend/src/i18n/locales/es/privacy.json
+++ b/frontend/src/i18n/locales/es/privacy.json
@@ -1,4 +1,4 @@
{
"name": "Política de privacidad",
- "translate": "Ver en su idioma"
+ "translate": "Traducir página a tu idioma"
}
diff --git a/frontend/src/i18n/locales/hu-HU/common.json b/frontend/src/i18n/locales/hu-HU/common.json
index a73d94cfe..deafc8a8e 100644
--- a/frontend/src/i18n/locales/hu-HU/common.json
+++ b/frontend/src/i18n/locales/hu-HU/common.json
@@ -1,6 +1,6 @@
{
"name": "Crab Fit",
- "tagline": "Készítsd el sajátod",
+ "tagline": "Készítsd el a sajátod",
"cta": "Készítsd el a saját Crab Fited!",
"created": "Készült {{date}}",
"donate": {
@@ -33,8 +33,8 @@
}
},
"highlight": {
- "label": "Legjobb eggyezés kiemelése",
- "title": "A legmagassabb rendelkezésre állás kiemelése a hőtérképen",
+ "label": "Legjobb egyezés kiemelése",
+ "title": "A legjobb időpont kiemelése a hőtérképen",
"options": {
"Off": "Ki",
"On": "Be"
@@ -44,7 +44,7 @@
"label": "Nyelv"
},
"colormap": {
- "label": "Hőtérkép színek",
+ "label": "A hőtérkép színei",
"classic": "Crab Fit (klasszikus)"
}
},
diff --git a/frontend/src/i18n/locales/hu-HU/event.json b/frontend/src/i18n/locales/hu-HU/event.json
new file mode 100644
index 000000000..6066fff34
--- /dev/null
+++ b/frontend/src/i18n/locales/hu-HU/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "elérhető",
+ "greyed_times": "Ez a terület szürke, mivel nem része az eseménynek. Előfordulhat, hogy nem abból az időzónából nézed az eseményt, amelyben létre lett hozva.",
+
+ "nav": {
+ "title": "Kattints a másoláshoz",
+ "copied": "Vágólapra másolva!",
+ "shareinfo": "Másold le az oldal linkjét, vagy osszd meg <1>emailben1>.",
+ "shareinfo_alt": "Kattints a fenti linkre a másoláshoz, vagy oszd meg <1>emailben1>.",
+ "email_subject": "{{event_name}} ütemezése",
+ "email_body": "Kövesd ezt a linket, hogy megadd, mikor érsz rá:"
+ },
+ "form": {
+ "signed_out": "Jelentkezz be az időpontok megadásához",
+ "signed_in": "Belépve, mint {{name}}",
+
+ "name": "Név",
+ "password": "Jelszó (opcionális)",
+ "button": "Bejelentkezés",
+ "logout_button": "Kijelentkezés",
+ "info": "Ezek az információk csak erre az eseményre vonatkoznak. Adj meg egy jelszót, hogy mások ne tudják a válaszodat módosítani.",
+
+ "timezone": "Időzónád",
+
+ "errors": {
+ "name_required": "Szükség van a nevedre a válasz elmentéséhez",
+ "password_incorrect": "Hibás jelszó. Ellenőrizd, hogy jól írtad-e a nevedet.",
+ "unknown": "Sikertelen bejelentkezés. Kérlek, próbáld újra!"
+ },
+
+ "created_in_timezone": "Ez az esemény a {{timezone}} időzónában lett létrehozva. <3>Kattints ide3> az időzóna használatához.",
+ "local_timezone": "Úgy látjuk, hogy az időzónád: {{timezone}}. <3>Kattints ide3> az időzóna használatához."
+ },
+ "offline": {
+ "title": "Jelenleg nem csatlakozol az internethez",
+ "body": "A Crab Fit nem működik internet nélkül.
Kérlek ellenőrízd az internet kapcsolatodat, és próbáld újra."
+ },
+ "error": {
+ "title": "Az esemény nem tallható",
+ "body": "Ellenőrízd, hogy a megadott URL helyes.-e A személyes adatok védelme érdekében minden esemény 3 hónap inaktivitás után törlésre kerül. Előfordulhat, hogy a keresett esemény is törlésre került."
+ },
+
+ "tabs": {
+ "you": "Neked jó időpontok",
+ "you_tooltip": "Jelentkezz be a válaszadáshoz",
+ "group": "Csapatnak jó időpontok"
+ },
+
+ "group": {
+ "legend_tooltip": "Kattints a legjobb egyezés kiemeléséhez",
+ "info1": "Húzd az egeret az egyes időpontok fölé, vagy érintsd meg az alábbi naptárat, hogy lásd, ki érhető el, és kattints a részletek másolásához egy időponttal kapcsolatban",
+ "info2": "Kattints az alábbi nevekre az egyéni válaszok megtekintéséhez",
+ "clipboard_message": "{{date}}-n elérhető emberek"
+ },
+
+ "you": {
+ "info": "Kattints és húzd az egeret a naptáron az elérhetőségeid beállításához",
+ "select_all": "Összes kijelölése",
+ "select_none": "Kijelölés törlése",
+ "select_invert": "Kijelölés megfordítása",
+
+ "google_cal": "Szinkronizálás a Google Naptárral",
+ "outlook_cal": "Szinkronizálás az Outlook Naptárral",
+ "recent_event": "Szinkronizálás egy korábbi eseménnyel",
+ "integration": {
+ "logout": "kijelentkezés",
+ "close": "bezár",
+ "info": "Az importálás felül fogja írni a jelenlegi válaszaidat",
+ "button": "Szabad időpontok importálása"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/hu-HU/help.json b/frontend/src/i18n/locales/hu-HU/help.json
new file mode 100644
index 000000000..0bffd0314
--- /dev/null
+++ b/frontend/src/i18n/locales/hu-HU/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Hogyan használd a Crab Fitet?",
+
+ "p1": "A Crab Fit egy olyan eszköz, ami segít neked, amikor eseményeket tervezel barátokkal vagy munkatársakkal. Csak létrehozol egy eseményt, megadod, hogy mikor érsz rá, elküldöd a többieknek, és láthatod, melyik időpont ami mindenkinek szabad!",
+ "p2": "Lásd alább a részletes lépéseket arról, hogyan készítsd el a saját Crab Fit eseményedet.",
+
+ "s1": "1. lépés",
+
+ "p3": "Használd a <1>crab.fit1> űrlapot egy új esemény létrehozásához. Itt nagy vonalakban kell csak azt időszakot megadnod, amikor az eseményed lesz, még nem kell megadnod, hogy mikor érsz rá.",
+ "p4": "Példának \"Jenny születésnapi ebédjét\" fogjuk használni. Jenny szeretné, ha a születésnapi ebédje ugyanazon a héten lenne, mint a születésnapja, ami április 15-én van, de tudja, hogy nem minden barátja ér rá 15-én. Emellett nem szeretné hétvégén ünnepelni a születésnapját.",
+ "p5": "Jenny azt is tudja, hogy mivel ez egy ebéd lesz, nem kezdődhet el délelőtt 11 óra előtt, és nem tarthat tovább délután 5 óránál.",
+
+ "s2": "2. lépés",
+
+ "p6": "Add meg, hogy mikor érsz rá a most létrehozott eseményre.",
+ "p7": "A példánkban most Jenny megadja, hogy mikor ér rá a születésnapi ebédre. Jenny egész héten szabad, kivéve pénteken délután 1 óra előtt, valamint kedden és szerdán délután 3 óra után.",
+
+ "s3": "3. lépés",
+
+ "p8": "Küldd el a linket mindenkinek, akit meg szeretnél hívni.",
+ "p9": "Miután Jenny elküldte a linket barátainak, majd megvárta, hogy ők is kitöltsék, hogy ki mikor ér rá, most könnyedén láthatja mindenki elérhetőségét a lenti hőtérképen, és kiválaszthatja a legsötétebb területet, amely a mindenki számára legmegfelelőbb időpontot jelenti.",
+ "p10": "Ebben a példában Jenny összes barátjának megfelelő pénteken, 16-án délután 1 órától 3 óráig."
+}
diff --git a/frontend/src/i18n/locales/hu-HU/home.json b/frontend/src/i18n/locales/hu-HU/home.json
new file mode 100644
index 000000000..484461d34
--- /dev/null
+++ b/frontend/src/i18n/locales/hu-HU/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "KÉSZTS EGY",
+ "recently_visited": "Nemrég látogatott",
+ "form": {
+ "name": {
+ "label": "Adj nevet az eseményednek!",
+ "sublabel": "Vagy hagyd üresen az automatikus generáláshoz"
+ },
+ "dates": {
+ "label": "Melyik napok lehetnek jók?",
+ "sublabel": "Kattints és húzd a kiválasztáshoz",
+ "options": {
+ "specific": "Konkrét napok",
+ "week": "A hét napjai"
+ },
+ "tooltips": {
+ "previous": "Előző hónap",
+ "next": "Következő hónap",
+ "today": "ma"
+ },
+ "warnings": {
+ "date_in_past": "Van olyan dátum a kiválasztottak között, amely már elmúlt"
+ }
+ },
+ "times": {
+ "label": "Melyik időpontok lehetnek jók?",
+ "sublabel": "Kattints és húzd az időtartomány kiválasztásához"
+ },
+ "timezone": {
+ "label": "És az időzóna",
+ "defaultOption": "Válassz..."
+ },
+
+ "button": "Létrehozás",
+ "errors": {
+ "no_dates": "Egyetlen nap sincsen kiválasztva",
+ "same_times": "A kezdés és befejezés időpontja nem lehet azonos",
+ "no_time": "Nincsen időpont kiválasztva",
+ "unknown": "Valami hiba történt. Kérlek próbáld újra később."
+ }
+ },
+
+ "about": {
+ "name": "A Crab Fitről",
+ "events": "Létrehozott események",
+ "availabilities": "Bevitt elérhetőségek",
+ "content": {
+ "p1": "A Crab Fit segít abban, hogy egy eseményt mindenki időbeosztásához igazíthass. Egyszerűen hozz létre egy eseményt fentebb, és küldd el a linket minden résztvevőnek. Az eredmények élőben frissülnek, és láthatod majd egy hőtérképen, hogy mikor ér rá mindenki.<1/><2>Tudj meg többet a Crab Fit működéséről2>.",
+ "p3": "A <1>Ben Grant1> által fejlesztett Crab Fit egy modern megoldás csoportesemények tervezésére.",
+ "p4": "A Crab Fit nyílt forráskódú, ha bármilyen problémát találsz, vagy hozzá szeretnél járulni, látogasd meg a <1>repository-t1>. A Crab Fit használatával elfogadod az <3>adatvédelmi irányelveket3>.",
+ "p6": "A magánéleted védelme érdekében az eseményeket 3 hónap inaktivitás után töröljük, és minden jelszót biztonságosan hashelünk.",
+ "p5": "Ha tetszett, kérlek fontold meg az adományozást, hogy a Crab Fit mindenki számára ingyenes maradhasson. 🦀"
+ },
+ "chrome_extension": "Szerezd meg a Chrome bővítményt",
+ "firefox_extension": "Szerezd meg a Firefox bővítményt",
+ "safari_extension": "Szerezd meg a Safari bővítményt",
+ "android_app": "Android app letöltése"
+ }
+}
diff --git a/frontend/src/i18n/locales/ja/common.json b/frontend/src/i18n/locales/ja/common.json
index 74b14b979..8814f1eef 100644
--- a/frontend/src/i18n/locales/ja/common.json
+++ b/frontend/src/i18n/locales/ja/common.json
@@ -6,18 +6,7 @@
"donate": {
"info": "Crab Fit を使ってくれてありがとうございます。よろしければ寄付してくれますか?",
"button": "寄付する",
- "title": "いくらでも歓迎です :)",
- "options": {
- "$2": "$2 を寄付",
- "$5": "$5 を寄付",
- "$10": "$10 を寄付",
- "choose": "金額を指定する"
- },
- "messages": {
- "about": "Crab Fit が少しでもお役に立てたなら、運営を継続させるためにも寄付をしていただけませんか? 🦀",
- "success": "寄付ありがとうございます!あなたの補佐がなければ、無料でいられることができませんので、本当に助けてくれました。",
- "error": "Google 経由では寄付できません。crab.fit のサイトで直接寄付をお願いします。 🦀"
- }
+ "title": "いくらでも歓迎です :)"
},
"options": {
"name": "設定",
@@ -53,6 +42,14 @@
},
"language": {
"label": "言語"
+ },
+ "colormap": {
+ "label": "ヒートマップの色",
+ "classic": "Crab Fit(クラシック)"
}
+ },
+ "video": {
+ "title": "Crab Fitのプロモーションビデオ",
+ "button": "ビデオを見る"
}
}
diff --git a/frontend/src/i18n/locales/ja/home.json b/frontend/src/i18n/locales/ja/home.json
index d18754290..4d5e08ff2 100644
--- a/frontend/src/i18n/locales/ja/home.json
+++ b/frontend/src/i18n/locales/ja/home.json
@@ -17,6 +17,9 @@
"previous": "先月",
"next": "来月",
"today": "今日"
+ },
+ "warnings": {
+ "date_in_past": "選択した日付に過去の日付が含まれています"
}
},
"times": {
@@ -42,8 +45,8 @@
"events": "作成されたイベント数",
"availabilities": "登録された予定の空き具合の数",
"content": {
- "p1": "Crab Fit は、あなたのイベントを皆さんの予定に合わせるためのサービスです。上の画面でイベントを作成し、参加する予定の皆さんにリンクを送りましょう。皆さんがいつ都合がよいのか、ヒートマップで確認できるようになります。集計結果はすぐに更新されます。<1/><2>Crab Fit の使い方を詳しく知る2>。",
- "p3": "Crab Fit はイベントの日程調整会議を現代的に解決するべく、 <1>Ben Grant 1>によって制作されました。",
+ "p1": "Crab Fit は、あなたのイベントを皆さんの予定に合わせるためのサービスです。上の画面でイベントを作成し、参加する予定の皆さんにリンクを送りましょう。皆さんがいつ都合がよいのか、ヒートマップで確認できるようになります。集計結果はすぐに更新されます。<1/><2>こちらからCrab Fit の使い方を詳しくご確認いただけます2>。",
+ "p3": "Crab Fitはイベントの日程調整の現代版サービスとして、 <1>Ben Grant 1>により作成されました。",
"p4": "Crab Fit のソースコードはオープンソースなので、不具合を見つけたときやコントリビュートしたい場合は、 <1>レポジトリ1> をチェックしてみてください。Crab Fit を利用することで <3>プライバシー ポリシー3>に同意したことになります。",
"p6": "あなた自身のプライバシーを守るため、イベントは3か月間アクティブでないと削除されます。また、すべてのパスワードは安全にハッシュ化されています。",
"p5": "Crab Fit が便利だなと感じたら、フリーで提供し続けられるよう、下の画面から寄付していただけませんか? 🦀"
diff --git a/frontend/src/i18n/locales/ja/privacy.json b/frontend/src/i18n/locales/ja/privacy.json
index 33c7eda2e..703182388 100644
--- a/frontend/src/i18n/locales/ja/privacy.json
+++ b/frontend/src/i18n/locales/ja/privacy.json
@@ -1,4 +1,4 @@
{
- "name": "プライバシー ポリシー",
+ "name": "プライバシーポリシー",
"translate": "自分の言語で読む"
}
diff --git a/frontend/src/i18n/locales/ko/common.json b/frontend/src/i18n/locales/ko/common.json
index 8c97f1dc7..6d5497e59 100644
--- a/frontend/src/i18n/locales/ko/common.json
+++ b/frontend/src/i18n/locales/ko/common.json
@@ -1,23 +1,12 @@
{
"name": "Crab Fit",
- "tagline": "직접 만들어 봐",
+ "tagline": "새로운 Crab Fit 만들기",
"cta": "나만의 Crab Fit을 만드세요!",
"created": "{{date}} 생성됨",
"donate": {
"info": "Crab Fit을 이용해 주셔서 감사합니다. 마음에 들면 기부를 고려하십시오.",
"button": "기부하다",
- "title": "모든 금액이 차이를 만듭니다",
- "options": {
- "$2": "$ 2 기부",
- "$5": "$ 5 기부",
- "$10": "$ 10 기부",
- "choose": "금액을 선택하세요"
- },
- "messages": {
- "about": "도움이 되었으면 계속해서 운영 할 수 있도록 기부하는 것을 고려하십시오. 🦀",
- "success": "기부 해 주셔서 감사합니다! 당신이 없었다면 Crab Fit은 무료가 될 수 없으니 감사하고 계속해서 최고가 되세요!",
- "error": "Google을 통해 기부 할 수 없습니다. 웹 사이트 crab.fit을 통해 기부 해주세요 🦀"
- }
+ "title": "모든 항목이 합산됩니다 :)"
},
"options": {
"name": "옵션",
@@ -47,12 +36,20 @@
"label": "고 가용성 강조",
"title": "히트 맵에서 가장 높은 가용성을 돋보이게합니다.",
"options": {
- "Off": "꺼진",
- "On": "켜진"
+ "Off": "꺼짐",
+ "On": "켜짐"
}
},
"language": {
"label": "언어"
+ },
+ "colormap": {
+ "label": "히트맵 색상",
+ "classic": "Crab Fit (classic)"
}
+ },
+ "video": {
+ "title": "Crab Fit 홍보영상",
+ "button": "영상 시청하기"
}
}
diff --git a/frontend/src/i18n/locales/ko/event.json b/frontend/src/i18n/locales/ko/event.json
index a4af561a6..1569070c8 100644
--- a/frontend/src/i18n/locales/ko/event.json
+++ b/frontend/src/i18n/locales/ko/event.json
@@ -4,7 +4,7 @@
"nav": {
"title": "클릭하여 클립 보드에 복사",
- "copied": "클립 보드에 복사되었습니다!",
+ "copied": "복사됨!",
"shareinfo": "이 페이지에 대한 링크를 복사하거나 <1>이메일을1> 통해 공유하세요.",
"shareinfo_alt": "위의 링크를 클릭하여 클립 보드에 복사하거나 <1>이메일로1> 공유하세요.",
"email_subject": "일정 {{event_name}}",
@@ -17,22 +17,22 @@
"name": "당신의 이름",
"password": "비밀번호 (선택 사항)",
"button": "로그인",
- "logout_button": "로그아웃합니다",
- "info": "이러한 세부 정보는이 이벤트에 한정됩니다. 다른 사람이 귀하의 가용성을 변경하지 못하도록 암호를 사용하십시오.",
+ "logout_button": "로그아웃",
+ "info": "이 세부정보는 이 이벤트에 한에서만 적용됩니다. 다른사람이 변경하지 못하도록 암호를 설정하세요.",
"timezone": "시간대",
"errors": {
"name_required": "사용 가능 여부를 저장하려면 이름이 필요합니다.",
- "password_incorrect": "비밀번호가 맞지 않습니다. 당신의 이름이 바로 철자 확인하십시오.",
+ "password_incorrect": "비밀번호가 맞지 않습니다. 이름이 제대로 입력되었는지 확인하세요.",
"unknown": "로그인 실패. 다시 시도하십시오."
},
- "created_in_timezone": "이 이벤트는 {{timezone}} 시간대로 생성되었습니다. 그것을 사용하려면 <3>여기를 클릭하십시오3>.",
- "local_timezone": "현지 시간대가 {{timezone}} 감지되었습니다. 그것을 사용하려면 <3>여기를 클릭하십시오3>."
+ "created_in_timezone": "이 이벤트는 {{timezone}} 시간대로 생성되었습니다. 이 시간대를 사용하려면 <3>여기를 클릭하세요3>.",
+ "local_timezone": "현지 시간대가 {{timezone}}으로 감지되었습니다. 이 시간대를 사용하려면 <3>여기를 클릭하세요3>."
},
"offline": {
- "title": "너는 지금 접속이 안되있어",
+ "title": "오프라인입니다.",
"body": "Crab Fit은 오프라인에서 작동하지 않습니다.
인터넷에 연결되어 있는지 확인하고 다시 시도하세요."
},
"error": {
@@ -41,28 +41,32 @@
},
"tabs": {
- "you": "귀하의 가용성",
- "you_tooltip": "가용성을 설정하려면 로그인하십시오.",
- "group": "그룹 가용성"
+ "you": "내 가능한 시간",
+ "you_tooltip": "가능한 시간대를 설정하려면 로그인하세요.",
+ "group": "다른 사람들의 가능한 시간"
},
"group": {
- "legend_tooltip": "가장 높은 가용성을 강조하려면 클릭하십시오",
- "info1": "누가 무료인지 확인하려면 아래 캘린더를 가리 키거나 탭하세요",
- "info2": "사람들을 개별적으로 보려면 아래 이름을 클릭하십시오"
+ "legend_tooltip": "가장 많이 선택된 시간을 강조하려면 클릭하세요.",
+ "info1": "아래 달력에 마우스를 올리거나 탭하여 누가 가능한지 확인하고, 클릭하여 시간대에 대한 세부 정보를 복사하세요.",
+ "info2": "사람들을 개별적으로 보려면 아래 이름을 클릭하십시오",
+ "clipboard_message": "{{date}}에 가능합니다."
},
"you": {
"info": "사용 가능 여부를 설정하려면 아래 캘린더를 클릭하고 드래그하세요",
"select_all": "모두 선택",
"select_none": "모두 선택 해제",
+ "select_invert": "선택 반전",
- "google_cal": "Google 캘린더와 동기화합니다",
- "outlook_cal": "아웃룩 캘린더와 동기화합니다",
+ "google_cal": "Google 캘린더와 동기화",
+ "outlook_cal": "아웃룩 캘린더와 동기화",
+ "recent_event": "최근 이벤트와 동기화",
"integration": {
- "logout": "로그 아웃",
- "info": "가져 오면 현재 사용 가능 여부를 덮어 씁니다",
- "button": "가용성 가져 오기"
+ "logout": "로그아웃",
+ "close": "닫기",
+ "info": "가져오기를 실행하면 현재 선택된 시간을 덮어 씁니다",
+ "button": "가능한 시간 가져 오기"
}
}
}
diff --git a/frontend/src/i18n/locales/ko/help.json b/frontend/src/i18n/locales/ko/help.json
index 2f7a2212e..54c2cd545 100644
--- a/frontend/src/i18n/locales/ko/help.json
+++ b/frontend/src/i18n/locales/ko/help.json
@@ -1,12 +1,12 @@
{
- "name": "Crab Fit 방법",
+ "name": "Crab Fit 사용방법",
- "p1": "게 맞춤이 친구 나 동료와 이벤트를 계획 할 때 당신을 도와주는 도구이다. 이벤트를 만들고, 사용 가능 여부를 입력하고, 보내고, 모든 사람이 언제 무료인지 확인하기 만하면됩니다!",
- "p2": "방법에 대한 자세한 단계는 아래를 참조하십시오.",
+ "p1": "Crab Fit은 친구 또는 협업자와 이벤트를 계획 할 때 도와주는 웹 사이트입니다. 이벤트를 만들고, 가능한 시간을 선택한 후, 공유하고, 모든 사람이 가능한 시간을 확인하기만 하면 됩니다!",
+ "p2": "사용 방법은 아래 단계들을 참고하세요.",
"s1": "1 단계",
- "p3": "<1>crab.fit1>의 양식을 사용하여 새 이벤트를 만드세요. 여기서 이벤트가 발생하는 대략적인 기간 만 입력하면됩니다.",
+ "p3": "<1>crab.fit1>의 양식을 사용하여 새 이벤트를 만드세요. 이벤트가 발생하는 대략적인 기간을 선택하면 됩니다.",
"p4": "예를 들어 \"Jenny의 생일 점심을\" 사용합니다. Jenny는 4 월 15 일 생일과 같은 주에 생일 점심 식사를하기를 원하지만 모든 친구가 15 일에 참석할 수있는 것은 아니라는 것을 알고 있습니다. 그녀는 또한 주말에하고 싶지 않습니다.",
"p5": "Jenny는 점심 행사이기 때문에 오전 11시 이전에 시작하거나 오후 5시 이후에 갈 수 없다는 것도 알고 있습니다.",
diff --git a/frontend/src/i18n/locales/ko/home.json b/frontend/src/i18n/locales/ko/home.json
index 96719995f..141e8958c 100644
--- a/frontend/src/i18n/locales/ko/home.json
+++ b/frontend/src/i18n/locales/ko/home.json
@@ -4,10 +4,10 @@
"form": {
"name": {
"label": "이벤트 이름을 지정하세요!",
- "sublabel": "또는 공백으로 두어 생성하십시오"
+ "sublabel": "또는 공백으로 두어 랜덤으로 생성"
},
"dates": {
- "label": "어떤 날짜를 작동 할 수 있습니다?",
+ "label": "어떤 날자를 선택하시겠습니까?",
"sublabel": "클릭하고 드래그하여 선택",
"options": {
"specific": "특정 날짜",
@@ -17,22 +17,25 @@
"previous": "지난 달",
"next": "다음 달",
"today": "오늘"
+ },
+ "warnings": {
+ "date_in_past": "선택된 날짜 중 일부는 과거입니다."
}
},
"times": {
- "label": "어느 시간이 효과가 있습니까?",
- "sublabel": "시간 범위를 선택하려면 클릭하고 드래그하세요"
+ "label": "어느 시간대가 좋을까요?",
+ "sublabel": "클릭과 드래그를 통해 시간 범위를 선택하세요"
},
"timezone": {
"label": "시간대",
"defaultOption": "고르다..."
},
- "button": "창조하다",
+ "button": "만들기",
"errors": {
- "no_dates": "선택한 모든 날짜가 없습니다",
+ "no_dates": "선택한 날짜가 없습니다",
"same_times": "시작 시간과 종료 시간은 같을 수 없습니다",
- "no_time": "선택한 시간이 없습니다",
+ "no_time": "선택된 시간이 없습니다",
"unknown": "문제가 발생했습니다. 나중에 다시 시도 해주십시오."
}
},
@@ -40,7 +43,7 @@
"about": {
"name": "Crab Fit 정보",
"events": "생성 된 이벤트 수",
- "availabilities": "입력 된 가용성 수",
+ "availabilities": "입력 된 시간 수",
"content": {
"p1": "Crab Fit은 모든 사람의 일정에 맞춰 이벤트를 조정할 수 있도록 도와줍니다. 위에서 이벤트를 만들고 참여하는 모든 사람에게 링크를 보내십시오. 결과가 실시간으로 업데이트되고 모든 사람이 가용성의 히트 맵을 볼 수 있습니다.<1/><2>Crab Fit 방법2>.",
"p3": "<1>Ben Grant1>가 만든 Crab Fit은 그룹 이벤트 계획 토론에 대한 현대적인 솔루션입니다.",
@@ -48,9 +51,9 @@
"p6": "개인 정보를 보호하기 위해 이벤트는 3개월 동안 사용하지 않으면 삭제되고 모든 암호는 안전하게 해시됩니다.",
"p5": "모든 사람이 무료로 사용할 수 있도록 아래 기부를 고려하세요. 🦀"
},
- "chrome_extension": "Chrome Extension을 가져옵니다",
- "firefox_extension": "Firefox Extension을 가져옵니다",
- "safari_extension": "Safari Extension을 가져옵니다",
- "android_app": "Android 앱을 다운로드합니다"
+ "chrome_extension": "Chrome Extension 설치하기",
+ "firefox_extension": "Firefox Extension 설치하기",
+ "safari_extension": "Safari Extension 설치하기",
+ "android_app": "Android 앱 다운로드"
}
}
diff --git a/frontend/src/i18n/locales/ko/privacy.json b/frontend/src/i18n/locales/ko/privacy.json
index 19f53ca4e..ece5b3327 100644
--- a/frontend/src/i18n/locales/ko/privacy.json
+++ b/frontend/src/i18n/locales/ko/privacy.json
@@ -1,4 +1,4 @@
{
"name": "개인 정보 보호 정책에",
- "translate": "귀하의 언어로보기"
+ "translate": "이 페이지 번역하기"
}
diff --git a/frontend/src/i18n/locales/pt-BR/common.json b/frontend/src/i18n/locales/pt-BR/common.json
index 7be4fb370..33c308fb6 100644
--- a/frontend/src/i18n/locales/pt-BR/common.json
+++ b/frontend/src/i18n/locales/pt-BR/common.json
@@ -6,30 +6,19 @@
"donate": {
"info": "Obrigado por usar Crab Fit! Gostou? Faça uma doação.",
"button": "Doar",
- "title": "Todo valor vale :)",
- "options": {
- "$2": "Doar $2",
- "$5": "Doar $5",
- "$10": "Doar $10",
- "choose": "Escolhe um valor"
- },
- "messages": {
- "about": "Achou o Crab Fit útil? Faça uma doação para para mantê-lo funcionando. 🦀",
- "success": "Obrigado por sua doação! Sem essas contribuições Crab Fit não poderia ser gratuito e por isso te agradeço muito. Você é o máximo!",
- "error": "Doação através do Google não pode ser feita. Por favor tente no site crab.fit 🦀"
- }
+ "title": "Todo valor vale :)"
},
"options": {
"name": "Opções",
"weekStart": {
- "label": "A semana começa com",
+ "label": "Início da semana",
"options": {
- "Sunday": "domingo",
- "Monday": "segunda‑feira"
+ "Sunday": "Domingo",
+ "Monday": "Segunda‑feira"
}
},
"timeFormat": {
- "label": "formato de horas",
+ "label": "Formato de hora",
"options": {
"12h": "12h",
"24h": "24h"
@@ -38,25 +27,29 @@
"theme": {
"label": "Aparência",
"options": {
- "System": "sistema",
- "Light": "claro",
- "Dark": "escuro"
+ "System": "Padrão",
+ "Light": "Clara",
+ "Dark": "Escura"
}
},
"highlight": {
- "label": "destacar disponibilidade alta",
- "title": "realçar visualmente a maior visibilidade",
+ "label": "Destacar maior disponibilidade",
+ "title": "Realçar visualmente os horários de maior disponibilidade no mapa de calor",
"options": {
- "Off": "Desl.",
- "On": "Lig."
+ "Off": "Desligado",
+ "On": "Ligado"
}
},
"language": {
- "label": "idioma"
+ "label": "Idioma"
+ },
+ "colormap": {
+ "label": "Cores do mapa de calor",
+ "classic": "Crab Fit (clássico)"
}
},
"video": {
"title": "Vídeo promocional Crab Fit",
- "button": "veja o vídeo"
+ "button": "Assista ao vídeo"
}
}
diff --git a/frontend/src/i18n/locales/pt-BR/event.json b/frontend/src/i18n/locales/pt-BR/event.json
index 5c713c82e..1462164dd 100644
--- a/frontend/src/i18n/locales/pt-BR/event.json
+++ b/frontend/src/i18n/locales/pt-BR/event.json
@@ -1,6 +1,6 @@
{
"available": "disponível",
- "greyed_times": "Esta área está desabilitada por não fazer parte do evento. Provavelmente você esta em outro fuso horário do que usado pelo evento.",
+ "greyed_times": "Esta área está desabilitada por não fazer parte do evento. Pode ser que você esteja em outro fuso horário.",
"nav": {
"title": "Clique para copiar",
@@ -48,19 +48,23 @@
"group": {
"legend_tooltip": "Clique para destacar o melhor tempo",
- "info1": "Passe o mouse ou toque o calendário pra ver quem está livre",
- "info2": "Clique nos nomes pra ver a disponibilidade de cada um"
+ "info1": "Passe o cursor ou toque no calendário abaixo para ver quem está disponível, e clique para copiar os detalhes de um horário",
+ "info2": "Clique nos nomes pra ver a disponibilidade de cada um",
+ "clipboard_message": "Pessoas disponíveis em {{date}}"
},
"you": {
"info": "Clique e arraste para assinalar seu tempo livre no calendário",
"select_all": "Selecionar todos",
"select_none": "Selecionar nenhum",
+ "select_invert": "Inverter seleção",
"google_cal": "Sincronizar com sua Agenda Google",
"outlook_cal": "Sincronizar com sua Agenda Outlook",
+ "recent_event": "Sincronizar com evento recente",
"integration": {
"logout": "sair",
+ "close": "fechar",
"info": "Ao importar você substituirá sua disponibilidade atual",
"button": "Importar horários disponíveis"
}
diff --git a/frontend/src/i18n/locales/pt-BR/home.json b/frontend/src/i18n/locales/pt-BR/home.json
index 2455d1bee..e2c65b08d 100644
--- a/frontend/src/i18n/locales/pt-BR/home.json
+++ b/frontend/src/i18n/locales/pt-BR/home.json
@@ -17,6 +17,9 @@
"previous": "mês anterior",
"next": "próximo mês",
"today": "hoje"
+ },
+ "warnings": {
+ "date_in_past": "Algumas das datas selecionadas estão no passado"
}
},
"times": {
diff --git a/frontend/src/i18n/locales/zh-CN/common.json b/frontend/src/i18n/locales/zh-CN/common.json
new file mode 100644
index 000000000..95137a699
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-CN/common.json
@@ -0,0 +1,55 @@
+{
+ "name": "Crab Fit",
+ "tagline": "创建你的日程",
+ "cta": "在Crab Fit创建你的日程!",
+ "created": "于 {{date}} 创建",
+ "donate": {
+ "info": "感谢你使用Crab Fit。如果你喜欢,请考虑捐赠。",
+ "button": "捐赠",
+ "title": "每一点赞助都很重要 :)"
+ },
+ "options": {
+ "name": "选项",
+ "weekStart": {
+ "label": "周起始日",
+ "options": {
+ "Sunday": "星期日",
+ "Monday": "星期一"
+ }
+ },
+ "timeFormat": {
+ "label": "时间格式",
+ "options": {
+ "12h": "12小时制",
+ "24h": "24小时制"
+ }
+ },
+ "theme": {
+ "label": "主题",
+ "options": {
+ "System": "跟随系统",
+ "Light": "浅色",
+ "Dark": "深色"
+ }
+ },
+ "highlight": {
+ "label": "高亮最多人选择的时间段",
+ "title": "在热度图上突出显示最多人选择的时间段",
+ "options": {
+ "Off": "关",
+ "On": "开"
+ }
+ },
+ "language": {
+ "label": "语言"
+ },
+ "colormap": {
+ "label": "热度图颜色主题",
+ "classic": "Crab Fit(经典)"
+ }
+ },
+ "video": {
+ "title": "Crab Fit宣传视频",
+ "button": "观看视频"
+ }
+}
diff --git a/frontend/src/i18n/locales/zh-CN/event.json b/frontend/src/i18n/locales/zh-CN/event.json
new file mode 100644
index 000000000..c08a996a1
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-CN/event.json
@@ -0,0 +1,72 @@
+{
+ "available": "有空",
+ "greyed_times": "这个时间段因为不在事件所选时间段内而被禁用。您的时区也许和创建项目的时区并不一致。",
+
+ "nav": {
+ "title": "点击复制",
+ "copied": "已复制!",
+ "shareinfo": "复制此页面的链接,或者通过<1>电子邮件1>分享",
+ "shareinfo_alt": "点击上方的链接把它复制到你的剪贴板,或者通过<1>电子邮件1>分享。",
+ "email_subject": "正在规划{{event_name}}",
+ "email_body": "请点击此链接填写您的可用时间。"
+ },
+ "form": {
+ "signed_out": "要填写您的可用时间,请登录",
+ "signed_in": "您已以{{name}}身份登录",
+
+ "name": "您的名称",
+ "password": "密码(可选)",
+ "button": "登录",
+ "logout_button": "退出",
+ "info": "这些信息只会被这个事件使用。设置密码可以防止您的可用时间被他人修改。",
+
+ "timezone": "您的时区",
+
+ "errors": {
+ "name_required": "我们需要您的名称来保存您的可用时间。",
+ "password_incorrect": "密码不正确。请检查您的名称是否拼写有误。",
+ "unknown": "登录失败,请重试。"
+ },
+
+ "created_in_timezone": "该事件是在{{timezone}}时区创建的。<3>点击这里3>应用。",
+ "local_timezone": "检测到您的时区是{{timezone}}。<3>点击这里3>应用。"
+ },
+ "offline": {
+ "title": "您已离线",
+ "body": "Crab Fit无法在离线状态下工作。
请确保您的设备已联网,然后重试。"
+ },
+ "error": {
+ "title": "找不到事件",
+ "body": "请检查您输入的链接是否有误。注意:为了保护您的隐私,事件会在3个月的不活跃之后被删除。"
+ },
+
+ "tabs": {
+ "you": "您的可用时间",
+ "you_tooltip": "要设置您的可用时间,请登录",
+ "group": "小组可用时间"
+ },
+
+ "group": {
+ "legend_tooltip": "点击高亮最多人选择的时间",
+ "info1": "您可以把鼠标悬浮在日历上或点击它来查看谁在这个时间有空,再次点击可以复制该时间段的详细信息。",
+ "info2": "点击下方的名称查看TA的信息",
+ "clipboard_message": "{{date}}有空的人"
+ },
+
+ "you": {
+ "info": "在下方的日历中拖动选择您的可用时间",
+ "select_all": "全选",
+ "select_none": "全不选",
+ "select_invert": "反向选择",
+
+ "google_cal": "同步到Google日历",
+ "outlook_cal": "同步到Outlook日历",
+ "recent_event": "与近期的事件同步",
+ "integration": {
+ "logout": "退出",
+ "close": "关闭",
+ "info": "导入操作会覆盖您当前的选择。",
+ "button": "导入可用时间"
+ }
+ }
+}
diff --git a/frontend/src/i18n/locales/zh-CN/help.json b/frontend/src/i18n/locales/zh-CN/help.json
new file mode 100644
index 000000000..8c5f00ff9
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-CN/help.json
@@ -0,0 +1,23 @@
+{
+ "name": "Crab Fit使用指南",
+
+ "p1": "Crab Fit是一个帮助您和朋友或同事规划事件事件的工具。您只需要创建事件、选中您的可用时间,把它分享出去,然后看看大家都什么时候有空!",
+ "p2": "下面是通过Crab Fit规划事件的详细步骤。",
+
+ "s1": "第1步",
+
+ "p3": "使用<1>crab.fit1>上的表格创建一个新的事件。您只需要填入事件发生的大概时间,而不是您个人的空闲时间。",
+ "p4": "我们以“Jenny的生日午宴”为例。Jenny想要在她生日——4月15日——的这一周举办午宴,但是她知道并不是所有的朋友都在4月15日中午有空。她也不想在周末聚餐。",
+ "p5": "Jenny还知道这是一个午宴,因此不能早于上午11点或者晚于下午5点。",
+
+ "s2": "第2步",
+
+ "p6": "在您刚创建的事件中填写您的可用时间。",
+ "p7": "在我们的例子中,Jenny现在要填写她的可用时间。她这一周除了星期二、星期三下午3点以后,以及星期五下午1点以前都有空。",
+
+ "s3": "第3步",
+
+ "p8": "把链接发给您的所有参与人员。",
+ "p9": "在Jenny把链接发给她的朋友们并请他们填写可用时间之后,她现在可以快速地在下面的热度图看到所有人的可用时间,然后选择那个颜色最突出的时间段,也就是对所有人都合适的时间段!",
+ "p10": "在这个例子中,16日下午1点到3点是Jenny的朋友都空闲的时间段。"
+}
diff --git a/frontend/src/i18n/locales/zh-CN/home.json b/frontend/src/i18n/locales/zh-CN/home.json
new file mode 100644
index 000000000..e55954156
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-CN/home.json
@@ -0,0 +1,59 @@
+{
+ "create": "CREATE A",
+ "recently_visited": "近期访问",
+ "form": {
+ "name": {
+ "label": "为您的事件起个名字!",
+ "sublabel": "或者留空,我们为您生成一个"
+ },
+ "dates": {
+ "label": "哪些日期可行?",
+ "sublabel": "拖拽选择",
+ "options": {
+ "specific": "特定日期",
+ "week": "按星期选择"
+ },
+ "tooltips": {
+ "previous": "上个月",
+ "next": "下个月",
+ "today": "今天"
+ },
+ "warnings": {
+ "date_in_past": "您选中了一些过去的日期"
+ }
+ },
+ "times": {
+ "label": "哪个时间段可行?",
+ "sublabel": "拖动选择时间范围"
+ },
+ "timezone": {
+ "label": "以及事件时区",
+ "defaultOption": "选择…"
+ },
+
+ "button": "创建",
+ "errors": {
+ "no_dates": "您没有选择任何日期。",
+ "same_times": "开始与结束时间不能相同。",
+ "no_time": "您没有选择任何时间。",
+ "unknown": "出错了,请稍候重试。"
+ }
+ },
+
+ "about": {
+ "name": "关于Crab Fit",
+ "events": "已创建事件数",
+ "availabilities": "已填入时间数",
+ "content": {
+ "p1": "Crab Fit帮助您把事件规划到对所有人都合适的时间。只需在上面创建一个时间,然后把链接发给所有参与的人。结果会实时更新,然后您将可以看到一个可用时间的热度图。<1/><2>了解Crab Fit的详细使用方法2>。",
+ "p3": "该网站由<1>Ben Grant1>创建。Crab Fit是您的时间规划问题的现代处理方案。",
+ "p4": "Crab Fit是一个开源网站。如果您发现了任何问题或者想要做出贡献,您可以访问<1>源代码仓库1>。使用Crab Fit代表您同意<3>隐私政策3>。.",
+ "p6": "为了保护您的隐私,每个事件会在不活跃3个月之后被删除,且所有的密码都经过安全加密。",
+ "p5": "如果Crab Fit帮到了您,请考虑捐赠一下,这样我们就能保持免费。🦀"
+ },
+ "chrome_extension": "获取Chrome扩展",
+ "firefox_extension": "获取Firefox扩展",
+ "safari_extension": "获取Safari扩展",
+ "android_app": "下载Android APP"
+ }
+}
diff --git a/frontend/src/i18n/locales/zh-CN/privacy.json b/frontend/src/i18n/locales/zh-CN/privacy.json
new file mode 100644
index 000000000..e939dc0ef
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-CN/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "隐私政策",
+ "translate": "查看你的语言的版本"
+}
diff --git a/frontend/src/i18n/locales/zh-TW/privacy.json b/frontend/src/i18n/locales/zh-TW/privacy.json
new file mode 100644
index 000000000..71307785e
--- /dev/null
+++ b/frontend/src/i18n/locales/zh-TW/privacy.json
@@ -0,0 +1,4 @@
+{
+ "name": "隱私權政策",
+ "translate": "使用常用語言查看"
+}