diff --git a/lang/ca.json b/lang/ca.json
index 2cb6cf875..9e97f95c9 100644
--- a/lang/ca.json
+++ b/lang/ca.json
@@ -1,25 +1,25 @@
{
"Lists": "Llistes",
"New E-mail": "Nou correu electrònic",
- "Manage users": "Gestionar usuaris",
+ "Manage users": "Gestió d'usuaris",
"Global": "Global",
"Please upload a file in Gramps XML (.gramps) format without media files.": "Penja un fitxer en format Gramps XML (.gramps) sense fitxers multimèdia.",
"Add custom type": "Afegeix un tipus personalitzat",
"Switch to default type": "Canviar al tipus predeterminat",
"Custom type": "Tipus personalitzat",
- "A new version of the app is available.": "Hi ha disponible una nova versió de l'aplicació.",
+ "A new version of the app is available.": "Nova versió de l'aplicació disponible.",
"Blog": "Bloc",
"Change E-mail": "Canviar el correu electrònic",
"Change password": "Canviar la contrasenya",
"Discard": "Descartar",
"History": "Historial",
"Show this dialog": "Mostra aquest diàleg",
- "To start using the blog, add a source with tag 'Blog'.": "Per a començar a utilitzar el bloc, afegeix una font amb l'etiqueta «Bloc».",
- "Create an admin account": "Crear un compte d'administrador",
- "Welcome to Gramps Web": "Benvingut a Gramps Web",
+ "To start using the blog, add a source with tag 'Blog'.": "Per començar a utilitzar el bloc, afegeix una font amb l'etiqueta «Bloc».",
+ "Create an admin account": "Crear un compte administratiu",
+ "Welcome to Gramps Web": "Us donem la benvinguda a Gramps Web",
"SMTP user": "Usuari SMTP",
"SMTP password": "Contrasenya SMTP",
- "From address": "Adreça origen",
+ "From address": "Adreça d'origen",
"Need help? Check out ": "Necessites ajuda? Consulta ",
"the documentation": "la documentació",
"filter": "filtre",
@@ -29,8 +29,8 @@
"Old password": "Contrasenya antiga",
"Recently browsed objects": "Objectes explorats recentment",
"Recently changed objects": "Objectes canviats recentment",
- "Select language": "Seleccionar idioma",
- "Show in tree": "Mostrar a l'arbre",
+ "Select language": "Canviar l'idioma",
+ "Show in tree": "Localitzar a l'arbre",
"User settings": "Configuració d'usuari",
"Anniversaries": "Aniversaris",
"Export": "Exportar",
@@ -48,8 +48,8 @@
"Optionally, enter existing IMAP credentials to enable e-mail notifications required e.g. for user registration.": "Opcionalment, introdueix les credencials IMAP existents per a habilitar les notificacions necessàries per correu electrònic, per exemple, per al registre d'usuaris.",
"SMTP host": "Amfitrió SMTP",
"SMTP port": "Port SMTP",
- "Upload family tree": "Pujar l'arbre genealògic",
- "Optionally, upload existing family tree data.": "Opcionalment, carregueu les dades existents de l'arbre genealògic.",
+ "Upload family tree": "Pujar arbre genealògic",
+ "Optionally, upload existing family tree data.": "Opcionalment, carregueu les dades de l'arbre genealògic existent.",
"Submit": "Enviar",
"Unsupported format": "Format no suportat",
"The Gramps package format (.gpkg) is currently not supported.": "El format de paquet Gramps (.gpkg) no està suportat actualment.",
@@ -62,8 +62,8 @@
"Register new account": "Registrar un compte nou",
"All": "Tots",
"Select at least one object type": "Selecciona almenys un tipus d'objecte",
- "unconfirmed": "sense confirmar",
- "disabled": "inhabilitat",
+ "unconfirmed": "Sense confirmar",
+ "disabled": "Desactivat",
"Guest": "Convidat",
"Member": "Membre",
"Contributor": "Col·laborador",
@@ -82,7 +82,7 @@
"Importing family tree": "S'està important l'arbre genealògic",
"Copy to clipboard": "Còpia al portaretalls",
"Update search index": "Actualitza l'índex de cerca",
- "Manually updating the search index is usually unnecessary, but it may become necessary after an upgrade.": "Normalment no és necessari actualitzar manualment l'índex de cerca, però pot ser'ho després d'una actualització.",
+ "Manually updating the search index is usually unnecessary, but it may become necessary after an upgrade.": "Actualitzar manualment l'índex de cerca sol ser innecessari, però pot ser necessari després d'una actualització.",
"New account registered successfully.": "Nou compte d'usuari registrat amb èxit.",
"A password reset link has been sent by e-mail.": "S'ha enviat un enllaç de restabliment de contrasenya per correu electrònic.",
"Registration link": "Enllaç de registre",
@@ -100,7 +100,7 @@
"Please confirm your e-mail address by clicking the link in the e-mail you received and then wait for the tree owner to activate your account.": "Si us plau, verifica la teva direcció de correu electrònic fent clic a l'enllaç que hauràs rebut i espera que el propietari de l'arbre activi el teu compte.",
"Administration": "Administració",
"Manage search index": "Gestiona l'índex de cerca",
- "Add a new user": "Afegeix un nou usuari",
+ "Add a new user": "Afegir un nou usuari",
"Edit user": "Edita usuari",
"Usage quotas": "Quotes d'utilització",
"Copy URL": "Copiar URL",
@@ -115,38 +115,38 @@
"Bookmark this": "Desar adreça d'interès",
"Remove bookmark": "Esborrar adreça d'interès",
"Administrator": "Administrador",
- "Text Recognition": "Reconeixement de Text",
- "Save as Note": "Desar com a Nota",
+ "Text Recognition": "Reconeixement de text",
+ "Save as Note": "Desar com a nota",
"Edit event type": "Modificar tipus d'esdeveniment",
- "Chromosome Browser": "Visualitzador de Cromosomes",
+ "Chromosome Browser": "Visualitzador de cromosomes",
"Matches": "Concordances",
"DNA": "ADN",
"Shared DNA": "ADN compartit",
- "Largest Segment": "Segment Més Gran",
+ "Largest Segment": "Segment més gran",
"%s media objects with missing file": "%s objectes multimèdia sense fitxer",
"%s media objects with missing checksum": "%s objectes multimèdia sense suma de verificació",
"Only places related to events": "Només llocs relacionats amb esdeveniments",
"Task": "Tasca",
"Tasks": "Tasques",
- "New Task": "Nova Tasca",
+ "New Task": "Nova tasca",
"Show in blog": "Mostrar al bloc",
- "Set Status": "Definir l'Estat",
- "Done": "Acabat",
+ "Set Status": "Establir estat",
+ "Done": "Fet",
"In Progress": "En curs",
"Open": "Obert",
"Attachments": "Adjunts",
- "Set Priority": "Establir Prioritat",
+ "Set Priority": "Establir prioritat",
"Common ancestors": "Avantpassats comuns",
"Blocked": "Bloquejat",
"Edit place type": "Modificar el tipus de lloc",
- "Shared Segments": "Segments Compartits",
+ "Shared Segments": "Segments compartits",
"Media file status": "Estat de fitxers multimèdia",
- "User group": "Grup d'usuaris",
+ "User group": "Paper",
"User Information": "Informació de l'usuari",
"First person": "Primera persona",
"Second person": "Segona persona",
"Raw match data": "Dades de concordança en brut",
- "Add new DNA match": "Afegeix una nova coincidència d'ADN",
+ "Add new DNA match": "Afegir nova coincidència d'ADN",
"Paste the raw data in the field above to see the preview.": "Enganxeu les dades en brut al camp de dalt per veure la vista prèvia.",
"Number of SNPs": "Nombre de SNPs",
"Side": "Costat",
@@ -171,7 +171,7 @@
"Do you really want to delete user \"%s\"?": "Realment voleu suprimir l'usuari \"%s\"?",
"Show more": "Mostra més",
"Upgrade database": "Actualitza la base de dades",
- "Clear the family tree by removing all existing objects. Optionally, select specific types of objects for deletion.": "Esborra l'arbre genealògic eliminant tots els objectes existents. Opcionalment, seleccioneu tipus específics d'objectes per suprimir-los.",
+ "Clear the family tree by removing all existing objects. Optionally, select specific types of objects for deletion.": "Esborra definitivament l'arbre genealògic suprimint tots els objectes existents. Opcionalment, seleccioni tipus específics d'objectes per a la supressió.",
"Please re-enter your password to continue.": "Torneu a introduir la vostra contrasenya per continuar.",
"Revisions": "Revisions",
"Add multiple objects": "Afegeix diversos objectes",
@@ -212,7 +212,7 @@
"Pending": "Pendent",
"Started": "Començat",
"simple": "simple",
- "Confirm Password": "Confirma Contrasenya",
+ "Confirm Password": "Confirma contrasenya",
"Register to Gramps Web": "Registra a la Web de Gramps",
"full-text": "text-sencer",
"semantic": "semàntic",
@@ -223,10 +223,11 @@
"Given Name First": "Nom de pila primer",
"Surname First": "Cognom primer",
"Toggle person outlines": "Commuta els contorns de les persones",
- "Log out": "Tanca la sessió",
+ "Log out": "Tancar sessió",
"Metadata": "Metadades",
- "To start building your family tree, add yourself as a person or import a family tree file.": "Per a començar a construir el vostre arbre genealògic, afegiu-vos com a persona o importeu un fitxer d'arbre genealògic.",
+ "To start building your family tree, add yourself as a person or import a family tree file.": "Per començar a construir el vostre arbre genealògic, afegiu-vos com a persona o importeu un fitxer d'arbre genealògic.",
"Historical Map": "Mapa històric",
"Base Map": "Mapa de base",
- "DNA matches": "Coincidències d'ADN"
+ "DNA matches": "Coincidències d'ADN",
+ "in": "a"
}
diff --git a/lang/es.json b/lang/es.json
index b07276a4e..986e9cc9e 100644
--- a/lang/es.json
+++ b/lang/es.json
@@ -46,7 +46,7 @@
"Enter the details for the admin user.": "Introduzca los datos del usuario administrador.",
"SMTP host": "Anfitrión SMTP",
"SMTP port": "Puerto SMTP",
- "Gramps Web base URL": "URL de la base de datos de Gramps",
+ "Gramps Web base URL": "URL base de Gramps Web",
"Upload family tree": "Cargar árbol genealógico",
"Optionally, upload existing family tree data.": "Opcionalmente, cargue los datos del árbol genealógico existente.",
"Need help? Check out ": "¿Necesita ayuda? Consulte ",
@@ -109,13 +109,13 @@
"Upload a ZIP archive with files for existing media objects.": "Carga un archivo ZIP con los archivos de los objetos multimedia existentes.",
"Import Media Files": "Importar los archivos multimedia",
"Set Status": "Establecer estado",
- "New Task": "Tarea nueva",
+ "New Task": "Nueva tarea",
"Show in blog": "Mostrar en el blog",
"Set Priority": "Establecer prioridad",
- "Open": "Abrir",
+ "Open": "Abierto",
"Registration link": "Enlace de registro",
"Event Year": "Año del evento",
- "Done": "Realizado",
+ "Done": "Hecho",
"Tasks": "Tareas",
"In Progress": "En curso",
"Attachments": "Archivos adjuntos",
diff --git a/lang/fr.json b/lang/fr.json
index 767d47027..1627b9eb1 100644
--- a/lang/fr.json
+++ b/lang/fr.json
@@ -224,5 +224,10 @@
"Log out": "Déconnexion",
"DNA matches": "Correspondances ADN",
"Toggle time filter for places": "Filtre temporel pour les lieux",
- "Regenerate semantic search index": "Régénérer l'index de recherche sémantique"
+ "Regenerate semantic search index": "Régénérer l'index de recherche sémantique",
+ "Toggle person outlines": "Activer/désactiver les contours des personnes",
+ "Base Map": "Carte de base",
+ "Historical Map": "Carte historique",
+ "To start building your family tree, add yourself as a person or import a family tree file.": "Pour commencer à créer votre arbre généalogique, ajoutez-vous en tant que personne ou importez un fichier d'arbre généalogique.",
+ "Metadata": "Metadata"
}
diff --git a/lang/he.json b/lang/he.json
index dbf728805..50b80bfc8 100644
--- a/lang/he.json
+++ b/lang/he.json
@@ -191,5 +191,18 @@
"To start building your family tree, add yourself as a person or import a family tree file.": "כדי להתחיל לבנות את אילן היוחסין שלך, יש להוסיף את עצמך כאדם או לייבא קובץ אילן יוחסין.",
"Regenerate semantic search index": "חילול מפתחות חיפוש סמנטי מחדש",
"Settings": "הגדרות",
- "Pending": "תלוי ועומד"
+ "Pending": "תלוי ועומד",
+ "Delete user": "למחוק משתמש",
+ "Do you really want to delete user \"%s\"?": "האם למחוק משתמש \"%s\"?",
+ "First person": "אדם ראשון",
+ "Second person": "אדם שני",
+ "Raw match data": "התאמת נתונים גולמית",
+ "Add new DNA match": "הוספת התאמת DNA חדשה",
+ "Paste the raw data in the field above to see the preview.": "הדבקת הנתונים הגולמיים לשדה שמעל כדי לצפות בתצוגה מקדימה.",
+ "Number of SNPs": "כמות SNP",
+ "Side": "צד",
+ "Chromosome": "כרומוזום",
+ "Start Position": "איות התחלתית",
+ "End Position": "איות סופית",
+ "DNA Match": "התאמת DNA"
}
diff --git a/lang/ka.json b/lang/ka.json
new file mode 100644
index 000000000..0967ef424
--- /dev/null
+++ b/lang/ka.json
@@ -0,0 +1 @@
+{}
diff --git a/lang/lv.json b/lang/lv.json
index f47e3bb5b..f6d14075b 100644
--- a/lang/lv.json
+++ b/lang/lv.json
@@ -1,3 +1,233 @@
{
- "A new version of the app is available.": "Pieejama jauna aplikācijas versija."
+ "A new version of the app is available.": "Pieejama jauna aplikācijas versija.",
+ "Blog": "Blogs",
+ "Change E-mail": "Mainīt E-pastu",
+ "Change password": "Mainīt paroli",
+ "Discard": "Atmest",
+ "History": "Vēsture",
+ "Lists": "Saraksti",
+ "Manage users": "Pārvaldīt lietotājus",
+ "Menu": "Izvēlne",
+ "New E-mail": "Jauns E-pasts",
+ "New password": "Jauna parole",
+ "Old password": "Vecā parole",
+ "Recently browsed objects": "Nesen pārlūkoti objekti",
+ "Recently changed objects": "Nesen mainītie objekti",
+ "Select language": "Izvēlieties valodu",
+ "Show in tree": "Rādīt dzimtas kokā",
+ "User settings": "Lietotāja iestatījumi",
+ "Anniversaries": "Jubilejas",
+ "Export": "Eksportēt",
+ "Search": "Meklēt",
+ "Navigation": "Navigācija",
+ "Global": "Globāls",
+ "Edit coordinates": "Rediģēt koordinātas",
+ "Search %s": "Meklēt %s",
+ "Latest Blog Post": "Jaunākais Bloga Ieraksts",
+ "Align the image": "Izlīdzināt attēlu",
+ "Select a point on the map": "Atlasiet punktu kartē",
+ "Select an existing citation": "Atlasiet esošu citātu",
+ "Place Hierarchy": "Vietas Hierarhija",
+ "Keyboard Shortcuts": "Tastatūras Īsceļi",
+ "Show this dialog": "Rādīt šo dialoglodziņu",
+ "To start using the blog, add a source with tag 'Blog'.": "Lai sāktu lietot blogu, pievienojiet avotu ar atzīmi 'Blogs'.",
+ "Welcome to Gramps Web": "Laipni lūdzam Gramps Web",
+ "Create an admin account": "Izveidojiet administratora kontu",
+ "Add custom type": "Pievienot pielāgotu tipu",
+ "Enter the details for the admin user.": "Ievadiet administratora lietotāja informāciju.",
+ "Optionally, enter existing IMAP credentials to enable e-mail notifications required e.g. for user registration.": "Pēc izvēles ievadiet esošos IMAP akreditācijas datus, lai iespējotu e-pasta paziņojumus (piemēram, lietotāju reģistrācijai).",
+ "SMTP host": "SMTP resursdators",
+ "SMTP port": "SMTP ports",
+ "SMTP user": "SMTP lietotājs",
+ "SMTP password": "SMTP parole",
+ "From address": "Nosūtītāja adrese",
+ "Gramps Web base URL": "Gramps Web pamata URL",
+ "Upload family tree": "Augšupielādēt dzimtas koku",
+ "Optionally, upload existing family tree data.": "Pēc izvēles augšupielādējiet esošos dzimtas koka datus.",
+ "Need help? Check out ": "Nepieciešama palīdzība? Skatiet ",
+ "the documentation": "dokumentāciju",
+ "Submit": "Iesniegt",
+ "Unsupported format": "Neatbalstīts formāts",
+ "The Gramps package format (.gpkg) is currently not supported.": "Gramps pakotnes formāts (.gpkg) pašlaik netiek atbalstīts.",
+ "Please upload a file in Gramps XML (.gramps) format without media files.": "Lūdzu, augšupielādējiet failu Gramps XML (.gramps) formātā bez multivides failiem.",
+ "If you intend to synchronize an existing Gramps database with Gramps Web, use the Gramps XML (.gramps) format instead.": "Ja plānojat sinhronizēt esošu Gramps datubāzi ar Gramps Web, izmantojiet Gramps XML (.gramps) formātu.",
+ "Username": "Lietotājvārds",
+ "Password": "Parole",
+ "login": "pieteikties",
+ "Lost password?": "Aizmirsāt paroli?",
+ "Register new account": "Reģistrēt jaunu kontu",
+ "All": "Visi",
+ "Select at least one object type": "Izvēlieties vismaz vienu objekta tipu",
+ "filter": "filtrs",
+ "Properties": "Rekvizīti",
+ "unconfirmed": "neapstiprināts",
+ "disabled": "atspējots",
+ "Guest": "Viesis",
+ "Member": "Biedrs",
+ "Contributor": "Dalībnieks",
+ "Editor": "Redaktors",
+ "Owner": "Īpašnieks",
+ "Switch to default type": "Pārslēgties uz noklusējuma tipu",
+ "Custom type": "Pielāgots tips",
+ "Replace file": "Aizstāt failu",
+ "Year": "Gads",
+ "Month": "Mēnesis",
+ "Day": "Diena",
+ "Administration": "Administrēšana",
+ "Update search index": "Atjaunināt meklēšanas indeksu",
+ "Manually updating the search index is usually unnecessary, but it may become necessary after an upgrade.": "Manuāla meklēšanas indeksa atjaunošana parasti nav nepieciešama, taču tā var būt vajadzīga pēc atjaunināšanas.",
+ "Stop editing": "Pārtraukt rediģēšanu",
+ "Clear all filters": "Noņemt visus filtrus",
+ "Sort": "Kārtot",
+ "Add Tag": "Pievienot Birku",
+ "Manage search index": "Pārvaldīt meklēšanas indeksu",
+ "Add a new user": "Pievienot jaunu lietotāju",
+ "Edit user": "Rediģēt lietotāju",
+ "Import user accounts": "Importēt lietotāju kontus",
+ "Export user details": "Eksportēt lietotāju datus",
+ "Export your family tree": "Eksportēt savu dzimtas koku",
+ "Export your media files": "Eksportēt savus multivides failus",
+ "Generate a ZIP archive with all media files.": "Izveidot ZIP arhīvu ar visiem multivides failiem.",
+ "Error parsing JSON file": "Kļūda, analizējot JSON failu",
+ "E-mail settings": "E-pasta iestatījumi",
+ "Creating owner account": "Tiek izveidots īpašnieka konts",
+ "Storing configuration": "Konfigurācijas saglabāšana",
+ "Importing family tree": "Dzimtas koka importēšana",
+ "Copy to clipboard": "Kopēt starpliktuvē",
+ "Usage quotas": "Lietošanas kvotas",
+ "Not authorized": "Nav autorizēts",
+ "This e-mail address is already in use": "Šī e-pasta adrese jau tiek izmantota",
+ "This user name is already in use": "Šis lietotājvārds jau tiek izmantots",
+ "Already have an account?": "Jau ir konts?",
+ "reset password": "atjaunot paroli",
+ "New account registered successfully.": "Jauns konts veiksmīgi reģistrēts.",
+ "Please confirm your e-mail address by clicking the link in the e-mail you received and then wait for the tree owner to activate your account.": "Lūdzu, apstipriniet savu e-pasta adresi, noklikšķinot uz saites saņemtajā e-pastā, un pēc tam gaidiet, līdz dzimtas koka īpašnieks aktivizēs jūsu kontu.",
+ "A password reset link has been sent by e-mail.": "Paroles atjaunošanas saite ir nosūtīta uz e-pastu.",
+ "Copy URL": "Kopēt URL",
+ "Upload a ZIP archive with files for existing media objects.": "Augšupielādējiet ZIP arhīvu ar failiem esošajiem multivides objektiem.",
+ "Import Media Files": "Importēt multivides failus",
+ "Delete this object?": "Dzēst šo objektu?",
+ "Object %s deleted.": "Objekts %s ir dzēsts.",
+ "Registration link": "Reģistrācijas saite",
+ "Task": "Uzdevums",
+ "Tasks": "Uzdevumi",
+ "New Task": "Jauns Uzdevums",
+ "Show in blog": "Rādīt blogā",
+ "Show more": "Rādīt vairāk",
+ "Set Priority": "Iestatīt Prioritāti",
+ "Set Status": "Iestatīt Statusu",
+ "Done": "Pabeigts",
+ "In Progress": "Procesā",
+ "Open": "Atvērts",
+ "Attachments": "Pielikumi",
+ "Event Year": "Notikuma Gads",
+ "Common ancestors": "Kopīgie senči",
+ "Blocked": "Bloķēts",
+ "Edit event type": "Rediģēt notikuma tipu",
+ "Edit place type": "Rediģēt vietas tipu",
+ "Text Recognition": "Teksta Atpazīšana",
+ "Save as Note": "Saglabāt kā Piezīmi",
+ "DNA": "DNS",
+ "Matches": "Sakritības",
+ "Chromosome Browser": "Hromosomu pārlūks",
+ "Shared DNA": "Kopīgā DNS",
+ "Shared Segments": "Kopīgie Segmenti",
+ "Largest Segment": "Lielākais Segments",
+ "Bookmark this": "Pievienot grāmatzīmei",
+ "Remove bookmark": "Noņemt grāmatzīmi",
+ "Ancestor frequency": "Senču biežums",
+ "Administrator": "Administrators",
+ "%s media objects with missing file": "%s multivides objektiem trūkst faila",
+ "%s media objects with missing checksum": "%s multivides objektiem trūkst kontrolsummas",
+ "Only places related to events": "Tikai ar notikumiem saistītas vietas",
+ "Media file status": "Multivides failu statuss",
+ "This tool checks the database for integrity problems, fixing the problems it can.": "Šis rīks pārbauda datubāzi, vai nav integritātes problēmu, un izlabo tās, kuras iespējams.",
+ "Upgrade database": "Atjaunināt datubāzi",
+ "The Family Tree you are trying to load is in a schema version not supported by this version of Gramps Web. Therefore you cannot load this Family Tree without upgrading its schema. This action cannot be undone.": "Dzimtas koks, kuru mēģināt ielādēt, ir shēmas versijā, kuru šī Gramps Web versija neatbalsta. To nevar ielādēt, neveicot shēmas jaunināšanu. Šo darbību nevar atsaukt.",
+ "The Family Tree you are trying to load is in a schema version not supported by this version of Gramps Web. Therefore you cannot load this Family Tree until the tree administrator has upgraded its schema.": "Dzimtas koks, kuru mēģināt ielādēt, ir shēmas versijā, kuru šī Gramps Web versija neatbalsta. To nevar ielādēt, līdz koka administrators nebūs veicis shēmas jaunināšanu.",
+ "Wrong username or password": "Nepareizs lietotājvārds vai parole",
+ "Password successfully updated": "Parole veiksmīgi atjaunināta",
+ "E-mail successfully updated": "E-pasts veiksmīgi atjaunināts",
+ "Danger Zone": "Bīstamā Zona",
+ "Password is required": "Nepieciešama parole",
+ "Delete all objects": "Dzēst visus objektus",
+ "Clear the family tree by removing all existing objects. Optionally, select specific types of objects for deletion.": "Notīriet dzimtas koku, noņemot visus esošos objektus. Pēc izvēles izvēlieties konkrētus objektu tipus dzēšanai.",
+ "Please re-enter your password to continue.": "Lūdzu, atkārtoti ievadiet paroli, lai turpinātu.",
+ "Revisions": "Izmaiņas",
+ "Add multiple objects": "Pievienot vairākus objektus",
+ "Delete Person": "Dzēst Personu",
+ "Delete Family": "Dzēst Ģimeni",
+ "Delete Event": "Dzēst Notikumu",
+ "Delete Place": "Dzēst Vietu",
+ "Delete Source": "Dzēst Avotu",
+ "Delete Citation": "Dzēst Citātu",
+ "Delete Repository": "Dzēst Repozitoriju",
+ "Delete Note": "Dzēst Piezīmi",
+ "Delete Media": "Dzēst Multividi",
+ "Delete Tag": "Dzēst Birku",
+ "Edit Tag": "Rediģēt Birku",
+ "Revision History": "Izmaiņu Vēsture",
+ "simple": "vienkāršs",
+ "Are you sure?": "Vai esat pārliecināts?",
+ "This action cannot be undone.": "Šo darbību nevar atsaukt.",
+ "Yes": "Jā",
+ "Toggle time filter for places": "Pārslēgt laika filtru vietām",
+ "The search index needs to be rebuilt.": "Meklēšanas indekss ir jāizveido no jauna.",
+ "Ask something about your ancestors": "Uzdodiet jautājumu par saviem senčiem",
+ "Chat messages": "Tērzēšanas ziņojumi",
+ "Manage semantic search index": "Pārvaldīt semantisko meklēšanas indeksu",
+ "Update semantic search index": "Atjaunināt semantisko meklēšanas indeksu",
+ "Updating the semantic search index requires substantial time and computational resources. Run this operation only when necessary.": "Semantiskā meklēšanas indeksa atjaunināšanai nepieciešams daudz laika un skaitļošanas resursu. Izpildiet šo darbību tikai tad, ja tas ir nepieciešams.",
+ "User groups allowed to use AI chat:": "Lietotāju grupas, kurām atļauts izmantot AI tērzēšanu:",
+ "Owners and administrators": "Īpašnieki un administratori",
+ "Editor and above": "Redaktors un augstāk",
+ "Contributor and above": "Dalībnieks un augstāk",
+ "Member and above": "Biedrs un augstāk",
+ "Everybody": "Visi",
+ "Nobody": "Neviens",
+ "User group": "Lietotāju grupa",
+ "User Information": "Lietotāja Informācija",
+ "Tree Information": "Koka Informācija",
+ "Regenerate semantic search index": "Pārģenerēt semantisko meklēšanas indeksu",
+ "Settings": "Iestatījumi",
+ "Pending": "Gaida apstiprinājumu",
+ "Started": "Uzsākts",
+ "Delete user": "Dzēst lietotāju",
+ "Do you really want to delete user \"%s\"?": "Vai tiešām vēlaties dzēst lietotāju \"%s\"?",
+ "First person": "Pirmais cilvēks",
+ "Second person": "Otrais cilvēks",
+ "Raw match data": "Neapstrādāti sakritības dati",
+ "Add new DNA match": "Pievienot jaunu DNS atbilstību",
+ "Paste the raw data in the field above to see the preview.": "Ielīmējiet neapstrādātos datus laukā augstāk, lai redzētu priekšskatījumu.",
+ "Number of SNPs": "SNP skaits",
+ "Side": "Puse",
+ "Chromosome": "Hromosoma",
+ "Start Position": "Sākuma Pozīcija",
+ "End Position": "Beigu Pozīcija",
+ "DNA Match": "DNS Atbilstība",
+ "DNA match with %s deleted.": "DNS atbilstība ar %s ir dzēsta.",
+ "Paste text or drop a file here": "Ielīmējiet tekstu vai ievelciet failu šeit",
+ "No DNA matches found.": "DNS atbilstības nav atrastas.",
+ "No DNA matches detected in the data provided.": "Sniegtajos datos DNS atbilstības nav konstatētas.",
+ "Max Degree of Separation": "Maksimālā Attāluma Pakāpe",
+ "Max Number of Images displayed": "Maksimālais Attēlu Skaits, kas parādīts",
+ "Length": "Garums",
+ "Confirm Password": "Apstipriniet Paroli",
+ "Passwords do not match.": "Paroles nesakrīt.",
+ "Register to Gramps Web": "Reģistrēties Gramps Web",
+ "Log in to Gramps Web": "Pieteikties Gramps Web",
+ "Invalid E-mail address": "Nederīga e-pasta adrese",
+ "full-text": "pilnteksta",
+ "semantic": "semantiskais",
+ "Name Display Format": "Vārda Parādīšanas Formāts",
+ "Surname First": "Uzvārds Vispirms",
+ "Given Name First": "Vārds Vispirms",
+ "Toggle person outlines": "Pārslēgt personu kontūras",
+ "Log out": "Izrakstīties",
+ "in": "iekš",
+ "DNA matches": "DNS atbilstības",
+ "Base Map": "Pamatkarte",
+ "Historical Map": "Vēsturiskā karte",
+ "To start building your family tree, add yourself as a person or import a family tree file.": "Lai sāktu veidot savu dzimtas koku, pievienojiet sevi kā personu vai importējiet dzimtas koka failu.",
+ "Metadata": "Metadati"
}
diff --git a/src/components/GrampsjsEvent.js b/src/components/GrampsjsEvent.js
index 45a4e533c..1a0d0843b 100644
--- a/src/components/GrampsjsEvent.js
+++ b/src/components/GrampsjsEvent.js
@@ -107,7 +107,10 @@ export class GrampsjsEvent extends GrampsjsObject {
if (obj === undefined) {
return ''
}
- return `${obj?.name_given || '…'} ${obj?.name_surname || '…'}`
+ return (
+ obj.name_display ||
+ `${obj?.name_given || '…'} ${obj?.name_surname || '…'}`
+ )
}
// eslint-disable-next-line class-methods-use-this
diff --git a/src/components/GrampsjsFamily.js b/src/components/GrampsjsFamily.js
index 86f32b2d9..304d0953e 100644
--- a/src/components/GrampsjsFamily.js
+++ b/src/components/GrampsjsFamily.js
@@ -48,10 +48,15 @@ export class GrampsjsFamily extends GrampsjsObject {
_renderTitle() {
return html`
- ${this.data?.profile?.father?.name_given || '…'}
- ${this.data?.profile?.father?.name_surname || '…'} &
- ${this.data?.profile?.mother?.name_given || '…'}
- ${this.data?.profile?.mother?.name_surname || '…'}
+ ${this.data?.profile?.father?.name_display ||
+ `${this.data?.profile?.father?.name_given || '…'} ${
+ this.data?.profile?.father?.name_surname || '…'
+ }`}
+ &
+ ${this.data?.profile?.mother?.name_display ||
+ `${this.data?.profile?.mother?.name_given || '…'} ${
+ this.data?.profile?.mother?.name_surname || '…'
+ }`}
`
}
diff --git a/src/components/GrampsjsFormEditPlaceName.js b/src/components/GrampsjsFormEditPlaceName.js
index 1237c8b70..e17e89c52 100644
--- a/src/components/GrampsjsFormEditPlaceName.js
+++ b/src/components/GrampsjsFormEditPlaceName.js
@@ -5,9 +5,22 @@ Form for adding a new event reference
import {html} from 'lit'
import './GrampsjsFormString.js'
+import './GrampsjsFormSelectDate.js'
import {GrampsjsObjectForm} from './GrampsjsObjectForm.js'
+import {emptyDate} from '../util.js'
class GrampsjsFormEditPlaceName extends GrampsjsObjectForm {
+ static get properties() {
+ return {
+ showDateInput: {type: Boolean},
+ }
+ }
+
+ constructor() {
+ super()
+ this.showDateInput = false
+ }
+
renderForm() {
return html`
+
+
-
-
${JSON.stringify(this.data, null, 2)}
- }
-
- handleGender(e) {
- this.data = {...this.data, gender: parseInt(e.target.value, 10)}
- }
-
- _handleFormData(e) {
- super._handleFormData(e)
- const originalTarget = e.composedPath()[0]
- if (originalTarget.id === 'primary-name') {
- this.data = {...this.data, primary_name: e.detail.data}
- }
- if (originalTarget.id === 'birth-date') {
- this.data = {
- ...this.data,
- birth: {...this.data.birth, date: e.detail.data ?? emptyDate},
- }
- }
- if (originalTarget.id === 'birth-place-list') {
- this.data = {
- ...this.data,
- birth: {...this.data.birth, place: e.detail.data[0]},
- }
- }
- if (originalTarget.id === 'death-date') {
- this.data = {
- ...this.data,
- death: {...this.data.death, date: e.detail.data ?? emptyDate},
- }
- }
- if (originalTarget.id === 'death-place-list') {
- this.data = {
- ...this.data,
- death: {...this.data.death, place: e.detail.data[0]},
- }
- }
- this.checkFormValidity()
- }
-
- _processedData() {
- const handlePerson = makeHandle()
- const handleBirth = makeHandle()
- const handleDeath = makeHandle()
- const birthString = this.translateTypeName(false, 'event_types', 'Birth')
- const deathString = this.translateTypeName(false, 'event_types', 'Death')
- const {birth, death, ...person} = this.data
- const hasBirth = birth.place || (birth?.date && !dateIsEmpty(birth.date))
- const hasDeath = death.place || (death?.date && !dateIsEmpty(birth.date))
- if (!hasBirth && !hasDeath) {
- return [person]
- }
- if (!hasDeath) {
- return [
- {
- ...person,
- handle: handlePerson,
- event_ref_list: [{_class: 'EventRef', ref: handleBirth}],
- birth_ref_index: 0,
- },
- {
- ...birth,
- _class: 'Event',
- handle: handleBirth,
- type: birthString,
- citation_list: person.citation_list ?? [],
- },
- ]
- }
- if (!hasBirth) {
- return [
- {
- ...person,
- handle: handlePerson,
- event_ref_list: [{_class: 'EventRef', ref: handleDeath}],
- death_ref_index: 0,
- },
- {
- ...death,
- _class: 'Event',
- handle: handleDeath,
- type: deathString,
- citation_list: person.citation_list ?? [],
- },
- ]
- }
- return [
- {
- ...person,
- handle: handlePerson,
- event_ref_list: [
- {_class: 'EventRef', ref: handleBirth},
- {_class: 'EventRef', ref: handleDeath},
- ],
- birth_ref_index: 0,
- death_ref_index: 1,
- },
- {
- ...birth,
- _class: 'Event',
- handle: handleBirth,
- type: birthString,
- citation_list: person.citation_list ?? [],
- },
- {
- ...death,
- _class: 'Event',
- handle: handleDeath,
- type: deathString,
- citation_list: person.citation_list ?? [],
- },
- ]
}
_submit() {
@@ -224,23 +41,6 @@ export class GrampsjsViewNewPerson extends GrampsjsViewNewObject {
}
})
}
-
- checkFormValidity() {
- let valid = true
- this.shadowRoot
- .querySelectorAll('grampsjs-form-select-date')
- .forEach(element => {
- if (!element.isValid()) {
- valid = false
- }
- })
- this.isFormValid = valid
- }
-
- _reset() {
- super._reset()
- this.data = dataDefault
- }
}
window.customElements.define('grampsjs-view-new-person', GrampsjsViewNewPerson)
diff --git a/src/views/GrampsjsViewNewPlace.js b/src/views/GrampsjsViewNewPlace.js
index de7455656..8a18f4e9a 100644
--- a/src/views/GrampsjsViewNewPlace.js
+++ b/src/views/GrampsjsViewNewPlace.js
@@ -41,6 +41,7 @@ export class GrampsjsViewNewPlace extends GrampsjsViewNewObject {
id="select-place-type"
.appState="${this.appState}"
?loadingTypes="${this.loadingTypes}"
+ defaultValue="Unknown"
typeName="place_types"
.types="${this.types}"
.typesLocale="${this.typesLocale}"
@@ -65,7 +66,6 @@ export class GrampsjsViewNewPlace extends GrampsjsViewNewObject {
${this.renderButtons()}
`
- // ${JSON.stringify(this.data, null, 2)}
}
handleName(e) {
diff --git a/src/views/GrampsjsViewObject.js b/src/views/GrampsjsViewObject.js
index 3f2e72711..a02ef118a 100644
--- a/src/views/GrampsjsViewObject.js
+++ b/src/views/GrampsjsViewObject.js
@@ -452,6 +452,23 @@ export class GrampsjsViewObject extends GrampsjsView {
)
} else if (e.detail.action === 'updateName') {
this.updateName(e.detail.data, this._data)
+ } else if (e.detail.action === 'addPlaceName') {
+ this.addObject(e.detail.data, this._data, this._className, 'alt_names')
+ } else if (e.detail.action === 'updatePlaceName') {
+ this.updateObjectByIndex(
+ e.detail.index,
+ e.detail.data,
+ this._data,
+ this._className,
+ 'alt_names'
+ )
+ } else if (e.detail.action === 'delPlaceName') {
+ this.delObjectByIndex(
+ e.detail.index,
+ this._data,
+ this._className,
+ 'alt_names'
+ )
} else if (e.detail.action === 'delChildRef') {
this.delObject(
e.detail.handle,
@@ -633,7 +650,7 @@ export class GrampsjsViewObject extends GrampsjsView {
}
// add an object to a list of objects
- // e.g. an event references to the event_ref_list
+ // e.g. an event reference to the event_ref_list
addObject(data, obj, objType, prop) {
return this._updateObject(obj, objType, _obj => {
_obj[prop] = [..._obj[prop], data]