diff --git a/src/plugins/year_progress/render/year_progress.html b/src/plugins/year_progress/render/year_progress.html
index 8b03b6659..c4310fd35 100644
--- a/src/plugins/year_progress/render/year_progress.html
+++ b/src/plugins/year_progress/render/year_progress.html
@@ -5,14 +5,14 @@
{{year}}
-
PROGRESS
+
{{label_progress}}
- {{year_percent}}% DONE
- {{days_left}} DAYS LEFT
+ {{year_percent}}% {{label_done}}
+ {{days_left}} {{label_days_left}}
diff --git a/src/plugins/year_progress/settings.html b/src/plugins/year_progress/settings.html
new file mode 100644
index 000000000..832bb070b
--- /dev/null
+++ b/src/plugins/year_progress/settings.html
@@ -0,0 +1,34 @@
+
+
+
+
+
+
diff --git a/src/plugins/year_progress/year_progress.py b/src/plugins/year_progress/year_progress.py
index a26525c28..f56e37e66 100644
--- a/src/plugins/year_progress/year_progress.py
+++ b/src/plugins/year_progress/year_progress.py
@@ -5,6 +5,17 @@
import pytz
logger = logging.getLogger(__name__)
+
+LOCALE_DATA = {
+ "de": {"done": "FERTIG", "progress": "FORTSCHRITT", "days_left": "TAGE ÜBRIG"},
+ "en": {"done": "DONE", "progress": "PROGRESS", "days_left": "DAYS LEFT"},
+ "es": {"done": "HECHO", "progress": "PROGRESO", "days_left": "DÍAS RESTANTES"},
+ "fr": {"done": "TERMINÉ", "progress": "PROGRESSION", "days_left": "JOURS RESTANTS"},
+ "id": {"done": "SELESAI", "progress": "KEMAJUAN", "days_left": "HARI TERSISA"},
+ "it": {"done": "FATTO", "progress": "PROGRESSO", "days_left": "GIORNI RIMASTI"},
+ "nl": {"done": "KLAAR", "progress": "VOORTGANG", "days_left": "DAGEN OVER"},
+ "pt": {"done": "CONCLUÍDO", "progress": "PROGRESSO", "days_left": "DIAS RESTANTES"},
+}
class YearProgress(BasePlugin):
def generate_settings_template(self):
template_params = super().generate_settings_template()
@@ -27,11 +38,17 @@ def generate_image(self, settings, device_config):
days_left = (start_of_next_year - current_time).total_seconds() / (24 * 3600)
elapsed_days = (current_time - start_of_year).total_seconds() / (24 * 3600)
+ language = str(settings.get("language", "en")).strip().lower() or "en"
+ labels = LOCALE_DATA.get(language, LOCALE_DATA["en"])
+
template_params = {
"year": current_time.year,
"year_percent": round((elapsed_days / total_days) * 100),
"days_left": round(days_left),
- "plugin_settings": settings
+ "plugin_settings": settings,
+ "label_done": labels["done"],
+ "label_progress": labels["progress"],
+ "label_days_left": labels["days_left"],
}
image = self.render_image(dimensions, "year_progress.html", "year_progress.css", template_params)