From c013c468a0c4afbf43b6aeab79c60eb80a7871c7 Mon Sep 17 00:00:00 2001 From: Jacky Date: Sat, 5 Apr 2025 12:50:46 +0000 Subject: [PATCH] feat(site): index url #736,#310 --- api/sites/list.go | 4 + app/src/api/site.ts | 1 + app/src/language/ar/app.po | 62 ++++++----- app/src/language/de_DE/app.po | 62 ++++++----- app/src/language/en/app.po | 62 ++++++----- app/src/language/es/app.po | 62 ++++++----- app/src/language/fr_FR/app.po | 62 ++++++----- app/src/language/ko_KR/app.po | 62 ++++++----- app/src/language/messages.pot | 64 +++++------ app/src/language/ru_RU/app.po | 62 ++++++----- app/src/language/tr_TR/app.po | 62 ++++++----- app/src/language/vi_VN/app.po | 62 ++++++----- app/src/language/zh_CN/app.po | 64 +++++------ app/src/language/zh_TW/app.po | 62 ++++++----- app/src/views/site/site_list/columns.tsx | 18 ++++ internal/config/config.go | 1 + internal/site/disable.go | 2 +- internal/site/enable.go | 4 +- internal/site/index.go | 132 +++++++++++++++++++++++ internal/site/rename.go | 4 +- 20 files changed, 559 insertions(+), 355 deletions(-) create mode 100644 internal/site/index.go diff --git a/api/sites/list.go b/api/sites/list.go index ed3b3204..c267a888 100644 --- a/api/sites/list.go +++ b/api/sites/list.go @@ -8,6 +8,7 @@ import ( "github.com/0xJacky/Nginx-UI/internal/config" "github.com/0xJacky/Nginx-UI/internal/nginx" + "github.com/0xJacky/Nginx-UI/internal/site" "github.com/0xJacky/Nginx-UI/model" "github.com/0xJacky/Nginx-UI/query" "github.com/gin-gonic/gin" @@ -90,6 +91,8 @@ func GetSiteList(c *gin.Context) { continue } + indexedSite := site.GetIndexedSite(file.Name()) + configs = append(configs, config.Config{ Name: file.Name(), ModifiedAt: fileInfo.ModTime(), @@ -98,6 +101,7 @@ func GetSiteList(c *gin.Context) { Enabled: enabledConfigMap[file.Name()], EnvGroupID: envGroupId, EnvGroup: envGroup, + Urls: indexedSite.Urls, }) } diff --git a/app/src/api/site.ts b/app/src/api/site.ts index 4ccd8aea..083d8180 100644 --- a/app/src/api/site.ts +++ b/app/src/api/site.ts @@ -22,6 +22,7 @@ export interface Site extends ModelBase { env_group_id: number env_group?: EnvGroup sync_node_ids: number[] + urls?: string[] } export interface AutoCertRequest { diff --git a/app/src/language/ar/app.po b/app/src/language/ar/app.po index 14e32da9..d15cf89f 100644 --- a/app/src/language/ar/app.po +++ b/app/src/language/ar/app.po @@ -43,12 +43,12 @@ msgstr "مستخدم ACME" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "إجراء" @@ -98,8 +98,8 @@ msgstr "تمت الإضافة بنجاح" msgid "Additional" msgstr "إضافي" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "الوضع المتقدم" @@ -282,8 +282,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "رجوع" @@ -336,8 +336,8 @@ msgstr "المعلومات الأساسية" msgid "Basic" msgstr "أساسي" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "الوضع الأساسي" @@ -642,7 +642,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -867,9 +867,9 @@ msgstr "تم تعطيل الموقع %{site} على %{node} بنجاح" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "معطل" @@ -993,8 +993,8 @@ msgstr "تم النسخ إلى المحلي بنجاح" msgid "Edit" msgstr "تعديل %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "تعديل %{n}" @@ -1094,11 +1094,11 @@ msgstr "تفعيل TOTP" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "مفعل" @@ -2042,8 +2042,8 @@ msgstr "قائمة السماح لمجلد سجلات Nginx" msgid "Nginx configuration has been restored" msgstr "خطأ في تحليل تكوين Nginx" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "خطأ في تحليل تكوين Nginx" @@ -2157,7 +2157,7 @@ msgid "Node" msgstr "اسم العقدة" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2648,7 +2648,7 @@ msgid "Reload" msgstr "إعادة تحميل" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2900,9 +2900,9 @@ msgstr "يعمل" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "حفظ" @@ -2964,8 +2964,8 @@ msgstr "تم الحفظ بنجاح" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "تم الحفظ بنجاح" @@ -3183,7 +3183,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "الحالة" @@ -3628,10 +3628,10 @@ msgstr "تم التحديث بنجاح" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3673,6 +3673,10 @@ msgstr "مدة التشغيل:" msgid "URL" msgstr "عنوان URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "استخدم كلمة المرور لمرة واحدة" diff --git a/app/src/language/de_DE/app.po b/app/src/language/de_DE/app.po index 76888d9a..ed315a97 100644 --- a/app/src/language/de_DE/app.po +++ b/app/src/language/de_DE/app.po @@ -40,12 +40,12 @@ msgstr "Benutzername" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Aktion" @@ -99,8 +99,8 @@ msgstr "Speichern erfolgreich" msgid "Additional" msgstr "Ort hinzufügen" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Erweiterter Modus" @@ -296,8 +296,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Zurück" @@ -352,8 +352,8 @@ msgstr "Basisinformationen" msgid "Basic" msgstr "Basic-Modus" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Basic-Modus" @@ -665,7 +665,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -898,9 +898,9 @@ msgstr "Speichern erfolgreich" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Deaktiviert" @@ -1033,8 +1033,8 @@ msgstr "Erfolgreich dupliziert" msgid "Edit" msgstr "Bearbeiten %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Bearbeiten %{n}" @@ -1141,11 +1141,11 @@ msgstr "Aktiviere TLS" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Aktiviert" @@ -2119,8 +2119,8 @@ msgstr "Nginx-Log-Verzeichnis-Whitelist" msgid "Nginx configuration has been restored" msgstr "Name der Konfiguration" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 #, fuzzy msgid "Nginx Configuration Parse Error" msgstr "Name der Konfiguration" @@ -2238,7 +2238,7 @@ msgid "Node" msgstr "Benuztername" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2755,7 +2755,7 @@ msgid "Reload" msgstr "Neu laden" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -3022,9 +3022,9 @@ msgstr "Arbeite" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Speichern" @@ -3089,8 +3089,8 @@ msgstr "Speichern erfolgreich" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Speichern erfolgreich" @@ -3314,7 +3314,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Status" @@ -3767,10 +3767,10 @@ msgstr "Speichern erfolgreich" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3815,6 +3815,10 @@ msgstr "Uptime:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "Benutze OTP" diff --git a/app/src/language/en/app.po b/app/src/language/en/app.po index ef512f38..b1c3447a 100644 --- a/app/src/language/en/app.po +++ b/app/src/language/en/app.po @@ -41,12 +41,12 @@ msgstr "Username" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Action" @@ -100,8 +100,8 @@ msgstr "Saved successfully" msgid "Additional" msgstr "Add Location" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Advance Mode" @@ -293,8 +293,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Back" @@ -349,8 +349,8 @@ msgstr "Base information" msgid "Basic" msgstr "Basic Mode" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Basic Mode" @@ -657,7 +657,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -889,9 +889,9 @@ msgstr "Saved successfully" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Disabled" @@ -1019,8 +1019,8 @@ msgstr "Saved successfully" msgid "Edit" msgstr "Edit %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Edit %{n}" @@ -1127,11 +1127,11 @@ msgstr "Enable TLS" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Enabled" @@ -2096,8 +2096,8 @@ msgstr "Configuration Name" msgid "Nginx configuration has been restored" msgstr "Configuration Name" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 #, fuzzy msgid "Nginx Configuration Parse Error" msgstr "Configuration Name" @@ -2214,7 +2214,7 @@ msgid "Node" msgstr "Username" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2708,7 +2708,7 @@ msgid "Reload" msgstr "" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2973,9 +2973,9 @@ msgstr "" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Save" @@ -3040,8 +3040,8 @@ msgstr "Saved successfully" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Saved successfully" @@ -3265,7 +3265,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Status" @@ -3696,10 +3696,10 @@ msgstr "Saved successfully" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3744,6 +3744,10 @@ msgstr "Uptime:" msgid "URL" msgstr "" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "" diff --git a/app/src/language/es/app.po b/app/src/language/es/app.po index 48f3228c..ea63fecb 100644 --- a/app/src/language/es/app.po +++ b/app/src/language/es/app.po @@ -46,12 +46,12 @@ msgstr "Usuario ACME" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Acción" @@ -101,8 +101,8 @@ msgstr "Agregado exitoso" msgid "Additional" msgstr "Adicional" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Modo avanzado" @@ -287,8 +287,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Volver" @@ -341,8 +341,8 @@ msgstr "Información general" msgid "Basic" msgstr "Básico" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Modo Básico" @@ -641,7 +641,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -868,9 +868,9 @@ msgstr "Habilitado exitoso de %{conf_name} en %{node_name}" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Desactivado" @@ -993,8 +993,8 @@ msgstr "Duplicado con éxito a local" msgid "Edit" msgstr "Editar %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Editar %{n}" @@ -1097,11 +1097,11 @@ msgstr "Habilitar TLS" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Habilitado" @@ -2045,8 +2045,8 @@ msgstr "Lista blanca de directorios de registro de Nginx" msgid "Nginx configuration has been restored" msgstr "Error de análisis de configuración de Nginx" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "Error de análisis de configuración de Nginx" @@ -2163,7 +2163,7 @@ msgid "Node" msgstr "Nuevo nombre" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2673,7 +2673,7 @@ msgid "Reload" msgstr "Recargar" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2928,9 +2928,9 @@ msgstr "Corriendo" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Guardar" @@ -2994,8 +2994,8 @@ msgstr "Guardado con éxito" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Guardado con éxito" @@ -3213,7 +3213,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Estado" @@ -3670,10 +3670,10 @@ msgstr "Actualización exitosa" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3715,6 +3715,10 @@ msgstr "Tiempo encendido:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "Usar OTP" diff --git a/app/src/language/fr_FR/app.po b/app/src/language/fr_FR/app.po index 08720b80..bbe56c53 100644 --- a/app/src/language/fr_FR/app.po +++ b/app/src/language/fr_FR/app.po @@ -45,12 +45,12 @@ msgstr "Nom d'utilisateur" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Action" @@ -104,8 +104,8 @@ msgstr "Mis à jour avec succés" msgid "Additional" msgstr "Supplémentaire" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Mode avancé" @@ -300,8 +300,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Retour" @@ -354,8 +354,8 @@ msgstr "Information générale" msgid "Basic" msgstr "Basique" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Mode simple" @@ -669,7 +669,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -905,9 +905,9 @@ msgstr "Dupliqué avec succès" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Désactivé" @@ -1037,8 +1037,8 @@ msgstr "Dupliqué avec succès" msgid "Edit" msgstr "Modifier %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Modifier %{n}" @@ -1145,11 +1145,11 @@ msgstr "Activer TLS" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Activé" @@ -2128,8 +2128,8 @@ msgstr "Erreur d'analyse de configuration Nginx" msgid "Nginx configuration has been restored" msgstr "Erreur d'analyse de configuration Nginx" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "Erreur d'analyse de configuration Nginx" @@ -2247,7 +2247,7 @@ msgid "Node" msgstr "Nom d'utilisateur" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2747,7 +2747,7 @@ msgid "Reload" msgstr "Recharger" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -3014,9 +3014,9 @@ msgstr "En cours d'éxécution" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Enregistrer" @@ -3080,8 +3080,8 @@ msgstr "Sauvegarde réussie" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Enregistré avec succès" @@ -3303,7 +3303,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Statut" @@ -3744,10 +3744,10 @@ msgstr "Mis à jour avec succés" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3790,6 +3790,10 @@ msgstr "Disponibilité :" msgid "URL" msgstr "" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "" diff --git a/app/src/language/ko_KR/app.po b/app/src/language/ko_KR/app.po index 81ccd67b..9f05fd3c 100644 --- a/app/src/language/ko_KR/app.po +++ b/app/src/language/ko_KR/app.po @@ -44,12 +44,12 @@ msgstr "ACME 사용자" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "작업" @@ -99,8 +99,8 @@ msgstr "성공적으로 추가됨" msgid "Additional" msgstr "추가적인" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "고급 모드" @@ -284,8 +284,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "뒤로" @@ -338,8 +338,8 @@ msgstr "기본 정보" msgid "Basic" msgstr "기본" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "기본 모드" @@ -638,7 +638,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -868,9 +868,9 @@ msgstr "%{node_name}에서 %{conf_name} 성공적으로 활성화됨" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "비활성화됨" @@ -989,8 +989,8 @@ msgstr "로컬로 성공적으로 복제됨" msgid "Edit" msgstr "%{n} 편집" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "%{n} 편집" @@ -1095,11 +1095,11 @@ msgstr "TLS 활성화" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "활성화됨" @@ -2058,8 +2058,8 @@ msgstr "Nginx 구성 오류름" msgid "Nginx configuration has been restored" msgstr "Nginx 구성 오류름" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 #, fuzzy msgid "Nginx Configuration Parse Error" msgstr "Nginx 구성 오류름" @@ -2178,7 +2178,7 @@ msgid "Node" msgstr "이름 변경" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2677,7 +2677,7 @@ msgid "Reload" msgstr "리로드" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2945,9 +2945,9 @@ msgstr "실행 중" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "저장" @@ -3012,8 +3012,8 @@ msgstr "성공적으로 저장됨" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "성공적으로 저장됨" @@ -3232,7 +3232,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "상태" @@ -3666,10 +3666,10 @@ msgstr "성공적으로 저장되었습니다" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3714,6 +3714,10 @@ msgstr "가동 시간:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "" diff --git a/app/src/language/messages.pot b/app/src/language/messages.pot index c90cdb53..63cffc38 100644 --- a/app/src/language/messages.pot +++ b/app/src/language/messages.pot @@ -33,12 +33,12 @@ msgstr "" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 +#: src/views/site/site_list/columns.tsx:93 #: src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" @@ -91,8 +91,8 @@ msgstr "" msgid "Additional" msgstr "" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "" @@ -270,8 +270,8 @@ msgstr "" #: src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 #: src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "" @@ -321,8 +321,8 @@ msgstr "" msgid "Basic" msgstr "" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "" @@ -602,7 +602,7 @@ msgstr "" msgid "Create system backups including Nginx configuration and Nginx UI settings. Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -819,10 +819,10 @@ msgstr "" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 -#: src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 +#: src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 #: src/views/user/userColumns.tsx:41 msgid "Disabled" @@ -937,8 +937,8 @@ msgstr "" msgid "Edit" msgstr "" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "" @@ -1034,11 +1034,11 @@ msgstr "" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 +#: src/views/stream/StreamEdit.vue:172 #: src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" @@ -1912,8 +1912,8 @@ msgstr "" msgid "Nginx configuration has been restored" msgstr "" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "" @@ -2019,7 +2019,7 @@ msgid "Node" msgstr "" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 msgid "Node Group" @@ -2472,7 +2472,7 @@ msgid "Reload" msgstr "" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2707,9 +2707,9 @@ msgstr "" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "" @@ -2767,8 +2767,8 @@ msgstr "" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "" @@ -2967,7 +2967,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 +#: src/views/site/site_list/columns.tsx:59 #: src/views/stream/StreamList.vue:45 msgid "Status" msgstr "" @@ -3329,10 +3329,10 @@ msgstr "" #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 #: src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 #: src/views/user/userColumns.tsx:54 @@ -3376,6 +3376,10 @@ msgstr "" msgid "URL" msgstr "" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "" diff --git a/app/src/language/ru_RU/app.po b/app/src/language/ru_RU/app.po index 9bb7a40a..1fcbaffd 100644 --- a/app/src/language/ru_RU/app.po +++ b/app/src/language/ru_RU/app.po @@ -46,12 +46,12 @@ msgstr "Пользователь ACME" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Действие" @@ -101,8 +101,8 @@ msgstr "Добавлено успешно" msgid "Additional" msgstr "Дополнительно" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Расширенный режим" @@ -281,8 +281,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Назад" @@ -335,8 +335,8 @@ msgstr "Основная информация" msgid "Basic" msgstr "Основные" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Простой режим" @@ -628,7 +628,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -855,9 +855,9 @@ msgstr "Включение %{conf_name} in %{node_name} успешно" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Отключено" @@ -980,8 +980,8 @@ msgstr "Успешно дублировано на локальный" msgid "Edit" msgstr "Редактировать %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Редактировать %{n}" @@ -1081,11 +1081,11 @@ msgstr "Включить TOTP" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Включено" @@ -2025,8 +2025,8 @@ msgstr "Белый список директорий для логов Nginx" msgid "Nginx configuration has been restored" msgstr "Ошибка разбора конфигурации Nginx" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "Ошибка разбора конфигурации Nginx" @@ -2142,7 +2142,7 @@ msgid "Node" msgstr "Имя узла" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2642,7 +2642,7 @@ msgid "Reload" msgstr "Перегрузить" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2895,9 +2895,9 @@ msgstr "Выполняется" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Сохранить" @@ -2959,8 +2959,8 @@ msgstr "Сохранено успешно" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Успешно сохранено" @@ -3177,7 +3177,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Статус" @@ -3626,10 +3626,10 @@ msgstr "Успешно обновлено" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3671,6 +3671,10 @@ msgstr "Аптайм:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "Использовать OTP" diff --git a/app/src/language/tr_TR/app.po b/app/src/language/tr_TR/app.po index d2674e2b..186d81cd 100644 --- a/app/src/language/tr_TR/app.po +++ b/app/src/language/tr_TR/app.po @@ -42,12 +42,12 @@ msgstr "ACME Kullanıcısı" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Eylem" @@ -97,8 +97,8 @@ msgstr "Başarıyla eklendi" msgid "Additional" msgstr "İlave bilgi" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Gelişmiş Mod" @@ -282,8 +282,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Geri" @@ -336,8 +336,8 @@ msgstr "Temel bilgiler" msgid "Basic" msgstr "Temel" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Temel Mod" @@ -634,7 +634,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -874,9 +874,9 @@ msgstr "" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Devre dışı" @@ -999,8 +999,8 @@ msgstr "Başarıyla yerel kopya oluşturuldu" msgid "Edit" msgstr "Düzenle %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Düzenle %{n}" @@ -1110,11 +1110,11 @@ msgstr "TOTP'yi Etkinleştir" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Etkin" @@ -2083,8 +2083,8 @@ msgstr "Nginx Yapılandırma Ayrıştırma Hatası" msgid "Nginx configuration has been restored" msgstr "Nginx Yapılandırma Ayrıştırma Hatası" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 #, fuzzy msgid "Nginx Configuration Parse Error" msgstr "Nginx Yapılandırma Ayrıştırma Hatası" @@ -2208,7 +2208,7 @@ msgid "Node" msgstr "Yeni Ad" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2780,7 +2780,7 @@ msgid "Reload" msgstr "Tekrar yükle" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -3064,9 +3064,9 @@ msgstr "Çalışıyor" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 #, fuzzy msgid "Save" msgstr "Kaydet" @@ -3135,8 +3135,8 @@ msgstr "Başarıyla kaydedin" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 #, fuzzy msgid "Saved successfully" msgstr "Başarıyla Kaydedildi" @@ -3375,7 +3375,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 #, fuzzy msgid "Status" msgstr "Durum" @@ -3873,10 +3873,10 @@ msgstr "Güncellendi" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 #, fuzzy @@ -3927,6 +3927,10 @@ msgstr "Çalışma süresi:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 #, fuzzy msgid "Use OTP" diff --git a/app/src/language/vi_VN/app.po b/app/src/language/vi_VN/app.po index d5723f80..a7920c07 100644 --- a/app/src/language/vi_VN/app.po +++ b/app/src/language/vi_VN/app.po @@ -40,12 +40,12 @@ msgstr "Người dùng" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "Hành động" @@ -99,8 +99,8 @@ msgstr "Cập nhật thành công" msgid "Additional" msgstr "Tùy chọn bổ sung" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "Nâng cao" @@ -293,8 +293,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "Quay lại" @@ -349,8 +349,8 @@ msgstr "Thông tin" msgid "Basic" msgstr "Cơ bản" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "Cơ bản" @@ -660,7 +660,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -893,9 +893,9 @@ msgstr "Đã bật %{conf_name} trên %{node_name}" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "Đã tắt" @@ -1023,8 +1023,8 @@ msgstr "Đã sao chép thành công vào máy cục bộ" msgid "Edit" msgstr "Sửa %{n}" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "Sửa %{n}" @@ -1131,11 +1131,11 @@ msgstr "Bật TLS" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "Đã bật" @@ -2090,8 +2090,8 @@ msgstr "Lỗi phân tích cú pháp cấu hình Nginx" msgid "Nginx configuration has been restored" msgstr "Lỗi phân tích cú pháp cấu hình Nginx" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 #, fuzzy msgid "Nginx Configuration Parse Error" msgstr "Lỗi phân tích cú pháp cấu hình Nginx" @@ -2208,7 +2208,7 @@ msgid "Node" msgstr "Username" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2705,7 +2705,7 @@ msgid "Reload" msgstr "Tải lại" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2973,9 +2973,9 @@ msgstr "Running" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "Lưu" @@ -3040,8 +3040,8 @@ msgstr "Lưu thành công" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "Lưu thành công" @@ -3257,7 +3257,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "Trạng thái" @@ -3687,10 +3687,10 @@ msgstr "Cập nhật thành công" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3735,6 +3735,10 @@ msgstr "Thời gian hoạt động:" msgid "URL" msgstr "" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "" diff --git a/app/src/language/zh_CN/app.po b/app/src/language/zh_CN/app.po index e4f6a158..c9a9f03a 100644 --- a/app/src/language/zh_CN/app.po +++ b/app/src/language/zh_CN/app.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2025-04-05 17:43+0800\n" +"PO-Revision-Date: 2025-04-05 20:52+0800\n" "Last-Translator: 0xJacky \n" "Language-Team: Chinese (Simplified Han script) \n" @@ -44,12 +44,12 @@ msgstr "ACME 用户" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "操作" @@ -99,8 +99,8 @@ msgstr "添加成功" msgid "Additional" msgstr "额外选项" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "高级模式" @@ -275,8 +275,8 @@ msgstr "自动索引站点和 Stream 的配置文件。" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "返回" @@ -326,8 +326,8 @@ msgstr "基本信息" msgid "Basic" msgstr "基本" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "基本模式" @@ -616,7 +616,7 @@ msgid "" msgstr "" "创建系统备份,包括 Nginx 配置和 Nginx UI 设置。备份文件将自动下载到你的电脑。" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -828,9 +828,9 @@ msgstr "在 %{node} 上禁用 %{name} 成功" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "禁用" @@ -947,8 +947,8 @@ msgstr "成功复制到本地" msgid "Edit" msgstr "编辑" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "编辑 %{n}" @@ -1041,11 +1041,11 @@ msgstr "启用 TOTP" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "启用" @@ -1933,8 +1933,8 @@ msgstr "未设置 Nginx 配置目录" msgid "Nginx configuration has been restored" msgstr "Nginx 配置已恢复" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "Nginx 配置解析错误" @@ -2041,7 +2041,7 @@ msgid "Node" msgstr "节点" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 msgid "Node Group" @@ -2515,7 +2515,7 @@ msgid "Reload" msgstr "重载" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2746,9 +2746,9 @@ msgstr "运行中" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "保存" @@ -2804,8 +2804,8 @@ msgstr "保存成功" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "保存成功" @@ -3012,7 +3012,7 @@ msgstr "开始还原" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "状态" @@ -3425,10 +3425,10 @@ msgstr "更新成功" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3470,6 +3470,10 @@ msgstr "运行时间:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "链接" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "使用二步验证码" diff --git a/app/src/language/zh_TW/app.po b/app/src/language/zh_TW/app.po index f9b04bae..be18c1c4 100644 --- a/app/src/language/zh_TW/app.po +++ b/app/src/language/zh_TW/app.po @@ -49,12 +49,12 @@ msgstr "ACME 用戶" #: src/views/certificate/CertificateList/certColumns.tsx:97 #: src/views/certificate/DNSCredential.vue:33 #: src/views/config/configColumns.tsx:42 -#: src/views/environments/group/columns.ts:42 +#: src/views/environments/group/columns.ts:43 #: src/views/environments/list/envColumns.tsx:97 #: src/views/nginx_log/NginxLogList.vue:53 #: src/views/notification/notificationColumns.tsx:66 #: src/views/preference/AuthSettings.vue:30 -#: src/views/site/site_list/columns.tsx:76 src/views/stream/StreamList.vue:72 +#: src/views/site/site_list/columns.tsx:93 src/views/stream/StreamList.vue:72 #: src/views/user/userColumns.tsx:60 msgid "Action" msgstr "操作" @@ -104,8 +104,8 @@ msgstr "添加成功" msgid "Additional" msgstr "其他設定" -#: src/views/site/site_edit/SiteEdit.vue:205 -#: src/views/stream/StreamEdit.vue:191 +#: src/views/site/site_edit/SiteEdit.vue:206 +#: src/views/stream/StreamEdit.vue:192 msgid "Advance Mode" msgstr "進階模式" @@ -283,8 +283,8 @@ msgstr "" #: src/views/certificate/CertificateEditor.vue:255 #: src/views/config/ConfigEditor.vue:213 src/views/config/ConfigList.vue:106 #: src/views/config/ConfigList.vue:180 src/views/nginx_log/NginxLog.vue:173 -#: src/views/site/site_edit/SiteEdit.vue:264 -#: src/views/stream/StreamEdit.vue:247 +#: src/views/site/site_edit/SiteEdit.vue:265 +#: src/views/stream/StreamEdit.vue:248 msgid "Back" msgstr "返回" @@ -337,8 +337,8 @@ msgstr "基本資訊" msgid "Basic" msgstr "基本" -#: src/views/site/site_edit/SiteEdit.vue:208 -#: src/views/stream/StreamEdit.vue:194 +#: src/views/site/site_edit/SiteEdit.vue:209 +#: src/views/stream/StreamEdit.vue:195 msgid "Basic Mode" msgstr "基本模式" @@ -629,7 +629,7 @@ msgid "" "Backup files will be automatically downloaded to your computer." msgstr "" -#: src/views/environments/group/columns.ts:30 +#: src/views/environments/group/columns.ts:31 #: src/views/notification/notificationColumns.tsx:59 #: src/views/preference/components/Passkey.vue:95 #: src/views/user/userColumns.tsx:48 @@ -845,9 +845,9 @@ msgstr "成功禁用 %{node} 中的站点 %{site}" #: src/views/preference/HTTPSettings.vue:24 #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 -#: src/views/site/site_edit/SiteEdit.vue:190 -#: src/views/site/site_list/columns.tsx:53 -#: src/views/site/site_list/columns.tsx:62 src/views/stream/StreamEdit.vue:177 +#: src/views/site/site_edit/SiteEdit.vue:191 +#: src/views/site/site_list/columns.tsx:70 +#: src/views/site/site_list/columns.tsx:79 src/views/stream/StreamEdit.vue:178 #: src/views/stream/StreamList.vue:56 src/views/user/userColumns.tsx:41 msgid "Disabled" msgstr "停用" @@ -964,8 +964,8 @@ msgstr "成功複製至本機" msgid "Edit" msgstr "編輯" -#: src/views/site/site_edit/SiteEdit.vue:179 -#: src/views/stream/StreamEdit.vue:166 +#: src/views/site/site_edit/SiteEdit.vue:180 +#: src/views/stream/StreamEdit.vue:167 msgid "Edit %{n}" msgstr "編輯 %{n}" @@ -1065,11 +1065,11 @@ msgstr "啟用 TOTP" #: src/views/preference/NodeSettings.vue:25 #: src/views/preference/NodeSettings.vue:30 #: src/views/site/site_edit/RightSettings.vue:82 -#: src/views/site/site_edit/SiteEdit.vue:184 -#: src/views/site/site_list/columns.tsx:49 -#: src/views/site/site_list/columns.tsx:61 +#: src/views/site/site_edit/SiteEdit.vue:185 +#: src/views/site/site_list/columns.tsx:66 +#: src/views/site/site_list/columns.tsx:78 #: src/views/stream/components/RightSettings.vue:81 -#: src/views/stream/StreamEdit.vue:171 src/views/stream/StreamList.vue:52 +#: src/views/stream/StreamEdit.vue:172 src/views/stream/StreamList.vue:52 #: src/views/user/userColumns.tsx:38 msgid "Enabled" msgstr "已啟用" @@ -2003,8 +2003,8 @@ msgstr "Nginx 日誌目錄白名單" msgid "Nginx configuration has been restored" msgstr "Nginx 設定解析錯誤" -#: src/views/site/site_edit/SiteEdit.vue:223 -#: src/views/stream/StreamEdit.vue:209 +#: src/views/site/site_edit/SiteEdit.vue:224 +#: src/views/stream/StreamEdit.vue:210 msgid "Nginx Configuration Parse Error" msgstr "Nginx 設定解析錯誤" @@ -2118,7 +2118,7 @@ msgid "Node" msgstr "節點名稱" #: src/views/site/site_edit/RightSettings.vue:91 -#: src/views/site/site_list/columns.tsx:25 +#: src/views/site/site_list/columns.tsx:42 #: src/views/stream/components/RightSettings.vue:90 #: src/views/stream/StreamList.vue:28 #, fuzzy @@ -2601,7 +2601,7 @@ msgid "Reload" msgstr "重新載入" #: src/components/EnvGroupTabs/EnvGroupTabs.vue:156 -#: src/views/environments/group/columns.ts:23 +#: src/views/environments/group/columns.ts:24 #: src/views/environments/group/EnvGroup.vue:37 #: src/views/environments/list/Environment.vue:120 #: src/views/environments/list/Environment.vue:128 @@ -2853,9 +2853,9 @@ msgstr "執行中" #: src/views/preference/Preference.vue:221 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:127 #: src/views/site/site_edit/components/ConfigName.vue:52 -#: src/views/site/site_edit/SiteEdit.vue:271 +#: src/views/site/site_edit/SiteEdit.vue:272 #: src/views/stream/components/ConfigName.vue:52 -#: src/views/stream/StreamEdit.vue:254 +#: src/views/stream/StreamEdit.vue:255 msgid "Save" msgstr "儲存" @@ -2917,8 +2917,8 @@ msgstr "儲存成功" #: src/views/config/ConfigEditor.vue:167 #: src/views/site/ngx_conf/directive/DirectiveEditorItem.vue:39 #: src/views/site/site_add/SiteAdd.vue:37 -#: src/views/site/site_edit/SiteEdit.vue:152 -#: src/views/stream/StreamEdit.vue:140 +#: src/views/site/site_edit/SiteEdit.vue:153 +#: src/views/stream/StreamEdit.vue:141 msgid "Saved successfully" msgstr "儲存成功" @@ -3132,7 +3132,7 @@ msgstr "" #: src/views/certificate/ACMEUser.vue:65 #: src/views/certificate/CertificateList/certColumns.tsx:68 #: src/views/environments/list/envColumns.tsx:44 -#: src/views/site/site_list/columns.tsx:42 src/views/stream/StreamList.vue:45 +#: src/views/site/site_list/columns.tsx:59 src/views/stream/StreamList.vue:45 msgid "Status" msgstr "狀態" @@ -3555,10 +3555,10 @@ msgstr "更新成功" #: src/views/certificate/ACMEUser.vue:88 #: src/views/certificate/DNSCredential.vue:27 #: src/views/config/configColumns.tsx:34 src/views/config/ConfigEditor.vue:276 -#: src/views/environments/group/columns.ts:36 +#: src/views/environments/group/columns.ts:37 #: src/views/environments/list/envColumns.tsx:90 #: src/views/site/site_edit/RightSettings.vue:100 -#: src/views/site/site_list/columns.tsx:69 +#: src/views/site/site_list/columns.tsx:86 #: src/views/stream/components/RightSettings.vue:99 #: src/views/stream/StreamList.vue:65 src/views/user/userColumns.tsx:54 msgid "Updated at" @@ -3600,6 +3600,10 @@ msgstr "運作時間:" msgid "URL" msgstr "URL" +#: src/views/site/site_list/columns.tsx:25 +msgid "URLs" +msgstr "" + #: src/components/TwoFA/Authorization.vue:121 msgid "Use OTP" msgstr "使用一次性密碼" diff --git a/app/src/views/site/site_list/columns.tsx b/app/src/views/site/site_list/columns.tsx index 912db73c..397401f4 100644 --- a/app/src/views/site/site_list/columns.tsx +++ b/app/src/views/site/site_list/columns.tsx @@ -21,6 +21,24 @@ const columns: Column[] = [{ }, search: true, width: 120, +}, { + title: () => $gettext('URLs'), + dataIndex: 'urls', + customRender: ({ text, record }) => { + const template: JSXElements = [] + if (record.enabled) { + text?.forEach((url: string) => { + template.push({url}) + template.push(, ) + }) + template.pop() // Remove last comma + } + else { + template.push({text?.join(', ')}) + } + return h('div', template) + }, + width: 120, }, { title: () => $gettext('Node Group'), dataIndex: 'env_group_id', diff --git a/internal/config/config.go b/internal/config/config.go index c6f0183d..9317123f 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -19,4 +19,5 @@ type Config struct { EnvGroup *model.EnvGroup `json:"env_group,omitempty"` Enabled bool `json:"enabled"` Dir string `json:"dir"` + Urls []string `json:"urls,omitempty"` } diff --git a/internal/site/disable.go b/internal/site/disable.go index 25cd1545..b75808fa 100644 --- a/internal/site/disable.go +++ b/internal/site/disable.go @@ -35,7 +35,7 @@ func Disable(name string) (err error) { output := nginx.Reload() if nginx.GetLogLevel(output) > nginx.Warn { - return fmt.Errorf(output) + return fmt.Errorf("%s", output) } go syncDisable(name) diff --git a/internal/site/enable.go b/internal/site/enable.go index 9682f5eb..5a27d9ac 100644 --- a/internal/site/enable.go +++ b/internal/site/enable.go @@ -37,12 +37,12 @@ func Enable(name string) (err error) { output := nginx.TestConf() if nginx.GetLogLevel(output) > nginx.Warn { _ = os.Remove(enabledConfigFilePath) - return fmt.Errorf(output) + return fmt.Errorf("%s", output) } output = nginx.Reload() if nginx.GetLogLevel(output) > nginx.Warn { - return fmt.Errorf(output) + return fmt.Errorf("%s", output) } go syncEnable(name) diff --git a/internal/site/index.go b/internal/site/index.go new file mode 100644 index 00000000..381e67f3 --- /dev/null +++ b/internal/site/index.go @@ -0,0 +1,132 @@ +package site + +import ( + "net" + "path/filepath" + "regexp" + "strings" + + "github.com/0xJacky/Nginx-UI/internal/cache" +) + +type SiteIndex struct { + Path string + Content string + Urls []string +} + +var ( + IndexedSites = make(map[string]*SiteIndex) +) + +func GetIndexedSite(path string) *SiteIndex { + if site, ok := IndexedSites[path]; ok { + return site + } + return &SiteIndex{} +} + +func init() { + cache.RegisterCallback(scanForSite) +} + +func scanForSite(configPath string, content []byte) error { + // Regular expressions for server_name and listen directives + serverNameRegex := regexp.MustCompile(`(?m)server_name\s+([^;]+);`) + listenRegex := regexp.MustCompile(`(?m)listen\s+([^;]+);`) + + // Find server blocks + serverBlockRegex := regexp.MustCompile(`(?ms)server\s*\{[^\{]*((.*?\{.*?\})*?[^\}]*)\}`) + serverBlocks := serverBlockRegex.FindAllSubmatch(content, -1) + + siteIndex := SiteIndex{ + Path: configPath, + Content: string(content), + Urls: []string{}, + } + + // Map to track hosts and their SSL status + hostMap := make(map[string]bool) + + for _, block := range serverBlocks { + serverBlockContent := block[0] + + // Extract server_name values + serverNameMatches := serverNameRegex.FindSubmatch(serverBlockContent) + if len(serverNameMatches) < 2 { + continue + } + + // Get all server names + serverNames := strings.Fields(string(serverNameMatches[1])) + var validServerNames []string + + // Filter valid domain names and IPs + for _, name := range serverNames { + // Skip placeholder names + if name == "_" || name == "localhost" { + continue + } + + // Check if it's a valid IP + if net.ParseIP(name) != nil { + validServerNames = append(validServerNames, name) + continue + } + + // Basic domain validation + if isValidDomain(name) { + validServerNames = append(validServerNames, name) + } + } + + if len(validServerNames) == 0 { + continue + } + + // Check if SSL is enabled + listenMatches := listenRegex.FindAllSubmatch(serverBlockContent, -1) + hasSSL := false + + for _, match := range listenMatches { + if len(match) >= 2 { + listenValue := string(match[1]) + if strings.Contains(listenValue, "ssl") || strings.Contains(listenValue, "443") { + hasSSL = true + break + } + } + } + + // Update host map with SSL status + for _, name := range validServerNames { + // Only update if this host doesn't have SSL yet + if currentSSL, exists := hostMap[name]; !exists || !currentSSL { + hostMap[name] = hasSSL + } + } + } + + // Generate URLs from the host map + for host, hasSSL := range hostMap { + protocol := "http" + if hasSSL { + protocol = "https" + } + url := protocol + "://" + host + siteIndex.Urls = append(siteIndex.Urls, url) + } + + // Only store if we found valid URLs + if len(siteIndex.Urls) > 0 { + IndexedSites[filepath.Base(configPath)] = &siteIndex + } + + return nil +} + +// isValidDomain performs a basic validation of domain names +func isValidDomain(domain string) bool { + // Basic validation: contains at least one dot and no spaces + return strings.Contains(domain, ".") && !strings.Contains(domain, " ") +} diff --git a/internal/site/rename.go b/internal/site/rename.go index 457cb04e..174b37b0 100644 --- a/internal/site/rename.go +++ b/internal/site/rename.go @@ -49,13 +49,13 @@ func Rename(oldName string, newName string) (err error) { // test nginx configuration output := nginx.TestConf() if nginx.GetLogLevel(output) > nginx.Warn { - return fmt.Errorf(output) + return fmt.Errorf("%s", output) } // reload nginx output = nginx.Reload() if nginx.GetLogLevel(output) > nginx.Warn { - return fmt.Errorf(output) + return fmt.Errorf("%s", output) } go syncRename(oldName, newName)