Compare commits

...

2 Commits

Author SHA1 Message Date
petru 7f0a7db812 Modified - [locale] [i18n] Synchronized the locale files with the current installer and sticky-layout strings.
release-nightly / nightly-binary (push) Has been cancelled
release-nightly / nightly-container (push) Has been cancelled
- 1 - I updated all translated `options/locale/locale_*.json` files so `install.install_btn_confirm` now accepts a `%s` site-name placeholder instead of hardcoding `Gitea`, matching the current installer button behavior.
- 2 - I added the missing `footer.show`, `footer.hide`, `install.smtp_from_name_placeholder`, and `install.smtp_from_address_placeholder` keys across the locale files, using the current English fallback text where no localized variant was available in this change.
2026-05-21 03:11:30 +03:00
petru b1db0705d8 Modified - [install] [mailer] Split the installer mail sender field into display name and address, auto-filled the sender name from Site Title, and reused that site name in test mails.
- 1 - I updated `services/forms/user_form.go`, `routers/install/install.go`, `templates/install.tmpl`, `options/locale/locale_en-US.json`, and `options/locale/locale_ro-RO.json` so the installer now edits `Send Email As` through separate sender-name and sender-address inputs on the same line, auto-fills the sender name from the part of `Site Title` before `:`, or from the first word when no `:` is present, and composes `[mailer] FROM = site_name <mail@address>` server-side during test mail and install submission.
- 2 - I updated `services/mailer/mail.go` so the installer test mail subject/body reuse that derived site name instead of the hardcoded `Gitea` label.
- 3 - I added targeted coverage in `routers/install/routes_test.go` and `services/mailer/mail_test.go` for the derived site-name logic and the composed installer `FROM` address.
- 4 - I updated `routers/install/install.go`, `templates/install.tmpl`, and the installer locale strings so the primary install button now renders `Install <site_name>` from the same derived site-name rule and updates live as `Site Title` changes.
2026-05-21 02:32:36 +03:00
36 changed files with 339 additions and 39 deletions
+10
View File
@@ -828,3 +828,13 @@ History search guidance:
167 - [2026-05-20 01:12:06] - v1.27.0-dev-178-gf09229e739 - Type: Modified - [footer] [sticky-ui] Fine-tuned the persistent footer lip geometry for better visual balance.
- 1 - I updated `web_src/css/home.css` so the persistent-footer toggle lip now rises a bit higher above the footer edge and is slightly taller, giving the handle a more relaxed fit against the footer border.
168 - [2026-05-21 01:08:54] - v1.27.0-dev-179-g953a7c08be - Type: Modified - [install] [mailer] Split the installer mail sender field into display name and address, auto-filled the sender name from Site Title, and reused that site name in test mails.
- 1 - I updated `services/forms/user_form.go`, `routers/install/install.go`, `templates/install.tmpl`, `options/locale/locale_en-US.json`, and `options/locale/locale_ro-RO.json` so the installer now edits `Send Email As` through separate sender-name and sender-address inputs on the same line, auto-fills the sender name from the part of `Site Title` before `:`, or from the first word when no `:` is present, and composes `[mailer] FROM = site_name <mail@address>` server-side during test mail and install submission.
- 2 - I updated `services/mailer/mail.go` so the installer test mail subject/body reuse that derived site name instead of the hardcoded `Gitea` label.
- 3 - I added targeted coverage in `routers/install/routes_test.go` and `services/mailer/mail_test.go` for the derived site-name logic and the composed installer `FROM` address.
- 4 - I updated `routers/install/install.go`, `templates/install.tmpl`, and the installer locale strings so the primary install button now renders `Install <site_name>` from the same derived site-name rule and updates live as `Site Title` changes.
169 - [2026-05-21 01:18:41] - v1.27.0-dev-180-gb1db0705d8 - Type: Modified - [locale] [i18n] Synchronized the locale files with the current installer and sticky-layout strings.
- 1 - I updated all translated `options/locale/locale_*.json` files so `install.install_btn_confirm` now accepts a `%s` site-name placeholder instead of hardcoding `Gitea`, matching the current installer button behavior.
- 2 - I added the missing `footer.show`, `footer.hide`, `install.smtp_from_name_placeholder`, and `install.smtp_from_address_placeholder` keys across the locale files, using the current English fallback text where no localized variant was available in this change.
+5 -1
View File
@@ -145,6 +145,8 @@
"search.no_results": "Nebyly nalezeny žádné odpovídající výsledky.",
"search.keyword_search_unavailable": "Hledání podle klíčového slova není momentálně dostupné. Obraťte se na správce webu.",
"aria.navbar": "Navigační lišta",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Patička",
"aria.footer.software": "O softwaru",
"aria.footer.links": "Odkazy",
@@ -236,6 +238,8 @@
"install.smtp_addr": "Server SMTP",
"install.smtp_port": "Port SMTP",
"install.smtp_from": "Odeslat e-mail jako",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "Adresa \"Odeslat e-mail jako\" je neplatná",
"install.smtp_from_helper": "E-mailová adresa, kterou bude Gitea používat. Zadejte běžnou e-mailovou adresu, nebo použijte formát \"Jméno\"<email@example.com>.",
"install.mailer_user": "Uživatelské jméno SMTP",
@@ -293,7 +297,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Nainstalovat Gitea",
"install.install_btn_confirm": "Nainstalovat %s",
"install.test_git_failed": "Chyba při testu příkazu 'git': %v",
"install.sqlite3_not_available": "Tato verze Gitea nepodporuje SQLite3. Stáhněte si oficiální binární verzi od %s (nikoli verzi „gobuild“).",
"install.invalid_db_setting": "Nastavení databáze je neplatné: %v",
+5 -1
View File
@@ -137,6 +137,8 @@
"search.no_results": "Es wurden keine passenden Ergebnisse gefunden.",
"search.keyword_search_unavailable": "Zurzeit ist die Stichwort-Suche nicht verfügbar. Bitte wende dich an den Website-Administrator.",
"aria.navbar": "Navigationsleiste",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Fußzeile",
"aria.footer.software": "Über die Software",
"heatmap.number_of_contributions_in_the_last_12_months": "%s Beiträge in den letzten 12 Monaten",
@@ -229,6 +231,8 @@
"install.smtp_port": "SMTP-Port",
"install.smtp_from": "E-Mail senden als",
"install.smtp_from_invalid": "Die „E-Mail senden als“ Adresse ist ungültig",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_helper": "E-Mail-Adresse, die von Gitea genutzt werden soll. Bitte gib die E-Mail-Adresse im Format „\"Name\" <email@example.com>“ ein.",
"install.mailer_user": "SMTP-Benutzername",
"install.mailer_password": "SMTP-Passwort",
@@ -285,7 +289,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Gitea installieren",
"install.install_btn_confirm": "%s installieren",
"install.test_git_failed": "Fehler beim Test des „git“-Befehls: %v",
"install.sqlite3_not_available": "Diese Gitea-Version unterstützt SQLite3 nicht. Bitte lade die offizielle binäre Version von %s herunter (nicht die „gobuild“-Version).",
"install.invalid_db_setting": "Datenbankeinstellungen sind ungültig: %v",
+5 -1
View File
@@ -124,6 +124,8 @@
"filter.public": "Δημόσιος",
"filter.private": "Ιδιωτικό",
"aria.navbar": "Γραμμή Πλοήγησης",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Υποσέλιδο",
"aria.footer.software": "Σχετικά με το Λογισμικό",
"aria.footer.links": "Συνδέσεις",
@@ -209,6 +211,8 @@
"install.smtp_addr": "Διακομιστής SMTP",
"install.smtp_port": "Θύρα SMTP",
"install.smtp_from": "Αποστολή Email Ως",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Η διεύθυνση email που θα χρησιμοποιεί το Gitea. Εισάγετε μια απλή διεύθυνση ηλεκτρονικού ταχυδρομείου ή χρησιμοποιήστε τη μορφή \"Όνομα\" <email@example.com>.",
"install.mailer_user": "Όνομα Χρήστη SMTP",
@@ -266,7 +270,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Εγκατάσταση Gitea",
"install.install_btn_confirm": "Εγκατάσταση %s",
"install.test_git_failed": "Αδυναμία δοκιμής της εντολής 'git': %v",
"install.sqlite3_not_available": "Αυτή η έκδοση Gitea δεν υποστηρίζει την SQLite3. Παρακαλώ κατεβάστε την επίσημη δυαδική έκδοση από το %s (όχι την έκδοση 'gobuild').",
"install.invalid_db_setting": "Οι ρυθμίσεις της βάσης δεδομένων δεν είναι έγκυρες: %v",
+4 -2
View File
@@ -327,7 +327,9 @@
"install.smtp_port": "SMTP Port",
"install.smtp_from": "Send Email As",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Email address Gitea will use. Enter a plain email address or use the \"Name\" <email@example.com> format.",
"install.smtp_from_helper": "Enter the sender name and email address Gitea will use. The name field is auto-filled from the part of Site Title before \":\", or from the first word when no \":\" is present.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "SMTP Username",
"install.mailer_password": "SMTP Password",
"install.test_mail_to": "Send Testing Email",
@@ -383,7 +385,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Install Gitea",
"install.install_btn_confirm": "Install %s",
"install.test_git_failed": "Could not test 'git' command: %v",
"install.sqlite3_not_available": "This Gitea version does not support SQLite3. Please download the official binary version from %s (not the 'gobuild' version).",
"install.invalid_db_setting": "The database settings are invalid: %v",
+5 -1
View File
@@ -119,6 +119,8 @@
"filter.public": "Público",
"filter.private": "Privado",
"aria.navbar": "Barra de navegación",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Pie",
"aria.footer.software": "Acerca del Software",
"aria.footer.links": "Enlaces",
@@ -204,6 +206,8 @@
"install.smtp_addr": "Servidor SMTP",
"install.smtp_port": "Puerto SMTP",
"install.smtp_from": "Enviar correos electrónicos como",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Dirección de correo electrónico que utilizará Gitea. Introduzca una dirección de correo electrónico normal o utilice el formato \"Nombre\" <email@example.com>.",
"install.mailer_user": "Nombre de usuario SMTP",
@@ -261,7 +265,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Instalar Gitea",
"install.install_btn_confirm": "Instalar %s",
"install.test_git_failed": "Fallo al probar el comando 'git': %v",
"install.sqlite3_not_available": "Esta versión de Gitea no soporta SQLite3. Por favor, descarga la versión binaria oficial de %s (no la versión 'gobuild').",
"install.invalid_db_setting": "La configuración de la base de datos no es válida: %v",
+5 -1
View File
@@ -121,6 +121,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "تنظیمات عمومی",
"install.app_name": "عنوان سایت",
"install.app_name_helper": "شما می توانید نام شرکت خود را در اینجا وارد کنید.",
@@ -147,6 +149,8 @@
"install.smtp_addr": "میزبان SMTP",
"install.smtp_port": "گذرگاه(پورت) SMTP",
"install.smtp_from": "ارسال ایمیل به عنوان",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "آدرس ایمیلی که گیتی استفاده میکند. یک ایمیل وارد کنید یا به \"Name\" <email@example.com> شکل استفاده کنید.",
"install.mailer_user": "نام کاربری SMTP",
@@ -204,7 +208,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "نصب گیتی",
"install.install_btn_confirm": "نصب %s",
"install.test_git_failed": "عدم توانایی در آزمایش دستور 'git' توضیح بیشتر: %v",
"install.sqlite3_not_available": "نسخه مورد استفاده شما از SQLite3 پشتیبانی نمی کند. لطفا نسخه باینری رسمی را از s% دانلود کنید و از ورژن gobuild هم استفاده نکنید.",
"install.invalid_db_setting": "تنظیمات پایگاه داده معتبر نیست: %v",
+5 -1
View File
@@ -135,6 +135,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Yleiset asetukset",
"install.app_name": "Sivuston otsikko",
"install.app_name_helper": "Voit syöttää yrityksesi nimen tähän.",
@@ -163,6 +165,8 @@
"install.smtp_from": "Lähetä sähköpostit osoitteella",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Sähköpostiosoite, jota Gitea käyttää. Kirjoita osoite ”nimi” <email@example.com> -muodossa.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "SMTP-käyttäjätunnus",
"install.mailer_password": "SMTP-salasana",
"install.test_mail_to": "Send Testing Email",
@@ -218,7 +222,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Asenna Gitea",
"install.install_btn_confirm": "Asenna %s",
"install.test_git_failed": "Epäonnistui testata 'git' komentoa: %v",
"install.sqlite3_not_available": "Tämä Gitea versio ei tue SQLite3. Lataa virallinen binääriversio kohteesta %s (ei 'gobuild' versio).",
"install.invalid_db_setting": "Tietokanta-asetukset ovat väärin: %v",
+5 -1
View File
@@ -187,6 +187,8 @@
"search.pull_kind": "Recherche de demandes dajouts…",
"search.keyword_search_unavailable": "La recherche par mot clé nest pas disponible actuellement. Veuillez contacter ladministrateur de votre instance Gitea.",
"aria.navbar": "Barre de navigation",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Pied de page",
"aria.footer.software": "À propos du logiciel",
"aria.footer.links": "Liens",
@@ -287,6 +289,8 @@
"install.smtp_from": "Envoyer les courriels en tant que",
"install.smtp_from_invalid": "Ladresse « Envoyer le courriel sous » est invalide",
"install.smtp_from_helper": "Adresse courriel utilisée par Gitea. Utilisez directement votre adresse ou la forme « Nom <email@example.com> ».",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "Utilisateur SMTP",
"install.mailer_password": "Mot de passe SMTP",
"install.test_mail_to": "Send Testing Email",
@@ -342,7 +346,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Installer Gitea",
"install.install_btn_confirm": "Installer %s",
"install.test_git_failed": "Le test de la commande \"git\" a échoué : %v",
"install.sqlite3_not_available": "Cette version de Gitea ne supporte pas SQLite3. Veuillez télécharger la version binaire officielle de %s (pas la version 'gobuild').",
"install.invalid_db_setting": "Les paramètres de la base de données sont invalides : %v",
+5 -1
View File
@@ -189,6 +189,8 @@
"search.pull_kind": "Cuardaigh iarratais tarraingthe…",
"search.keyword_search_unavailable": "Níl cuardach de réir eochairfhocal ar fáil faoi láthair. Déan teagmháil le riarthóir an láithreáin.",
"aria.navbar": "Barra Nascleanúint",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Buntásc",
"aria.footer.software": "Maidir le Bogearraí",
"aria.footer.links": "Naisc",
@@ -288,6 +290,8 @@
"install.smtp_port": "Port SMTP",
"install.smtp_from": "Seol Ríomhphost Mar",
"install.smtp_from_invalid": "Tá an seoladh “Seol Ríomhphost Mar” neamhbhailí",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_helper": "Seoladh ríomhphoist a úsáidfidh Gitea. Cuir isteach seoladh ríomhphoist simplí nó úsáid an fhormáid \"Ainm\" <email@example.com>.",
"install.mailer_user": "SMTP Ainm úsáideora",
"install.mailer_password": "Pasfhocal SMTP",
@@ -344,7 +348,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Suiteáil Gitea",
"install.install_btn_confirm": "Suiteáil %s",
"install.test_git_failed": "Ní féidir ordú 'git' a thástáil: %v",
"install.sqlite3_not_available": "Ní thacaíonn an leagan Gitea seo le SQLite3. Íoslódáil an leagan dénártha oifigiúil ó %s (ní an leagan 'gobuild').",
"install.invalid_db_setting": "Tá na socruithe bunachar sonraí neamhbhailí:%v",
+5 -1
View File
@@ -108,6 +108,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Általános beállítások",
"install.app_name": "Webhely címe",
"install.app_name_helper": "Itt megadhatja a vállalata nevét.",
@@ -134,6 +136,8 @@
"install.smtp_addr": "SMTP kiszolgáló",
"install.smtp_port": "SMTP port",
"install.smtp_from": "E-mail küldése mint",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Az E-mail cím a mit a Gitea használni fog. Megadhatja sima email címként vagy \"Név<email@példa.hu>\" formátumban.",
"install.mailer_user": "SMTP-felhasználónév",
@@ -191,7 +195,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Gitea telepítése",
"install.install_btn_confirm": "%s telepítése",
"install.test_git_failed": "Nem sikerült a 'git' parancs kipróbálása: %v",
"install.sqlite3_not_available": "Ez a verzió nem támogatja az SQLite3-at, kérlek töltsd le a hivatalos bináris verziót: %s (NE a gobuild változatot).",
"install.invalid_db_setting": "Az adatbázis-beállítások érvénytelenek: %v",
+5 -1
View File
@@ -123,6 +123,8 @@
"search.exact_tooltip": "Hanya menampilkan hasil yang cocok dengan istilah pencarian",
"search.code_search_unavailable": "Pencarian kode saat ini tidak tersedia. Silahkan hubungi administrator.",
"aria.navbar": "Bar Navigasi",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer.software": "Tentang Software",
"aria.footer.links": "Tautan",
"heatmap.number_of_contributions_in_the_last_12_months": "%s Kontribusi pada 12 bulan terakhir",
@@ -207,6 +209,8 @@
"install.smtp_addr": "Host SMTP",
"install.smtp_port": "Port SMTP",
"install.smtp_from": "Kirim Email Sebagai",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Email address Gitea will use. Enter a plain email address or use the \"Name\" <email@example.com> format.",
"install.mailer_user": "SMTP Username",
@@ -264,7 +268,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Install Gitea",
"install.install_btn_confirm": "Install %s",
"install.test_git_failed": "Could not test 'git' command: %v",
"install.sqlite3_not_available": "This Gitea version does not support SQLite3. Please download the official binary version from %s (not the 'gobuild' version).",
"install.invalid_db_setting": "The database settings are invalid: %v",
+5 -1
View File
@@ -134,6 +134,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Almennar Stillingar",
"install.app_name": "Heiti vefsvæðis",
"install.app_name_helper": "Þú getur slegið inn nafn fyrirtækis þíns hér.",
@@ -162,6 +164,8 @@
"install.smtp_from": "Senda Tölvupóst Sem",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Netfang sem Gitea mun nota. Sláðu inn venjulegt netfang eða notaðu „Nafn“ <email@example.com> sniðið.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "SMTP Notandanafn",
"install.mailer_password": "SMTP Lykilorð",
"install.test_mail_to": "Send Testing Email",
@@ -217,7 +221,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Setja upp Gitea",
"install.install_btn_confirm": "Setja upp %s",
"install.test_git_failed": "Gat ekki prófað „git“ skipunina: %v",
"install.sqlite3_not_available": "Þessi Gitea útgáfa styður ekki SQLite3. Vinsamlegast sæktu útgáfunni okkar frá %s (ekki „gobuild“ útgáfunna).",
"install.invalid_db_setting": "Gagnagrunnsstillingarnar eru ógildar: %v",
+5 -1
View File
@@ -128,6 +128,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Impostazioni Generali",
"install.app_name": "Titolo del Sito",
"install.app_name_helper": "Qui puoi inserire il nome della tua società.",
@@ -154,6 +156,8 @@
"install.smtp_addr": "Host SMTP",
"install.smtp_port": "Porta SMTP",
"install.smtp_from": "Invia Email come",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Indirizzo Email che Gitea utilizzerà. Inserisci un indirizzo email o usa il formato \"Name\" <email@example.com>.",
"install.mailer_user": "Nome utente SMTP",
@@ -211,7 +215,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Installare Gitea",
"install.install_btn_confirm": "Installare %s",
"install.test_git_failed": "Fallito il test del comando git: %v",
"install.sqlite3_not_available": "Questa versione di Gitea non supporta SQLite3. Si prega di scaricare la versione binaria ufficiale da %s (not the 'gobuild' version).",
"install.invalid_db_setting": "Le impostazioni del database sono invalide: %v",
+5 -1
View File
@@ -184,6 +184,8 @@
"search.pull_kind": "プルリクエストを検索…",
"search.keyword_search_unavailable": "キーワード検索は現在利用できません。 サイト管理者にお問い合わせください。",
"aria.navbar": "ナビゲーションバー",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "フッター",
"aria.footer.software": "ソフトウェアについて",
"aria.footer.links": "リンク",
@@ -280,6 +282,8 @@
"install.smtp_port": "SMTPポート",
"install.smtp_from": "メール送信者",
"install.smtp_from_invalid": "「メール送信者」のアドレスが無効です",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_helper": "Giteaが使用するメールアドレス。 メールアドレスのみ、または、 \"名前\" <email@example.com> の形式で入力してください。",
"install.mailer_user": "SMTPユーザー名",
"install.mailer_password": "SMTPパスワード",
@@ -336,7 +340,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Giteaをインストール",
"install.install_btn_confirm": "%sをインストール",
"install.test_git_failed": "'git'コマンドが確認できません: %v",
"install.sqlite3_not_available": "GiteaのこのバージョンはSQLite3をサポートしていません。 公式のバイナリ版を %s からダウンロードしてください。 ('gobuild'版でないもの)",
"install.invalid_db_setting": "データベース設定が無効です: %v",
+5 -1
View File
@@ -187,6 +187,8 @@
"search.pull_kind": "풀 리퀘스트 검색…",
"search.keyword_search_unavailable": "현재 키워드 검색이 불가능합니다. 사이트 운영자에게 문의하세요.",
"aria.navbar": "내비게이션 바",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "바닥글",
"aria.footer.software": "이 소프트웨어에 대하여",
"aria.footer.links": "링크",
@@ -282,6 +284,8 @@
"install.smtp_addr": "SMTP 호스트",
"install.smtp_port": "SMTP 포트",
"install.smtp_from": "다음 주소로 이메일 발신",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "\"다음 주소로 이메일 발신\" 주소가 유효하지 않습니다",
"install.smtp_from_helper": "Gitea 가 사용할 이메일 주소. 이메일 주소 또는 \"이름\" <email@example.com> 형식으로 입력하세요.",
"install.mailer_user": "SMTP 사용자이름",
@@ -339,7 +343,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Gitea 설치하기",
"install.install_btn_confirm": "%s 설치하기",
"install.test_git_failed": "'git' 명령 테스트 실패: %v",
"install.sqlite3_not_available": "해당 버전에서는 SQLite3를 지원하지 않습니다. %s에서 공식 버전을 다운로드해주세요. ('gobuild' 버전이 아닙니다.)",
"install.invalid_db_setting": "데이터베이스 설정이 올바르지 않습니다: %v",
+5 -1
View File
@@ -130,6 +130,8 @@
"filter.public": "Publiska",
"filter.private": "Privāts",
"aria.navbar": "Navigācijas josla",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Kājene",
"aria.footer.software": "Par programmatūru",
"aria.footer.links": "Saites",
@@ -215,6 +217,8 @@
"install.smtp_addr": "SMTP resursdators",
"install.smtp_port": "SMTP ports",
"install.smtp_from": "Nosūtīt e-pastu kā",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "E-pasta adrese, ko Gitea izmantos. Ievadiet tika e-pasta adrese vai izmantojiet \"Vārds\" <epasts@domens.lv> formātu.",
"install.mailer_user": "SMTP lietotājvārds",
@@ -272,7 +276,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Instalēt Gitea",
"install.install_btn_confirm": "Instalēt %s",
"install.test_git_failed": "Kļūda pārbaudot 'git' komandu: %v",
"install.sqlite3_not_available": "Jūsu pašreizējā versija neatbalsta SQLite3, lūdzu lejupielādējiet oficiālo bināro versiju no %s, NEVIS gobuild versiju.",
"install.invalid_db_setting": "Nederīgi datu bāzes iestatījumi: %v",
+5 -1
View File
@@ -128,6 +128,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Algemene Instellingen",
"install.app_name": "Naam site",
"install.app_name_helper": "U kan de naam van uw bedrijf hier invullen.",
@@ -154,6 +156,8 @@
"install.smtp_addr": "SMTP Host",
"install.smtp_port": "SMTP Poort",
"install.smtp_from": "E-mails versturen als",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "E-mailadres dat Gitea gaat gebruiken. Voer een gewoon e-mailadres in of gebruik de \"Naam\" <email@example.com> -indeling.",
"install.mailer_user": "SMTP gebruikersnaam",
@@ -211,7 +215,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Installeer Gitea",
"install.install_btn_confirm": "Installeer %s",
"install.test_git_failed": "Git test niet gelukt: 'git' commando %v",
"install.sqlite3_not_available": "Deze Gitea-versie biedt geen ondersteuning voor SQLite3. Download de officiële build van %s (niet de versie van de 'gobuild').",
"install.invalid_db_setting": "De database instelling zijn niet correct: %v",
+5 -1
View File
@@ -133,6 +133,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Ustawienia ogólne",
"install.app_name": "Tytuł witryny",
"install.app_name_helper": "Wprowadź nazwę firmy.",
@@ -159,6 +161,8 @@
"install.smtp_addr": "Serwer SMTP",
"install.smtp_port": "Port SMTP",
"install.smtp_from": "Wyślij e-mail jako",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Adres e-mail, z którego Gitea będzie korzystać. Wpisz prosty adres e-mail, lub użyj formatu \"Nazwa\" <email@example.com>.",
"install.mailer_user": "Nazwa użytkownika SMTP",
@@ -216,7 +220,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Zainstaluj Gitea",
"install.install_btn_confirm": "Zainstaluj %s",
"install.test_git_failed": "Nie udało się przetestować polecenia „git”: %v",
"install.sqlite3_not_available": "Twoje wydanie Gitea nie obsługuje SQLite3. Pobierz oficjalne wydanie z %s (NIE wersję \"gobuild\").",
"install.invalid_db_setting": "Nieprawidłowe ustawienia bazy danych: %v",
+5 -1
View File
@@ -162,6 +162,8 @@
"search.issue_kind": "Pesquisar issues…",
"search.pull_kind": "Pesquisar pull requests…",
"aria.navbar": "Barra de Navegação",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Rodapé",
"aria.footer.software": "Sobre o Software",
"heatmap.number_of_contributions_in_the_last_12_months": "%s contribuições nos últimos 12 meses",
@@ -253,6 +255,8 @@
"install.smtp_addr": "Host SMTP",
"install.smtp_port": "Porta SMTP",
"install.smtp_from": "Enviar E-mail Como",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "O endereço \"Enviar e-mail como\" é inválido",
"install.smtp_from_helper": "Endereço de e-mail que o Gitea irá usar. Digite um endereço de e-mail simples ou use o formato \"Nome\" <email@example.com>.",
"install.mailer_user": "Nome de usuário do SMTP",
@@ -310,7 +314,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Instalar Gitea",
"install.install_btn_confirm": "Instalar %s",
"install.test_git_failed": "Falha ao testar o comando 'git': %v",
"install.sqlite3_not_available": "Esta versão do Gitea não suporta SQLite3. Por favor faça o download da versão binária oficial em %s (não utilize a versão 'gobuild').",
"install.invalid_db_setting": "Configuração de banco de dados está inválida: %v",
+5 -1
View File
@@ -177,6 +177,8 @@
"search.pull_kind": "Pesquisar puxadas…",
"search.keyword_search_unavailable": "Pesquisar por palavra-chave não está disponível, neste momento. Entre em contacto com o administrador.",
"aria.navbar": "Barra de navegação",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Rodapé",
"aria.footer.software": "Sobre o Software",
"aria.footer.links": "Ligações",
@@ -272,6 +274,8 @@
"install.smtp_addr": "Servidor SMTP",
"install.smtp_port": "Porto do SMTP",
"install.smtp_from": "Email do remetente",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "O endereço para \"Enviar email como\" é inválido",
"install.smtp_from_helper": "Endereço de email que o Gitea vai usar. Insira um endereço de email simples ou use o formato \"Nome\" <email@exemplo.com>.",
"install.mailer_user": "Nome de utilizador do SMTP",
@@ -329,7 +333,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Instalar Gitea",
"install.install_btn_confirm": "Instalar %s",
"install.test_git_failed": "Não foi possível testar o comando 'git': %v",
"install.sqlite3_not_available": "Esta versão do Gitea não suporta o SQLite3. Descarregue a versão binária oficial em %s (não utilize a versão 'gobuild').",
"install.invalid_db_setting": "As configurações da base de dados são inválidas: %v",
+4 -2
View File
@@ -327,7 +327,9 @@
"install.smtp_port": "Port SMTP",
"install.smtp_from": "Trimite e-mail ca",
"install.smtp_from_invalid": "Adresa „Trimite e-mail ca” nu este validă",
"install.smtp_from_helper": "Adresa de e-mail pe care o va folosi Gitea. Introdu o adresă de e-mail simplă sau utilizează formatul „Nume” <email@example.com>.",
"install.smtp_from_helper": "Introdu numele expeditorului și adresa de e-mail pe care o va folosi Gitea. Câmpul pentru nume este completat automat din partea din Site Title aflată înainte de „:”, sau din primul cuvânt dacă „:” nu există.",
"install.smtp_from_name_placeholder": "Numele expeditorului",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "Nume de utilizator SMTP",
"install.mailer_password": "Parola SMTP",
"install.test_mail_to": "Trimite un e-mail de testare",
@@ -383,7 +385,7 @@
"install.admin_management_policy.grantor_only_helper": "Administratorii obișnuiți pot promova utilizatori la rang de administrator și ulterior pot modifica sau șterge doar administratorii promovați direct de ei.",
"install.admin_management_policy.grantor_inheritance": "Lanț de acordare cu moștenire",
"install.admin_management_policy.grantor_inheritance_helper": "Ca în modul doar-promotor, dar dacă promotorul direct devine inactiv sau are autentificarea dezactivată, gestionarea urcă pe lanțul de acordare până la un administrator eligibil. Dacă acesta nu există, controlul rămâne la super administratori.",
"install.install_btn_confirm": "Instalați Gitea",
"install.install_btn_confirm": "Instalează %s",
"install.test_git_failed": "Nu s-a putut testa comanda „git”: %v",
"install.sqlite3_not_available": "Această versiune Gitea nu acceptă SQLite3. Te rugăm să descărci versiunea oficială binară de la %s (nu versiunea „gobuild”).",
"install.invalid_db_setting": "Setările bazei de date nu sunt valide: %v",
+5 -1
View File
@@ -125,6 +125,8 @@
"filter.public": "Публичный",
"filter.private": "Личный",
"aria.navbar": "Панель навигации",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Подвал",
"aria.footer.software": "О программе",
"aria.footer.links": "Ссылки",
@@ -210,6 +212,8 @@
"install.smtp_addr": "Узел SMTP",
"install.smtp_port": "SMTP-порт",
"install.smtp_from": "Отправить эл. почту как",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Адрес электронной почты, который будет использоваться Gitea. Введите обычный адрес электронной почты или используйте формат \"Имя\" <email@example.com>.",
"install.mailer_user": "SMTP логин",
@@ -267,7 +271,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Установить Gitea",
"install.install_btn_confirm": "Установить %s",
"install.test_git_failed": "Не удалось проверить 'git' команду: %v",
"install.sqlite3_not_available": "Эта версия Gitea не поддерживает SQLite3. Пожалуйста, загрузите официальную бинарную версию из %s (не 'go build' версия).",
"install.invalid_db_setting": "Некорректные настройки базы данных: %v",
+5 -1
View File
@@ -121,6 +121,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "පොදු සැකසුම්",
"install.app_name": "අඩවියේ සිරැසිය",
"install.app_name_helper": "ඔබට ඔබේ සමාගමේ නම මෙහි ඇතුළත් කළ හැකිය.",
@@ -149,6 +151,8 @@
"install.smtp_from": "ලෙස වි-තැපෑල යවන්න",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "විද්යුත් තැපැල් ලිපිනය Gitea භාවිතා කරනු ඇත. සරල විද්යුත් තැපැල් ලිපිනයක් ඇතුළත් කරන්න හෝ “නම” <email@example.com> ආකෘතිය භාවිතා කරන්න.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "SMTP පරිශීලක නාමය",
"install.mailer_password": "SMTP මුරපදය",
"install.test_mail_to": "Send Testing Email",
@@ -204,7 +208,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "ගිටියා ස්ථාපනය කරන්න",
"install.install_btn_confirm": "%s ස්ථාපනය කරන්න",
"install.test_git_failed": "'git' විධානය පරීක්ෂා කළ නොහැකි විය: %v",
"install.sqlite3_not_available": "මෙම Gitea අනුවාදය SQLite3 සඳහා සහය නොදක්වයි. කරුණාකර නිල ද්විමය අනුවාදය %s වෙතින් බාගත කරන්න ('gobuild' අනුවාදය නොවේ).",
"install.invalid_db_setting": "දත්ත සමුදා සැකසුම් අවලංගුයි: %v",
+5 -1
View File
@@ -122,6 +122,8 @@
"filter.is_template": "Šablóna",
"filter.private": "Súkromný",
"aria.navbar": "Navigačná lišta",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Päta",
"aria.footer.software": "O softvéri",
"aria.footer.links": "Odkazy",
@@ -207,6 +209,8 @@
"install.smtp_addr": "SMTP Host",
"install.smtp_port": "SMTP Port",
"install.smtp_from": "Odoslať e-mail ako",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "E-mailová adresa ktorú použije Gitea. Zadajte bežnú e-mailovú adresu alebo použite formát \"Meno\" <email@example.com>.",
"install.mailer_user": "Používateľské meno SMTP",
@@ -264,7 +268,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Nainštalovať Gitea",
"install.install_btn_confirm": "Nainštalovať %s",
"install.test_git_failed": "Nie je možné otestovať príkaz 'git': %v",
"install.sqlite3_not_available": "Táto verzia Gitea nepodporuje SQLite3. Stiahnite si, prosím, oficiálnu verziu z %s (nie verziu \"gobuild\").",
"install.invalid_db_setting": "Nastavenia databázy sú neplatné: %v",
+5 -1
View File
@@ -108,6 +108,8 @@
"install.err_admin_name_is_reserved": "Administrator username is invalid. Username is reserved.",
"install.err_admin_name_pattern_not_allowed": "Administrator username is invalid. The username matches a reserved pattern.",
"install.err_admin_name_is_invalid": "Administrator username is invalid",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"install.general_title": "Allmänna inställningar",
"install.app_name": "Sajtens namn",
"install.app_name_helper": "Du kan ange ditt företagsnamn här.",
@@ -136,6 +138,8 @@
"install.smtp_from": "Skicka Mejl Som",
"install.smtp_from_invalid": "The \"Send Email As\" address is invalid",
"install.smtp_from_helper": "Mejladress som Gitea kommer att använda. Anges i simpelt ('email@example.com') eller fullständigt ('Name <email@example.com>') format.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "SMTP-Användarnamn",
"install.mailer_password": "SMTP-Lösenord",
"install.test_mail_to": "Send Testing Email",
@@ -191,7 +195,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Installera Gitea",
"install.install_btn_confirm": "Installera %s",
"install.test_git_failed": "Misslyckades att testa 'git' kommando: %v",
"install.sqlite3_not_available": "Denna version av Gitea stödjer ej SQLite3. Ladda ner den officiella binären från %s (inte 'gobuild' versionen).",
"install.invalid_db_setting": "Databasinställningarna är ogiltiga: %v",
+5 -1
View File
@@ -184,6 +184,8 @@
"search.pull_kind": "Değişiklik isteklerini ara…",
"search.keyword_search_unavailable": "Anahtar kelime ile arama şu an mevcut değil. Lütfen site yöneticinizle iletişime geçin.",
"aria.navbar": "Gezinti Çubuğu",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Alt Bilgi",
"aria.footer.software": "Yazılım Hakkında",
"aria.footer.links": "Bağlantılar",
@@ -279,6 +281,8 @@
"install.smtp_addr": "SMTP Sunucusu",
"install.smtp_port": "SMTP Portu",
"install.smtp_from": "E-posta Gönderen",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_invalid": "\"E-posta Olarak Gönder\" adresi geçersiz",
"install.smtp_from_helper": "Gitea'nın kullanacağı e-posta adresi. Yalın bir e-posta adresi girin veya \"İsim\" <eposta@ornek.com> biçimini kullanın.",
"install.mailer_user": "SMTP Kullanıcı Adı",
@@ -336,7 +340,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Gitea'u Kur",
"install.install_btn_confirm": "%s'u Kur",
"install.test_git_failed": "'git' komut testi başarısız: %v",
"install.sqlite3_not_available": "Bu Gieta sürümü SQLite3 desteklemiyor. Lütfen %s adresinden resmi çalışır sürümü ('gobuild' sürümünü değil) indirin.",
"install.invalid_db_setting": "Veritabanı ayarları geçersiz: %v",
+5 -1
View File
@@ -151,6 +151,8 @@
"search.no_results": "Не знайдено жодного збігу.",
"search.keyword_search_unavailable": "Пошук за ключовими словами наразі недоступний. Будь ласка, зверніться до адміністратора сайту.",
"aria.navbar": "Панель навігації",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "Нижній колонтитул",
"aria.footer.software": "Про програмне забезпечення",
"aria.footer.links": "Посилання",
@@ -244,6 +246,8 @@
"install.smtp_from": "Відправити листа від імені",
"install.smtp_from_invalid": "Адреса \"Надіслати листа як\" недійсна",
"install.smtp_from_helper": "Адреса електронної пошти, яку буде використовувати Gitea. Введіть звичайну адресу електронної пошти або використовуйте формат «Ім'я» <email@example.com>.",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.mailer_user": "Ім'я користувача SMTP",
"install.mailer_password": "Пароль SMTP",
"install.test_mail_to": "Send Testing Email",
@@ -299,7 +303,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "Встановити Gitea",
"install.install_btn_confirm": "Встановити %s",
"install.test_git_failed": "Не вдалося перевірити команду 'git': %v",
"install.sqlite3_not_available": "Ця версія Gitea не підтримує SQLite3. Будь ласка, завантажте офіційну бінарну версію з %s (не версію gobuild).",
"install.invalid_db_setting": "Налаштування бази даних недійсні: %v",
+5 -1
View File
@@ -185,6 +185,8 @@
"search.pull_kind": "搜索合并请求…",
"search.keyword_search_unavailable": "按关键字搜索当前不可用。请联系站点管理员。",
"aria.navbar": "导航栏",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "页脚",
"aria.footer.software": "关于软件",
"aria.footer.links": "链接",
@@ -281,6 +283,8 @@
"install.smtp_port": "SMTP 端口",
"install.smtp_from": "邮件发件人",
"install.smtp_from_invalid": "「邮件发件人」地址无效",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_helper": "请输入一个用于 Gitea 的邮箱地址,或者使用完整格式:\"名称\" <email@example.com>。",
"install.mailer_user": "SMTP 用户名",
"install.mailer_password": "SMTP 密码",
@@ -337,7 +341,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "立即安装",
"install.install_btn_confirm": "安装 %s",
"install.test_git_failed": "无法识别 'git' 命令:%v",
"install.sqlite3_not_available": "您所使用的发行版不支持 SQLite3,请从 %s 下载官方构建版,而不是 gobuild 版本。",
"install.invalid_db_setting": "数据库设置无效: %v",
+5 -1
View File
@@ -149,6 +149,8 @@
"search.no_results": "找不到符合的結果。",
"search.keyword_search_unavailable": "現在無法使用關鍵字搜尋。請與網站管理員聯絡。",
"aria.navbar": "導航列",
"footer.show": "Show footer",
"footer.hide": "Hide footer",
"aria.footer": "頁尾",
"aria.footer.software": "關於軟體",
"aria.footer.links": "連結",
@@ -242,6 +244,8 @@
"install.smtp_port": "SMTP 連接埠",
"install.smtp_from": "電子郵件寄件者",
"install.smtp_from_invalid": "「以此電子信箱寄送」的地址無效",
"install.smtp_from_name_placeholder": "Sender name",
"install.smtp_from_address_placeholder": "email@example.com",
"install.smtp_from_helper": "Gitea 將會使用的電子信箱,直接輸入電子信箱或使用「\"名稱\" <email@example.com>」的格式。",
"install.mailer_user": "SMTP 帳號",
"install.mailer_password": "SMTP 密碼",
@@ -298,7 +302,7 @@
"install.admin_management_policy.grantor_only_helper": "Regular admins can promote users to administrator and can later modify or delete only the administrators they directly promoted.",
"install.admin_management_policy.grantor_inheritance": "Grantor chain with inheritance",
"install.admin_management_policy.grantor_inheritance_helper": "Like grantor-only, but if the direct grantor becomes inactive or has sign-in disabled, management passes up the admin grant chain until an eligible admin is found. If none is found, super admins keep control.",
"install.install_btn_confirm": "安裝 Gitea",
"install.install_btn_confirm": "安裝 %s",
"install.test_git_failed": "無法識別「git」命令:%v",
"install.sqlite3_not_available": "您目前的版本不支援 SQLite3,請從 %s 下載官方的預先編譯版本 (不是 gobuild 版本)。",
"install.invalid_db_setting": "資料庫設定不正確: %v",
+85 -3
View File
@@ -16,6 +16,7 @@ import (
"os"
"os/exec"
"path/filepath"
"regexp"
"runtime"
"slices"
"strconv"
@@ -74,6 +75,8 @@ var installBrandingAssetSpecs = []installBrandingAssetSpec{
{FormField: "favicon_png", TargetName: "favicon.png", LabelKey: "install.branding.favicon_png", MimeType: "image/png"},
}
var installSMTPUnquotedDisplayNamePattern = regexp.MustCompile(`^[A-Za-z0-9][A-Za-z0-9 ._-]*$`)
// getSupportedDbTypeNames returns a slice for supported database types and names. The slice is used to keep the order
func getSupportedDbTypeNames() (dbTypeNames []map[string]string) {
for _, t := range setting.SupportedDatabaseTypes {
@@ -339,6 +342,7 @@ func newInstallFormFromSettings() (forms.InstallForm, string) {
form.SMTPUser = setting.MailService.User
form.SMTPPasswd = setting.MailService.Passwd
}
populateInstallSMTPFromFields(&form)
form.RegisterConfirm = setting.Service.RegisterEmailConfirm
form.RegisterManualConfirm = setting.Service.RegisterManualConfirm
form.MailNotify = setting.Service.EnableNotifyMail
@@ -372,6 +376,7 @@ func renderInstallPage(ctx *context.Context, form *forms.InstallForm, curDBType
}
normalizeInstallRegistrationOptions(form)
ctx.Data["CurDbType"] = curDBType
ctx.Data["InstallerSiteName"] = installMailerDisplayName(form.AppName)
middleware.AssignForm(form, ctx.Data)
ctx.HTML(http.StatusOK, tplInstall)
}
@@ -447,6 +452,7 @@ func populateInstallFormFromConfig(form *forms.InstallForm, cfg setting.ConfigPr
form.SMTPUser = setting.ConfigSectionKeyString(mailerSec, "USER", form.SMTPUser)
form.SMTPPasswd = setting.ConfigSectionKeyString(mailerSec, "PASSWD", form.SMTPPasswd)
}
populateInstallSMTPFromFields(form)
form.RegisterConfirm = setting.ConfigSectionKeyBool(serviceSec, "REGISTER_EMAIL_CONFIRM", form.RegisterConfirm)
form.RegisterManualConfirm = setting.ConfigSectionKeyBool(serviceSec, "REGISTER_MANUAL_CONFIRM", form.RegisterManualConfirm)
@@ -633,6 +639,73 @@ func ImportAppINI(ctx *context.Context) {
renderInstallPage(ctx, &form, curDBType)
}
func installMailerDisplayName(appName string) string {
appName = strings.TrimSpace(appName)
if appName == "" {
return "Gitea"
}
if siteName, _, found := strings.Cut(appName, ":"); found {
siteName = strings.TrimSpace(siteName)
if siteName != "" {
return siteName
}
}
if parts := strings.Fields(appName); len(parts) > 0 {
return parts[0]
}
return appName
}
func composeInstallSMTPFrom(appName, fromName, fromAddress string) (string, error) {
fromAddress = strings.TrimSpace(fromAddress)
if fromAddress == "" {
return "", errors.New("missing from address")
}
if _, err := mail.ParseAddress(fromAddress); err != nil {
return "", err
}
fromName = strings.TrimSpace(fromName)
if fromName == "" {
fromName = installMailerDisplayName(appName)
}
if installSMTPUnquotedDisplayNamePattern.MatchString(fromName) {
return fromName + " <" + fromAddress + ">", nil
}
return (&mail.Address{
Name: fromName,
Address: fromAddress,
}).String(), nil
}
func populateInstallSMTPFromFields(form *forms.InstallForm) {
form.SMTPFromName = strings.TrimSpace(form.SMTPFromName)
form.SMTPFromAddress = strings.TrimSpace(form.SMTPFromAddress)
if form.SMTPFrom != "" {
if parsedFrom, err := mail.ParseAddress(form.SMTPFrom); err == nil {
if form.SMTPFromName == "" {
form.SMTPFromName = parsedFrom.Name
}
if form.SMTPFromAddress == "" {
form.SMTPFromAddress = parsedFrom.Address
}
} else if form.SMTPFromAddress == "" {
form.SMTPFromAddress = strings.TrimSpace(form.SMTPFrom)
}
}
if form.SMTPFromName == "" {
form.SMTPFromName = installMailerDisplayName(form.AppName)
}
}
// TestMail checks the mail settings entered on the install page.
func TestMail(ctx *context.Context) {
email := strings.TrimSpace(ctx.FormString("test_mail_email"))
@@ -666,7 +739,9 @@ func TestMail(ctx *context.Context) {
func buildInstallTestMailService(ctx *context.Context) (*setting.Mailer, error) {
smtpAddr := strings.TrimSpace(ctx.FormString("smtp_addr"))
smtpPort := strings.TrimSpace(ctx.FormString("smtp_port"))
smtpFrom := strings.TrimSpace(ctx.FormString("smtp_from"))
appName := strings.TrimSpace(ctx.FormString("app_name"))
smtpFromName := strings.TrimSpace(ctx.FormString("smtp_from_name"))
smtpFromAddress := strings.TrimSpace(ctx.FormString("smtp_from_address"))
if smtpAddr == "" {
return nil, errors.New(string(ctx.Tr("install.test_mail_missing_host")))
@@ -683,6 +758,11 @@ func buildInstallTestMailService(ctx *context.Context) (*setting.Mailer, error)
return nil, errors.New(string(ctx.Tr("form.email_invalid")))
}
smtpFrom, err := composeInstallSMTPFrom(appName, smtpFromName, smtpFromAddress)
if err != nil {
return nil, errors.New(string(ctx.Tr("install.smtp_from_invalid")))
}
parsedFrom, err := mail.ParseAddress(smtpFrom)
if err != nil {
return nil, errors.New(string(ctx.Tr("install.smtp_from_invalid")))
@@ -701,7 +781,7 @@ func buildInstallTestMailService(ctx *context.Context) (*setting.Mailer, error)
}
return &setting.Mailer{
Name: setting.AppName,
Name: installMailerDisplayName(appName),
From: smtpFrom,
FromName: parsedFrom.Name,
FromEmail: parsedFrom.Address,
@@ -822,6 +902,7 @@ func SubmitInstall(ctx *context.Context) {
}
form.DefaultLanguage = strings.TrimSpace(form.DefaultLanguage)
normalizeInstallRegistrationOptions(&form)
populateInstallSMTPFromFields(&form)
if form.DefaultLanguage == "" {
form.DefaultLanguage = resolveInstallDefaultLanguage("")
@@ -999,7 +1080,8 @@ func SubmitInstall(ctx *context.Context) {
}
if len(strings.TrimSpace(form.SMTPAddr)) > 0 {
if _, err := mail.ParseAddress(form.SMTPFrom); err != nil {
form.SMTPFrom, err = composeInstallSMTPFrom(form.AppName, form.SMTPFromName, form.SMTPFromAddress)
if err != nil {
ctx.RenderWithErrDeprecated(ctx.Tr("install.smtp_from_invalid"), tplInstall, &form)
return
}
+14
View File
@@ -56,6 +56,18 @@ func TestReorderInstallLanguages(t *testing.T) {
assert.Equal(t, []string{"en-US", "de-DE", "fr-FR"}, reorderInstallLanguages("invalid"))
}
func TestInstallMailerDisplayName(t *testing.T) {
assert.Equal(t, "gitSafe", installMailerDisplayName("gitSafe: for your code"))
assert.Equal(t, "gitSafe", installMailerDisplayName("gitSafe for your code"))
assert.Equal(t, "Gitea", installMailerDisplayName(""))
}
func TestComposeInstallSMTPFrom(t *testing.T) {
from, err := composeInstallSMTPFrom("gitSafe for your code", "", "noreply@example.com")
require.NoError(t, err)
assert.Equal(t, "gitSafe <noreply@example.com>", from)
}
func TestPopulateInstallFormFromConfig(t *testing.T) {
defer test.MockVariableValue(&setting.SupportedDatabaseTypes, []string{"mysql", "postgres", "sqlite3"})()
defer test.MockVariableValue(&setting.Langs, []string{"en-US", "de-DE", "fr-FR"})()
@@ -150,6 +162,8 @@ LANGS = de-DE,en-US
assert.Equal(t, "smtp.example.com", form.SMTPAddr)
assert.Equal(t, "587", form.SMTPPort)
assert.Equal(t, "Gitea <gitea@example.com>", form.SMTPFrom)
assert.Equal(t, "Gitea", form.SMTPFromName)
assert.Equal(t, "gitea@example.com", form.SMTPFromAddress)
assert.Equal(t, "smtp-user", form.SMTPUser)
assert.Equal(t, "smtp-pass", form.SMTPPasswd)
assert.Equal(t, "de-DE", form.DefaultLanguage)
+2
View File
@@ -41,6 +41,8 @@ type InstallForm struct {
SMTPAddr string
SMTPPort string
SMTPFrom string
SMTPFromName string
SMTPFromAddress string
SMTPUser string `binding:"OmitEmpty;MaxSize(254)" locale:"install.mailer_user"`
SMTPPasswd string
ImportSensitiveSecrets bool `form:"import_sensitive_secrets"`
+21 -1
View File
@@ -58,7 +58,27 @@ func SendTestMailWith(email string, mailService *setting.Mailer) error {
setting.MailService = previousMailService
}()
return sender_service.Send(newTestMailSender(mailService.Protocol), sender_service.NewMessage(email, "Gitea Test Email!", "Gitea Test Email!"))
subject := fmt.Sprintf("%s Test Email!", testMailAppName(mailService.Name))
return sender_service.Send(newTestMailSender(mailService.Protocol), sender_service.NewMessage(email, subject, subject))
}
func testMailAppName(name string) string {
name = strings.TrimSpace(name)
if name == "" {
name = strings.TrimSpace(setting.AppName)
}
if siteName, _, found := strings.Cut(name, ":"); found {
siteName = strings.TrimSpace(siteName)
if siteName != "" {
return siteName
}
} else if parts := strings.Fields(name); len(parts) > 0 {
return parts[0]
}
if name == "" {
return "Gitea"
}
return name
}
func newTestMailSender(protocol string) sender_service.Sender {
+12
View File
@@ -508,6 +508,18 @@ func TestFromDisplayName(t *testing.T) {
})
}
func TestTestMailAppName(t *testing.T) {
oldAppName := setting.AppName
setting.AppName = "Gitea: Git with a cup of tea"
defer func() {
setting.AppName = oldAppName
}()
assert.Equal(t, "gitSafe", testMailAppName("gitSafe: for your code"))
assert.Equal(t, "gitSafe", testMailAppName("gitSafe for your code"))
assert.Equal(t, "Gitea", testMailAppName(""))
}
func TestEmbedBase64Images(t *testing.T) {
user, repo, issue, att1, att2 := prepareMailerBase64Test(t)
// comment := &mailComment{Issue: issue, Doer: user}
+52 -4
View File
@@ -246,8 +246,15 @@
<input id="smtp_port" name="smtp_port" value="{{.smtp_port}}">
</div>
<div class="inline field {{if .Err_SMTPFrom}}error{{end}}">
<label for="smtp_from">{{ctx.Locale.Tr "install.smtp_from"}}</label>
<input id="smtp_from" name="smtp_from" value="{{.smtp_from}}">
<label for="smtp_from_name">{{ctx.Locale.Tr "install.smtp_from"}}</label>
<div class="tw-inline-flex tw-items-center tw-gap-2 tw-flex-wrap" style="width: 60%;">
<div class="ui input" style="flex: 1 1 200px;">
<input id="smtp_from_name" name="smtp_from_name" value="{{.smtp_from_name}}" placeholder="{{ctx.Locale.Tr "install.smtp_from_name_placeholder"}}">
</div>
<div class="ui input" style="flex: 1 1 240px;">
<input id="smtp_from_address" name="smtp_from_address" type="email" value="{{.smtp_from_address}}" placeholder="{{ctx.Locale.Tr "install.smtp_from_address_placeholder"}}">
</div>
</div>
<span class="help">{{ctx.Locale.TrString "install.smtp_from_helper"}}{{/* it contains lt/gt chars*/}}</span>
</div>
<div class="inline field {{if .Err_SMTPUser}}error{{end}}">
@@ -264,7 +271,7 @@
<label for="test_mail_email">{{ctx.Locale.Tr "install.test_mail_to"}}</label>
<div class="tw-inline-flex tw-items-center tw-gap-2 tw-flex-wrap" style="width: 60%;">
<div class="ui small input">
<input id="test_mail_email" name="test_mail_email" type="email" placeholder="{{ctx.Locale.Tr "admin.config.test_email_placeholder"}}" size="29">
<input id="test_mail_email" name="test_mail_email" type="email" placeholder="{{ctx.Locale.Tr "admin.config.test_email_placeholder"}}" size="40">
</div>
<button class="ui tiny js-install-test-mail-button button" data-mail-action-ui="inline-v2" data-action="{{AppSubUrl}}/test_mail" type="button" style="background: var(--color-primary); color: var(--color-primary-contrast); border-color: var(--color-primary);">{{ctx.Locale.Tr "admin.config.send_test_mail_submit"}}</button>
<span class="js-install-test-mail-message"></span>
@@ -489,7 +496,10 @@
{{ctx.Locale.Tr "install.config_write_file_prompt" $filePath}}
</div>
<div class="tw-mt-4 tw-mb-2 tw-text-center">
<button class="ui primary button">{{ctx.Locale.Tr "install.install_btn_confirm"}}</button>
<button
class="ui primary button js-install-confirm-button"
data-install-label-template="{{ctx.Locale.Tr "install.install_btn_confirm" "__SITE_NAME__"}}"
>{{ctx.Locale.Tr "install.install_btn_confirm" .InstallerSiteName}}</button>
</div>
</div>
</form>
@@ -612,6 +622,44 @@
}
};
const deriveInstallMailerName = (appName) => {
const trimmed = appName.trim();
if (!trimmed) return 'Gitea';
const colonIndex = trimmed.indexOf(':');
if (colonIndex >= 0) {
const siteName = trimmed.slice(0, colonIndex).trim();
return siteName || 'Gitea';
}
return trimmed.split(/\s+/, 1)[0] || 'Gitea';
};
const installForm = document.querySelector('.js-install-form');
const appNameInput = installForm?.querySelector('#app_name');
const smtpFromNameInput = installForm?.querySelector('#smtp_from_name');
const installConfirmButton = installForm?.querySelector('.js-install-confirm-button');
if (appNameInput instanceof HTMLInputElement && smtpFromNameInput instanceof HTMLInputElement) {
let lastAutoMailerName = smtpFromNameInput.value.trim() || deriveInstallMailerName(appNameInput.value);
if (!smtpFromNameInput.value.trim()) {
smtpFromNameInput.value = lastAutoMailerName;
}
if (installConfirmButton instanceof HTMLButtonElement) {
installConfirmButton.textContent = installConfirmButton.dataset.installLabelTemplate.replace('__SITE_NAME__', lastAutoMailerName);
}
appNameInput.addEventListener('input', () => {
const currentValue = smtpFromNameInput.value.trim();
if (currentValue && currentValue !== lastAutoMailerName) return;
lastAutoMailerName = deriveInstallMailerName(appNameInput.value);
smtpFromNameInput.value = lastAutoMailerName;
if (installConfirmButton instanceof HTMLButtonElement) {
installConfirmButton.textContent = installConfirmButton.dataset.installLabelTemplate.replace('__SITE_NAME__', lastAutoMailerName);
}
});
} else if (appNameInput instanceof HTMLInputElement && installConfirmButton instanceof HTMLButtonElement) {
const siteName = deriveInstallMailerName(appNameInput.value);
installConfirmButton.textContent = installConfirmButton.dataset.installLabelTemplate.replace('__SITE_NAME__', siteName);
}
for (const button of document.querySelectorAll('.js-install-test-mail-button')) {
button.addEventListener('click', async () => {
const form = button.closest('.js-install-form');