Implement church career information retrieval and update related components: Add a new method in FalukantService to fetch church career details for characters, including current and approved office levels. Enhance DashboardWidget, StatusBar, and ChurchView components to handle new church-related socket events and display relevant information. Update localization files for church-related terms and error messages in English, German, and Spanish.

This commit is contained in:
Torsten Schulz (local)
2026-03-23 11:05:48 +01:00
parent ce36315b58
commit 57ab85fe10
10 changed files with 749 additions and 24 deletions

View File

@@ -1024,10 +1024,18 @@
"church": {
"title": "Kirche",
"tabs": {
"baptism": "Taufen",
"current": "Aktuelle Positionen",
"available": "Verfügbare Positionen",
"applications": "Bewerbungen"
},
"summary": {
"highestCurrentOffice": "Höchstes aktuelles Amt",
"availableApplications": "Mögliche Bewerbungen",
"supervisedApplications": "Zu entscheidende Bewerbungen",
"guidance": "Kirchenämter steigen stufenweise auf. Über Bewerbungen entscheidet in der Regel das nächsthöhere Amt; falls dort kein Spieler sitzt, kann später ein NPC entscheiden.",
"none": "Noch kein Kirchenamt"
},
"current": {
"office": "Amt",
"region": "Region",
@@ -1039,11 +1047,25 @@
"office": "Amt",
"region": "Region",
"supervisor": "Vorgesetzter",
"decision": "Entscheidung durch",
"decisionType": {
"entry": "Direkter Einstieg",
"player": "Spieler",
"npc": "NPC",
"interim": "Interim"
},
"seats": "Verfügbare Plätze",
"action": "Aktion",
"apply": "Bewerben",
"applySuccess": "Bewerbung erfolgreich eingereicht.",
"applyError": "Fehler beim Einreichen der Bewerbung.",
"errors": {
"characterNotFound": "Dein Charakter konnte nicht gefunden werden.",
"officeTypeNotFound": "Das Kirchenamt wurde nicht gefunden.",
"churchCareerTooLow": "Deine bisherige kirchliche Laufbahn reicht für dieses Amt noch nicht aus.",
"noAvailableSeats": "Für dieses Kirchenamt sind derzeit keine Plätze frei.",
"applicationAlreadyExists": "Für dieses Kirchenamt in dieser Region besteht bereits eine offene Bewerbung."
},
"none": "Keine verfügbaren Positionen."
},
"applications": {

View File

@@ -651,10 +651,18 @@
"church": {
"title": "Church",
"tabs": {
"baptism": "Baptism",
"current": "Current Positions",
"available": "Available Positions",
"applications": "Applications"
},
"summary": {
"highestCurrentOffice": "Highest current office",
"availableApplications": "Possible applications",
"supervisedApplications": "Applications to decide",
"guidance": "Church offices usually progress step by step. Applications are normally decided by the next higher office; if no player holds it, an NPC may later decide.",
"none": "No church office yet"
},
"current": {
"office": "Office",
"region": "Region",
@@ -666,11 +674,25 @@
"office": "Office",
"region": "Region",
"supervisor": "Supervisor",
"decision": "Decision by",
"decisionType": {
"entry": "Direct entry",
"player": "Player",
"npc": "NPC",
"interim": "Interim"
},
"seats": "Available Seats",
"action": "Action",
"apply": "Apply",
"applySuccess": "Application submitted successfully.",
"applyError": "Error submitting application.",
"errors": {
"characterNotFound": "Your character could not be found.",
"officeTypeNotFound": "The church office could not be found.",
"churchCareerTooLow": "Your previous church career is not yet sufficient for this office.",
"noAvailableSeats": "There are currently no free seats for this church office.",
"applicationAlreadyExists": "There is already an open application for this church office in this region."
},
"none": "No available positions."
},
"applications": {

View File

@@ -967,6 +967,64 @@
},
"church": {
"title": "Iglesia",
"tabs": {
"baptism": "Bautizos",
"current": "Cargos actuales",
"available": "Cargos disponibles",
"applications": "Solicitudes"
},
"summary": {
"highestCurrentOffice": "Cargo actual más alto",
"availableApplications": "Solicitudes posibles",
"supervisedApplications": "Solicitudes por decidir",
"guidance": "Los cargos eclesiásticos suelen ascender paso a paso. Las solicitudes normalmente las decide el cargo inmediatamente superior; si no hay jugador en ese puesto, más adelante puede decidir un NPC.",
"none": "Todavía sin cargo eclesiástico"
},
"current": {
"office": "Cargo",
"region": "Región",
"holder": "Titular",
"supervisor": "Superior",
"none": "No hay cargos actuales."
},
"available": {
"office": "Cargo",
"region": "Región",
"supervisor": "Superior",
"decision": "Decide",
"decisionType": {
"entry": "Acceso directo",
"player": "Jugador",
"npc": "NPC",
"interim": "Interino"
},
"seats": "Plazas disponibles",
"action": "Acción",
"apply": "Solicitar",
"applySuccess": "Solicitud enviada correctamente.",
"applyError": "Error al enviar la solicitud.",
"errors": {
"characterNotFound": "No se pudo encontrar tu personaje.",
"officeTypeNotFound": "No se encontró el cargo eclesiástico.",
"churchCareerTooLow": "Tu trayectoria eclesiástica todavía no es suficiente para este cargo.",
"noAvailableSeats": "Actualmente no hay plazas libres para este cargo eclesiástico.",
"applicationAlreadyExists": "Ya existe una solicitud abierta para este cargo eclesiástico en esta región."
},
"none": "No hay cargos disponibles."
},
"applications": {
"office": "Cargo",
"region": "Región",
"applicant": "Solicitante",
"date": "Fecha",
"action": "Acción",
"approve": "Aceptar",
"reject": "Rechazar",
"approveSuccess": "Solicitud aceptada.",
"rejectSuccess": "Solicitud rechazada.",
"decideError": "Error al tomar la decisión.",
"none": "No hay solicitudes."
},
"baptism": {
"title": "Bautizos",
"table": {