feat(ui): localize imprint page

Add 25 imprint.* translation keys to en.json and update imprint.html
to use _() helpers for all user-visible strings. Static business data
(company name, address, contact details, VAT number) remain hardcoded
as proper nouns that must not be altered by translation.

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2026-03-15 10:23:33 +00:00
parent 23d952235e
commit 1f6a3a5803
2 changed files with 46 additions and 21 deletions
+21 -21
View File
@@ -1,13 +1,13 @@
{% extends "base.html" %}
{% block title %}Imprint - DocuElevate{% endblock %}
{% block title %}{{ _("imprint.page_title") }}{% endblock %}
{% block content %}
<div class="container mx-auto px-4 py-8 max-w-4xl">
<h1 class="text-4xl font-bold mb-6">Imprint</h1>
<p class="text-sm text-gray-500 mb-8">Information according to § 5 TMG (German Telemedia Act)</p>
<h1 class="text-4xl font-bold mb-6">{{ _("imprint.heading") }}</h1>
<p class="text-sm text-gray-500 mb-8">{{ _("imprint.subtitle") }}</p>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Service Provider</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.provider_heading") }}</h2>
<p class="text-gray-700 mb-3">
<strong>Christian Louis IT Beratung</strong><br>
Alter Steinweg 3<br>
@@ -17,7 +17,7 @@
</div>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Contact Information</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.contact_heading") }}</h2>
<p class="text-gray-700 mb-3">
Fax: +49 40 97074609<br>
Email: christianlouis@gmail.com<br>
@@ -26,16 +26,16 @@
</div>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Business Registration</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.business_registration_heading") }}</h2>
<p class="text-gray-700 mb-3">
VAT Identification Number according to §27a Value Added Tax Act: DE202899017
{{ _("imprint.business_registration_vat") }} DE202899017
</p>
</div>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Responsible for Content</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.responsible_content_heading") }}</h2>
<p class="text-gray-700 mb-3">
According to § 55 Abs. 2 RStV:<br>
{{ _("imprint.responsible_content_rstv") }}<br>
Christian Krakau-Louis<br>
Alter Steinweg 3<br>
20459 Hamburg<br>
@@ -44,36 +44,36 @@
</div>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Legal Notices</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.legal_heading") }}</h2>
<p class="text-gray-700 mb-3">
Despite careful content control, we assume no liability for the content of external links. The operators of the linked pages are solely responsible for their content.
{{ _("imprint.legal_liability") }}
</p>
<p class="text-gray-700 mb-3">
All content on this website is protected by copyright. Any use outside the limits of copyright law requires the written consent of the respective author or creator.
{{ _("imprint.legal_copyright") }}
</p>
</div>
<div class="bg-white shadow rounded-lg p-6 mb-6">
<h2 class="text-2xl font-semibold mb-4">Online Dispute Resolution</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.dispute_heading") }}</h2>
<p class="text-gray-700 mb-3">
The European Commission provides a platform for online dispute resolution (OS):
{{ _("imprint.dispute_p1") }}
<a href="https://ec.europa.eu/consumers/odr/" target="_blank" rel="noopener noreferrer" class="text-blue-600 hover:underline">https://ec.europa.eu/consumers/odr/</a>
</p>
<p class="text-gray-700 mb-3">
We are not willing or obligated to participate in dispute resolution proceedings before a consumer arbitration board.
{{ _("imprint.dispute_p2") }}
</p>
</div>
<div class="bg-white shadow rounded-lg p-6">
<h2 class="text-2xl font-semibold mb-4">Related Policies</h2>
<h2 class="text-2xl font-semibold mb-4">{{ _("imprint.policies_heading") }}</h2>
<p class="text-gray-700 mb-3">
Our service is governed by the following policies:
{{ _("imprint.policies_intro") }}
</p>
<ul class="list-disc list-inside text-gray-700 ml-4 mb-3">
<li><a href="/terms" class="text-blue-600 hover:underline">Terms of Service</a> - Rules for using DocuElevate</li>
<li><a href="/privacy" class="text-blue-600 hover:underline">Privacy Policy</a> - How we handle your data</li>
<li><a href="/cookies" class="text-blue-600 hover:underline">Cookie Policy</a> - Information about cookies we use</li>
<li><a href="/license" class="text-blue-600 hover:underline">License Information</a> - How our software is licensed</li>
<li><a href="/terms" class="text-blue-600 hover:underline">{{ _("imprint.policies_terms_label") }}</a> - {{ _("imprint.policies_terms_desc") }}</li>
<li><a href="/privacy" class="text-blue-600 hover:underline">{{ _("imprint.policies_privacy_label") }}</a> - {{ _("imprint.policies_privacy_desc") }}</li>
<li><a href="/cookies" class="text-blue-600 hover:underline">{{ _("imprint.policies_cookie_label") }}</a> - {{ _("imprint.policies_cookie_desc") }}</li>
<li><a href="/license" class="text-blue-600 hover:underline">{{ _("imprint.policies_license_label") }}</a> - {{ _("imprint.policies_license_desc") }}</li>
</ul>
</div>
</div>
+25
View File
@@ -517,6 +517,31 @@
"help.workflows_step_5_create": "Save new documents will be processed through this pipeline automatically.",
"help.workflows_typical_steps": "Typical Steps",
"help.workflows_what_is": "What is a Pipeline?",
"imprint.business_registration_heading": "Business Registration",
"imprint.business_registration_vat": "VAT Identification Number according to §27a Value Added Tax Act:",
"imprint.contact_heading": "Contact Information",
"imprint.dispute_heading": "Online Dispute Resolution",
"imprint.dispute_p1": "The European Commission provides a platform for online dispute resolution (OS):",
"imprint.dispute_p2": "We are not willing or obligated to participate in dispute resolution proceedings before a consumer arbitration board.",
"imprint.heading": "Imprint",
"imprint.legal_copyright": "All content on this website is protected by copyright. Any use outside the limits of copyright law requires the written consent of the respective author or creator.",
"imprint.legal_heading": "Legal Notices",
"imprint.legal_liability": "Despite careful content control, we assume no liability for the content of external links. The operators of the linked pages are solely responsible for their content.",
"imprint.page_title": "Imprint - DocuElevate",
"imprint.policies_cookie_desc": "Information about cookies we use",
"imprint.policies_cookie_label": "Cookie Policy",
"imprint.policies_heading": "Related Policies",
"imprint.policies_intro": "Our service is governed by the following policies:",
"imprint.policies_license_desc": "How our software is licensed",
"imprint.policies_license_label": "License Information",
"imprint.policies_privacy_desc": "How we handle your data",
"imprint.policies_privacy_label": "Privacy Policy",
"imprint.policies_terms_desc": "Rules for using DocuElevate",
"imprint.policies_terms_label": "Terms of Service",
"imprint.provider_heading": "Service Provider",
"imprint.responsible_content_heading": "Responsible for Content",
"imprint.responsible_content_rstv": "According to § 55 Abs. 2 RStV:",
"imprint.subtitle": "Information according to § 5 TMG (German Telemedia Act)",
"index.badge_intelligent": "Intelligent Document Processing",
"index.button_browse_files": "Browse Files",
"index.button_upload": "Upload",