diff --git a/frontend/components.d.ts b/frontend/components.d.ts
index 842c10ce..0595f33c 100644
--- a/frontend/components.d.ts
+++ b/frontend/components.d.ts
@@ -12,17 +12,13 @@ declare module '@vue/runtime-core' {
ABreadcrumbItem: typeof import('ant-design-vue/es')['BreadcrumbItem']
AButton: typeof import('ant-design-vue/es')['Button']
ACard: typeof import('ant-design-vue/es')['Card']
- ACol: typeof import('ant-design-vue/es')['Col']
AConfigProvider: typeof import('ant-design-vue/es')['ConfigProvider']
- ADivider: typeof import('ant-design-vue/es')['Divider']
ADrawer: typeof import('ant-design-vue/es')['Drawer']
AEmpty: typeof import('ant-design-vue/es')['Empty']
AForm: typeof import('ant-design-vue/es')['Form']
AFormItem: typeof import('ant-design-vue/es')['FormItem']
AInput: typeof import('ant-design-vue/es')['Input']
AInputGroup: typeof import('ant-design-vue/es')['InputGroup']
- AInputNumber: typeof import('ant-design-vue/es')['InputNumber']
- AInputPassword: typeof import('ant-design-vue/es')['InputPassword']
ALayout: typeof import('ant-design-vue/es')['Layout']
ALayoutContent: typeof import('ant-design-vue/es')['LayoutContent']
ALayoutFooter: typeof import('ant-design-vue/es')['LayoutFooter']
@@ -33,20 +29,13 @@ declare module '@vue/runtime-core' {
AMenu: typeof import('ant-design-vue/es')['Menu']
AMenuItem: typeof import('ant-design-vue/es')['MenuItem']
AModal: typeof import('ant-design-vue/es')['Modal']
- APagination: typeof import('ant-design-vue/es')['Pagination']
APopconfirm: typeof import('ant-design-vue/es')['Popconfirm']
AProgress: typeof import('ant-design-vue/es')['Progress']
- AResult: typeof import('ant-design-vue/es')['Result']
- ARow: typeof import('ant-design-vue/es')['Row']
ASelect: typeof import('ant-design-vue/es')['Select']
ASelectOption: typeof import('ant-design-vue/es')['SelectOption']
ASpace: typeof import('ant-design-vue/es')['Space']
- AStatistic: typeof import('ant-design-vue/es')['Statistic']
- AStep: typeof import('ant-design-vue/es')['Step']
- ASteps: typeof import('ant-design-vue/es')['Steps']
ASubMenu: typeof import('ant-design-vue/es')['SubMenu']
ASwitch: typeof import('ant-design-vue/es')['Switch']
- ATable: typeof import('ant-design-vue/es')['Table']
ATabPane: typeof import('ant-design-vue/es')['TabPane']
ATabs: typeof import('ant-design-vue/es')['Tabs']
ATag: typeof import('ant-design-vue/es')['Tag']
@@ -68,8 +57,5 @@ declare module '@vue/runtime-core' {
StdDataEntryComponentsStdPassword: typeof import('./src/components/StdDataEntry/components/StdPassword.vue')['default']
StdDataEntryComponentsStdSelect: typeof import('./src/components/StdDataEntry/components/StdSelect.vue')['default']
StdDataEntryComponentsStdSelector: typeof import('./src/components/StdDataEntry/components/StdSelector.vue')['default']
- StdDataEntryCompontentsStdPassword: typeof import('./src/components/StdDataEntry/compontents/StdPassword.vue')['default']
- StdDataEntryCompontentsStdSelect: typeof import('./src/components/StdDataEntry/compontents/StdSelect.vue')['default']
- StdDataEntryCompontentsStdSelector: typeof import('./src/components/StdDataEntry/compontents/StdSelector.vue')['default']
}
}
diff --git a/frontend/src/components/StdDataEntry/compontents/StdPassword.vue b/frontend/src/components/StdDataEntry/compontents/StdPassword.vue
deleted file mode 100644
index d7cede50..00000000
--- a/frontend/src/components/StdDataEntry/compontents/StdPassword.vue
+++ /dev/null
@@ -1,51 +0,0 @@
-
-
-
-
如果您之前沒有證書,請先點選「從 Let's Encrypt 獲取證書」。","The filename cannot contain the following characters: %{c}":"檔名不能包含以下字元: %{c}","The username or password is incorrect":"用戶名或密碼不正確","Theme":"外觀樣式","Updated at":"修改時間","Updated successfully":"已成功更新","Uptime:":"執行時間:","Username":"使用者名稱","Username (*)":"使用者名稱 (*)","Using HTTP01 challenge provider":"使用 HTTP01 挑戰提供者","Warning":"警告","Writes":"寫","Writing certificate private key to disk":"將證書私鑰寫入磁盤","Writing certificate to disk":"將證書寫入磁盤","Yes":"是的","License":{"Project":"開源軟體授權條款"}}}
\ No newline at end of file
+{"zh_CN":{"About":"关于","Access Logs":"访问日志","Action":"操作","Add":"添加","Add Directive Below":"在下面添加指令","Add Location":"添加 Location","Add Site":"添加站点","Advance Mode":"高级模式","Are you sure you want to delete?":"您确定要删除吗?","Are you sure you want to remove this directive?":"您确定要删除这条指令?","Are you sure you want to remove this location?":"您确定要删除这个 Location?","Author":"作者","Auto":"自动","Auto Cert":"自动更新","Auto cert is enabled, please do not modify this certification.":"自动更新已启用,请勿修改此证书配置。","Auto Refresh":"自动刷新","Auto-renewal disabled for %{name}":"成功关闭 %{name} 自动续签","Auto-renewal enabled for %{name}":"成功启用 %{name} 自动续签","Back":"返回","Back Home":"返回首页","Base information":"基本信息","Basic Mode":"基本模式","Batch Modify":"批量修改","Build with":"构建基于","Cancel":"取消","Certificate has expired":"此证书已过期","Certificate is valid":"此证书有效","Certificate Status":"证书状态","Certification":"证书","Change Certificate":"更改证书","Comments":"注释","Config Templates":"配置","Configuration Name":"配置名称","Configurations":"配置","Configure SSL":"配置 SSL","Content":"内容","CPU Status":"CPU 状态","CPU:":"CPU:","Create Another":"再创建一个","Created at":"创建时间","Creating client facilitates communication with the CA server":"正在创建客户端用于与 CA 服务器通信","Custom":"自定义","Dark":"深色","Dashboard":"仪表盘","Database (Optional, default: database)":"数据库 (可选,默认: database)","Delete":"删除","Delete ID: %{id}":"删除 ID: %{id}","Delete site: %{site_name}":"删除站点: %{site_name}","Description":"描述","Development Mode":"开发模式","Dir":"目录","Directive":"指令","Directives":"指令","Disable auto-renewal failed for %{name}":"关闭 %{name} 自动续签失败","Disabled":"禁用","Disabled successfully":"禁用成功","Disk IO":"磁盘 IO","Domain":"域名","Domain Config Created Successfully":"域名配置文件创建成功","Edit %{n}":"编辑 %{n}","Edit Configuration":"编辑配置","Edit Site":"编辑站点","Email (*)":"邮箱 (*)","Enable auto-renewal failed for %{name}":"启用 %{name} 自动续签失败","Enable failed":"启用失败","Enable TLS":"启用 TLS","Enabled":"启用","Enabled successfully":"启用成功","Encrypt website with Let's Encrypt":"用 Let's Encrypt 对网站进行加密","Error Logs":"错误日志","Expiration Date: %{date}":"过期时间: %{date}","Export":"导出","Failed to disable %{msg}":"禁用失败 %{msg}","Failed to enable %{msg}":"启用失败 %{msg}","Failed to get certificate information":"获取证书信息失败","File":"文件","File Not Found":"未找到文件","Filter":"过滤","Finished":"完成","Format Code":"代码格式化","Format error %{msg}":"保存错误 %{msg}","Format successfully":"保存成功","Generate":"生成","Generating private key for registering account":"正在生成私钥用于注册账户","Getting the certificate, please wait...":"正在获取证书,请稍等...","Home":"首页","HTTP Challenge Port":"HTTP Challenge 监听端口","HTTP Port":"HTTP 监听端口","Install":"安装","Install successfully":"安装成功","Intermediate Certification Authorities: %{issuer}":"中级证书颁发机构: %{issuer}","Issued certificate successfully":"证书申请成功","Jwt Secret":"Jwt 密钥","Leave blank for no change":"留空表示不修改","Light":"浅色","Load Averages:":"系统负载:","Location":"Location","Locations":"Locations","Login":"登录","Login successful":"登录成功","Logout successful":"登出成功","Make sure you have configured a reverse proxy for .well-known directory to HTTPChallengePort (default: 9180) before getting the certificate.":"在获取签发证书前,请确保配置文件中已将 .well-known 目录反向代理到 HTTPChallengePort (默认: 9180)","Manage Configs":"配置管理","Manage Sites":"网站管理","Manage Users":"用户管理","Memory":"内存","Memory and Storage":"内存与存储","Modify":"修改","Modify Config":"修改配置文件","Multi-line Directive":"单行指令","Name":"名称","Network":"网络","Network Statistics":"流量统计","Network Total Receive":"下载流量","Network Total Send":"上传流量","Next":"下一步","Nginx Access Log Path":"Nginx 访问日志路径","Nginx Error Log Path":"Nginx 错误日志路径","Nginx Log":"Nginx 日志","No":"取消","Not Found":"找不到页面","Not Valid Before: %{date}":"此前无效: %{date}","Note":"注意","Obtaining certificate":"正在获取证书","OK":"确定","OS:":"OS:","Params":"参数","Password":"密码","Password (*)":"密码 (*)","Path":"路径","Please input your E-mail!":"请输入您的邮箱!","Please input your password!":"请输入您的密码!","Please input your username!":"请输入您的用户名!","Preference":"偏好设置","Preparing lego configurations":"正在准备 Lego 的配置","Prohibit changing root password in demo":"禁止在演示模式下修改 root 账户的密码","Prohibit deleting the default user":"禁止删除默认用户","Project Team":"项目团队","Reads":"读","Receive":"下载","Registering user":"正在注册用户","Reloading nginx":"正在重载 Nginx","Reset":"重置","Run Mode":"运行模式","Save":"保存","Save Directive":"保存指令","Save error %{msg}":"保存错误 %{msg}","Save successfully":"保存成功","Save Successfully":"保存成功","Saved successfully":"保存成功","Selector":"选择器","Send":"上传","Server error":"服务器错误","Server Info":"服务器信息","server_name not found in directives":"未在指令集合中找到 server_name","server_name parameter is required":"必须为 server_name 指令指明参数","Single Directive":"单行指令","Site Logs":"站点列表","Sites List":"站点列表","SSL Certificate Key Path":"SSL证书密钥路径","SSL Certificate Path":"SSL证书路径","SSL Certification Content":"SSL证书内容","SSL Certification Key Content":"SSL证书密钥内容","Status":"状态","Storage":"存储","Subject Name: %{name}":"主体名称: %{name}","Swap":"Swap","Table":"列表","Terminal":"终端","Terminal Start Command":"终端启动命令","The certificate for the domain will be checked every hour, and will be renewed if it has been more than 1 month since it was last issued.":"系统将会每小时检测一次该域名证书,若距离上次签发已超过1个月,则将自动续签。","The filename cannot contain the following characters: %{c}":"文件名不能包含以下字符: %{c}","The server_name in the current configuration must be the domain name you need to get the certificate.":"当前配置中的 server_name 必须为需要申请证书的域名。","The username or password is incorrect":"用户名或密码错误","Theme":"主题","Type":"类型","Updated at":"修改时间","Updated successfully":"更新成功","Uptime:":"运行时间:","Username":"用户名","Username (*)":"用户名 (*)","Using HTTP01 challenge provider":"使用 HTTP01 challenge provider","View":"查看","Warning":"警告","Writes":"写","Writing certificate private key to disk":"正在将证书私钥写入磁盘","Writing certificate to disk":"正在将证书写入磁盘","Yes":"是的","License":{"Project":"开源许可"}},"en":{"About":"About","Action":"Action","Add Directive Below":"Add Directive Below","Add Location":"Add Location","Add Site":"Add Site","Advance Mode":"Advance Mode","Are you sure you want to remove this directive?":"Are you sure you want to remove this directive?","Auto-renewal disabled for %{name}":"Auto-renewal disabled for %{name}","Auto-renewal enabled for %{name}":"Auto-renewal enabled for %{name}","Back":"Back","Base information":"Base information","Basic Mode":"Basic Mode","Build with":"Build with","Cancel":"Cancel","Certificate has expired":"Certificate has expired","Certificate is valid":"Certificate is valid","Certificate Status":"Certificate Status","Comments":"Comments","Configuration Name":"Configuration Name","Configurations":"Configurations","Configure SSL":"Configure SSL","Content":"Content","CPU Status":"CPU Status","CPU:":"CPU:","Create Another":"Create Another","Created at":"Created at","Dashboard":"Dashboard","Database (Optional, default: database)":"Database (Optional, default: database)","Development Mode":"Development Mode","Directive":"Directive","Directives":"Directives","Disable auto-renewal failed for %{name}":"Disable auto-renewal failed for %{name}","Disabled":"Disabled","Disabled successfully":"Disabled successfully","Disk IO":"Disk IO","Domain Config Created Successfully":"Domain Config Created Successfully","Edit %{n}":"Edit %{n}","Edit Configuration":"Edit Configuration","Edit Site":"Edit Site","Email (*)":"Email (*)","Enable auto-renewal failed for %{name}":"Enable auto-renewal failed for %{name}","Enable failed":"Enable failed","Enable TLS":"Enable TLS","Enabled":"Enabled","Enabled successfully":"Enabled successfully","Encrypt website with Let's Encrypt":"Encrypt website with Let's Encrypt","Expiration Date: %{date}":"Expiration Date: %{date}","Failed to disable %{msg}":"Failed to disable %{msg}","Failed to enable %{msg}":"Failed to enable %{msg}","File Not Found":"File Not Found","Finished":"Finished","Getting the certificate, please wait...":"Getting the certificate, please wait...","Home":"Home","Install":"Install","Intermediate Certification Authorities: %{issuer}":"Intermediate Certification Authorities: %{issuer}","Leave blank for no change":"Leave blank for no change","Load Averages:":"Load Averages:","Location":"Location","Locations":"Locations","Login":"Login","Login successful":"Login successful","Logout successful":"Logout successful","Make sure you have configured a reverse proxy for .well-known directory to HTTPChallengePort (default: 9180) before getting the certificate.":"Make sure you have configured a reverse proxy for .well-known directory to HTTPChallengePort (default: 9180) before getting the certificate.","Manage Configs":"Manage Configs","Manage Sites":"Manage Sites","Manage Users":"Manage Users","Memory":"Memory","Memory and Storage":"Memory and Storage","Modify Config":"Modify Config","Name":"Name","Network":"Network","Network Statistics":"Network Statistics","Network Total Receive":"Network Total Receive","Network Total Send":"Network Total Send","Next":"Next","No":"No","Not Found":"Not Found","Not Valid Before: %{date}":"Not Valid Before: %{date}","OS:":"OS:","Params":"Params","Password":"Password","Password (*)":"Password (*)","Path":"Path","Please input your E-mail!":"Please input your E-mail!","Please input your password!":"Please input your password!","Please input your username!":"Please input your username!","Project Team":"Project Team","Reads":"Reads","Receive":"Receive","Save":"Save","Save Directive":"Save Directive","Save error %{msg}":"Save error %{msg}","Saved successfully":"Saved successfully","Send":"Send","Server error":"Server error","Server Info":"Server Info","server_name not found in directives":"server_name not found in directives","server_name parameter is required":"server_name parameter is required","Single Directive":"Single Directive","Sites List":"Sites List","Status":"Status","Storage":"Storage","Subject Name: %{name}":"Subject Name: %{name}","Swap":"Swap","Terminal":"Terminal","The certificate for the domain will be checked every hour, and will be renewed if it has been more than 1 month since it was last issued.":"The certificate for the domain will be checked every hour, and will be renewed if it has been more than 1 month since it was last issued.","The filename cannot contain the following characters: %{c}":"The filename cannot contain the following characters: %{c}","Updated at":"Updated at","Uptime:":"Uptime:","Username":"Username","Username (*)":"Username (*)","Warning":"Warning","Writes":"Writes","Yes":"Yes","License":{"Project":"License"}},"zh_TW":{"About":"關於","Access Logs":"訪問日誌","Action":"操作","Add":"新增","Add Directive Below":"在下面新增指令","Add Location":"新增 Location","Add Site":"新增站點","Advance Mode":"高階模式","Are you sure you want to delete?":"你確定你要刪除?","Are you sure you want to remove this directive?":"您確定要刪除這條指令?","Are you sure you want to remove this location?":"您確定要刪除此 Location 嗎?","Auto":"自動","Auto Refresh":"自動刷新","Auto-renewal disabled for %{name}":"已關閉 %{name} 自動續簽","Auto-renewal enabled for %{name}":"已啟用 %{name} 自動續簽","Back":"返回","Back Home":"回到首頁","Base information":"基本訊息","Basic Mode":"基本模式","Batch Modify":"批量修改","Build with":"構建基於","Cancel":"取消","Certificate has expired":"此憑證已過期","Certificate is valid":"此憑證有效","Certificate Status":"憑證狀態","Comments":"註釋","Configuration Name":"配置名稱","Configurations":"配置","Configure SSL":"配置 SSL","Content":"內容","CPU Status":"中央處理器狀態","CPU:":"中央處理器:","Create Another":"再創建一個","Created at":"建立時間","Creating client facilitates communication with the CA server":"創建客戶端方便與CA服務器通信","Dark":"深色","Dashboard":"儀表盤","Database (Optional, default: database)":"資料庫 (可選,預設: database)","Delete":"刪除","Delete ID: %{id}":"刪除 ID: %{id}","Delete site: %{site_name}":"刪除站點:%{site_name}","Development Mode":"開發模式","Directive":"指令","Directives":"指令","Disable auto-renewal failed for %{name}":"關閉 %{name} 自動續簽失敗","Disabled":"禁用","Disabled successfully":"禁用成功","Disk IO":"磁碟 IO","Domain Config Created Successfully":"域名配置文件創建成功","Edit %{n}":"編輯 %{n}","Edit Configuration":"編輯配置","Edit Site":"編輯站點","Email (*)":"郵箱 (*)","Enable auto-renewal failed for %{name}":"啟用 %{name} 自動續簽失敗","Enable failed":"啟用失敗","Enable TLS":"啟用 TLS","Enabled":"啟用","Enabled successfully":"啟用成功","Encrypt website with Let's Encrypt":"用 Let's Encrypt 對網站進行加密","Error Logs":"錯誤日志","Expiration Date: %{date}":"過期時間: %{date}","Export":"導出","Failed to disable %{msg}":"禁用失敗 %{msg}","Failed to enable %{msg}":"啟用失敗 %{msg}","Failed to get certificate information":"獲取證書信息失敗","File Not Found":"未找到檔案","Filter":"篩選","Finished":"完成","Generate":"生成","Generating private key for registering account":"生成註冊賬號私鑰","Getting the certificate, please wait...":"正在獲取憑證,請稍等...","Home":"首頁","Install":"安裝","Install successfully":"安裝成功","Intermediate Certification Authorities: %{issuer}":"中級憑證頒發機構: %{issuer}","Issued certificate successfully":"頒發證書成功","Leave blank for no change":"留空表示不修改","Light":"淺色","Load Averages:":"系統負載:","Location":"Location","Locations":"Locations","Login":"登入","Login successful":"登入成功","Logout successful":"登出成功","Make sure you have configured a reverse proxy for .well-known directory to HTTPChallengePort (default: 9180) before getting the certificate.":"在獲取證書前,請確保配置檔案中已將 .well-known 目錄反向代理到 HTTPChallengePort (預設: 9180)","Manage Configs":"配置管理","Manage Sites":"網站管理","Manage Users":"使用者管理","Memory":"記憶體","Memory and Storage":"記憶體和存儲","Modify":"修改","Modify Config":"修改配置","Name":"名稱","Network":"網路","Network Statistics":"網路統計","Network Total Receive":"下載流量","Network Total Send":"上傳流量","Next":"下一步","Nginx Log":"Nginx 日誌","No":"取消","Not Found":"找不到頁面","Not Valid Before: %{date}":"此前無效: %{date}","Obtaining certificate":"正在獲取證書,請稍等...","OK":"確定","OS:":"作業系統:","Params":"參數","Password":"密碼","Password (*)":"密碼 (*)","Path":"路徑","Please input your E-mail!":"請輸入您的郵箱!","Please input your password!":"請輸入您的密碼!","Please input your username!":"請輸入您的使用者名稱!","Preference":"設定","Preparing lego configurations":"準備 Lego 配置","Prohibit changing root password in demo":"禁止在demo中修改root密碼","Prohibit deleting the default user":"禁止刪除默認用戶","Project Team":"專案團隊","Reads":"讀","Receive":"下載","Registering user":"註冊用戶","Reloading nginx":"重载 Nginx","Reset":"重設","Save":"儲存","Save Directive":"儲存指令","Save error %{msg}":"儲存錯誤 %{msg}","Save successfully":"保存成功","Save Successfully":"保存成功","Saved successfully":"儲存成功","Selector":"選擇器","Send":"上傳","Server error":"伺服器錯誤","Server Info":"伺服器資訊","server_name not found in directives":"未在指令集合中找到 server_name","server_name parameter is required":"必須為 server_name 指令指明參數","Single Directive":"單行指令","Site Logs":"網站日誌","Sites List":"站點列表","Status":"狀態","Storage":"儲存","Subject Name: %{name}":"主體名稱: %{name}","Swap":"交換空間","Table":"表格","Terminal":"終端","The certificate for the domain will be checked every hour, and will be renewed if it has been more than 1 month since it was last issued.":"系統將會每小時檢測一次該域名證書,若距離上次簽發已超過1個月,則將自動續簽。
如果您之前沒有證書,請先點選「從 Let's Encrypt 獲取證書」。","The filename cannot contain the following characters: %{c}":"檔名不能包含以下字元: %{c}","The username or password is incorrect":"用戶名或密碼不正確","Theme":"外觀樣式","Updated at":"修改時間","Updated successfully":"已成功更新","Uptime:":"執行時間:","Username":"使用者名稱","Username (*)":"使用者名稱 (*)","Using HTTP01 challenge provider":"使用 HTTP01 挑戰提供者","Warning":"警告","Writes":"寫","Writing certificate private key to disk":"將證書私鑰寫入磁盤","Writing certificate to disk":"將證書寫入磁盤","Yes":"是的","License":{"Project":"開源軟體授權條款"}}}
\ No newline at end of file
diff --git a/frontend/src/language/zh_CN/app.mo b/frontend/src/language/zh_CN/app.mo
index 18dccbb7..b158d7bc 100644
Binary files a/frontend/src/language/zh_CN/app.mo and b/frontend/src/language/zh_CN/app.mo differ
diff --git a/frontend/src/language/zh_CN/app.po b/frontend/src/language/zh_CN/app.po
index 1f2b7114..0a1c3c7c 100644
--- a/frontend/src/language/zh_CN/app.po
+++ b/frontend/src/language/zh_CN/app.po
@@ -92,11 +92,11 @@ msgstr "自动更新已启用,请勿修改此证书配置。"
msgid "Auto Refresh"
msgstr "自动刷新"
-#: src/views/domain/cert/IssueCert.vue:72
+#: src/views/domain/cert/IssueCert.vue:71
msgid "Auto-renewal disabled for %{name}"
msgstr "成功关闭 %{name} 自动续签"
-#: src/views/domain/cert/IssueCert.vue:66
+#: src/views/domain/cert/IssueCert.vue:65
msgid "Auto-renewal enabled for %{name}"
msgstr "成功启用 %{name} 自动续签"
@@ -133,7 +133,6 @@ msgstr "构建基于"
#: src/components/StdDataDisplay/StdBatchEdit.vue:7
#: src/components/StdDataDisplay/StdCurd.vue:27
#: src/components/StdDataEntry/components/StdSelector.vue:11
-#: src/components/StdDataEntry/compontents/StdSelector.vue:11
msgid "Cancel"
msgstr "取消"
@@ -145,7 +144,7 @@ msgstr "此证书已过期"
msgid "Certificate is valid"
msgstr "此证书有效"
-#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:31
+#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:35
msgid "Certificate Status"
msgstr "证书状态"
@@ -153,6 +152,12 @@ msgstr "证书状态"
msgid "Certification"
msgstr "证书"
+#: src/views/domain/cert/ChangeCert.vue:2
+#: src/views/domain/cert/ChangeCert.vue:3
+#: src/views/domain/cert/ChangeCert.vue:5
+msgid "Change Certificate"
+msgstr "更改证书"
+
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
#: src/views/domain/ngx_conf/LocationEditor.vue:31
#: src/views/domain/ngx_conf/LocationEditor.vue:47
@@ -264,7 +269,7 @@ msgstr "指令"
msgid "Directives"
msgstr "指令"
-#: src/views/domain/cert/IssueCert.vue:74
+#: src/views/domain/cert/IssueCert.vue:73
msgid "Disable auto-renewal failed for %{name}"
msgstr "关闭 %{name} 自动续签失败"
@@ -307,7 +312,7 @@ msgstr "编辑站点"
msgid "Email (*)"
msgstr "邮箱 (*)"
-#: src/views/domain/cert/IssueCert.vue:68
+#: src/views/domain/cert/IssueCert.vue:67
msgid "Enable auto-renewal failed for %{name}"
msgstr "启用 %{name} 自动续签失败"
@@ -392,7 +397,6 @@ msgid "Format successfully"
msgstr "保存成功"
#: src/components/StdDataEntry/components/StdPassword.vue:42
-#: src/components/StdDataEntry/compontents/StdPassword.vue:42
msgid "Generate"
msgstr "生成"
@@ -400,7 +404,7 @@ msgstr "生成"
msgid "Generating private key for registering account"
msgstr "正在生成私钥用于注册账户"
-#: src/views/domain/cert/IssueCert.vue:97
+#: src/views/domain/cert/IssueCert.vue:96
msgid "Getting the certificate, please wait..."
msgstr "正在获取证书,请稍等..."
@@ -471,7 +475,7 @@ msgstr "登录成功"
msgid "Logout successful"
msgstr "登出成功"
-#: src/views/domain/cert/IssueCert.vue:210
+#: src/views/domain/cert/IssueCert.vue:211
msgid ""
"Make sure you have configured a reverse proxy for .well-known directory to "
"HTTPChallengePort (default: 9180) before getting the certificate."
@@ -569,11 +573,9 @@ msgstr "找不到页面"
msgid "Not Valid Before: %{date}"
msgstr "此前无效: %{date}"
-#: src/views/domain/cert/IssueCert.vue:202
-msgid ""
-"Note: The server_name in the current configuration must be the domain name "
-"you need to get the certificate."
-msgstr "注意:当前配置中的 server_name 必须为需要申请证书的域名。"
+#: src/views/domain/cert/IssueCert.vue:38
+msgid "Note"
+msgstr "注意"
#: src/language/constants.ts:16 src/views/domain/cert/IssueCert.vue:3
msgid "Obtaining certificate"
@@ -583,7 +585,6 @@ msgstr "正在获取证书"
#: src/components/StdDataDisplay/StdCurd.vue:28
#: src/components/StdDataDisplay/StdTable.vue:53
#: src/components/StdDataEntry/components/StdSelector.vue:12
-#: src/components/StdDataEntry/compontents/StdSelector.vue:12
#: src/views/domain/DomainList.vue:25
msgid "OK"
msgstr "确定"
@@ -704,7 +705,6 @@ msgid "Saved successfully"
msgstr "保存成功"
#: src/components/StdDataEntry/components/StdSelector.vue:13
-#: src/components/StdDataEntry/compontents/StdSelector.vue:13
msgid "Selector"
msgstr "选择器"
@@ -727,11 +727,11 @@ msgstr "服务器错误"
msgid "Server Info"
msgstr "服务器信息"
-#: src/views/domain/cert/IssueCert.vue:29
+#: src/views/domain/cert/IssueCert.vue:30
msgid "server_name not found in directives"
msgstr "未在指令集合中找到 server_name"
-#: src/views/domain/cert/IssueCert.vue:196 src/views/domain/DomainAdd.vue:111
+#: src/views/domain/cert/IssueCert.vue:195 src/views/domain/DomainAdd.vue:111
msgid "server_name parameter is required"
msgstr "必须为 server_name 指令指明参数"
@@ -792,7 +792,7 @@ msgstr "终端"
msgid "Terminal Start Command"
msgstr "终端启动命令"
-#: src/views/domain/cert/IssueCert.vue:206
+#: src/views/domain/cert/IssueCert.vue:207
msgid ""
"The certificate for the domain will be checked every hour, and will be "
"renewed if it has been more than 1 month since it was last issued."
@@ -803,6 +803,12 @@ msgstr ""
msgid "The filename cannot contain the following characters: %{c}"
msgstr "文件名不能包含以下字符: %{c}"
+#: src/views/domain/cert/IssueCert.vue:203
+msgid ""
+"The server_name in the current configuration must be the domain name you "
+"need to get the certificate."
+msgstr "当前配置中的 server_name 必须为需要申请证书的域名。"
+
#: src/language/constants.ts:6
msgid "The username or password is incorrect"
msgstr "用户名或密码错误"
diff --git a/frontend/src/language/zh_TW/app.po b/frontend/src/language/zh_TW/app.po
index 3da9aa52..1b3d1119 100644
--- a/frontend/src/language/zh_TW/app.po
+++ b/frontend/src/language/zh_TW/app.po
@@ -94,11 +94,11 @@ msgstr ""
msgid "Auto Refresh"
msgstr "自動刷新"
-#: src/views/domain/cert/IssueCert.vue:72
+#: src/views/domain/cert/IssueCert.vue:71
msgid "Auto-renewal disabled for %{name}"
msgstr "已關閉 %{name} 自動續簽"
-#: src/views/domain/cert/IssueCert.vue:66
+#: src/views/domain/cert/IssueCert.vue:65
msgid "Auto-renewal enabled for %{name}"
msgstr "已啟用 %{name} 自動續簽"
@@ -135,7 +135,6 @@ msgstr "構建基於"
#: src/components/StdDataDisplay/StdBatchEdit.vue:7
#: src/components/StdDataDisplay/StdCurd.vue:27
#: src/components/StdDataEntry/components/StdSelector.vue:11
-#: src/components/StdDataEntry/compontents/StdSelector.vue:11
msgid "Cancel"
msgstr "取消"
@@ -147,7 +146,7 @@ msgstr "此憑證已過期"
msgid "Certificate is valid"
msgstr "此憑證有效"
-#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:31
+#: src/views/cert/Cert.vue:12 src/views/domain/cert/Cert.vue:35
msgid "Certificate Status"
msgstr "憑證狀態"
@@ -156,6 +155,13 @@ msgstr "憑證狀態"
msgid "Certification"
msgstr "此憑證有效"
+#: src/views/domain/cert/ChangeCert.vue:2
+#: src/views/domain/cert/ChangeCert.vue:3
+#: src/views/domain/cert/ChangeCert.vue:5
+#, fuzzy
+msgid "Change Certificate"
+msgstr "正在獲取證書,請稍等..."
+
#: src/views/domain/ngx_conf/directive/DirectiveEditorItem.vue:34
#: src/views/domain/ngx_conf/LocationEditor.vue:31
#: src/views/domain/ngx_conf/LocationEditor.vue:47
@@ -268,7 +274,7 @@ msgstr "指令"
msgid "Directives"
msgstr "指令"
-#: src/views/domain/cert/IssueCert.vue:74
+#: src/views/domain/cert/IssueCert.vue:73
msgid "Disable auto-renewal failed for %{name}"
msgstr "關閉 %{name} 自動續簽失敗"
@@ -311,7 +317,7 @@ msgstr "編輯站點"
msgid "Email (*)"
msgstr "郵箱 (*)"
-#: src/views/domain/cert/IssueCert.vue:68
+#: src/views/domain/cert/IssueCert.vue:67
msgid "Enable auto-renewal failed for %{name}"
msgstr "啟用 %{name} 自動續簽失敗"
@@ -398,7 +404,6 @@ msgid "Format successfully"
msgstr "保存成功"
#: src/components/StdDataEntry/components/StdPassword.vue:42
-#: src/components/StdDataEntry/compontents/StdPassword.vue:42
msgid "Generate"
msgstr "生成"
@@ -406,7 +411,7 @@ msgstr "生成"
msgid "Generating private key for registering account"
msgstr "生成註冊賬號私鑰"
-#: src/views/domain/cert/IssueCert.vue:97
+#: src/views/domain/cert/IssueCert.vue:96
msgid "Getting the certificate, please wait..."
msgstr "正在獲取憑證,請稍等..."
@@ -479,7 +484,7 @@ msgstr "登入成功"
msgid "Logout successful"
msgstr "登出成功"
-#: src/views/domain/cert/IssueCert.vue:210
+#: src/views/domain/cert/IssueCert.vue:211
msgid ""
"Make sure you have configured a reverse proxy for .well-known directory to "
"HTTPChallengePort (default: 9180) before getting the certificate."
@@ -580,11 +585,9 @@ msgstr "找不到頁面"
msgid "Not Valid Before: %{date}"
msgstr "此前無效: %{date}"
-#: src/views/domain/cert/IssueCert.vue:202
-msgid ""
-"Note: The server_name in the current configuration must be the domain name "
-"you need to get the certificate."
-msgstr "注意:當前配置中的 server_name 必須為需要申請證書的域名。"
+#: src/views/domain/cert/IssueCert.vue:38
+msgid "Note"
+msgstr ""
#: src/language/constants.ts:16 src/views/domain/cert/IssueCert.vue:3
msgid "Obtaining certificate"
@@ -594,7 +597,6 @@ msgstr "正在獲取證書,請稍等..."
#: src/components/StdDataDisplay/StdCurd.vue:28
#: src/components/StdDataDisplay/StdTable.vue:53
#: src/components/StdDataEntry/components/StdSelector.vue:12
-#: src/components/StdDataEntry/compontents/StdSelector.vue:12
#: src/views/domain/DomainList.vue:25
msgid "OK"
msgstr "確定"
@@ -716,7 +718,6 @@ msgid "Saved successfully"
msgstr "儲存成功"
#: src/components/StdDataEntry/components/StdSelector.vue:13
-#: src/components/StdDataEntry/compontents/StdSelector.vue:13
msgid "Selector"
msgstr "選擇器"
@@ -739,11 +740,11 @@ msgstr "伺服器錯誤"
msgid "Server Info"
msgstr "伺服器資訊"
-#: src/views/domain/cert/IssueCert.vue:29
+#: src/views/domain/cert/IssueCert.vue:30
msgid "server_name not found in directives"
msgstr "未在指令集合中找到 server_name"
-#: src/views/domain/cert/IssueCert.vue:196 src/views/domain/DomainAdd.vue:111
+#: src/views/domain/cert/IssueCert.vue:195 src/views/domain/DomainAdd.vue:111
msgid "server_name parameter is required"
msgstr "必須為 server_name 指令指明參數"
@@ -808,7 +809,7 @@ msgstr "終端"
msgid "Terminal Start Command"
msgstr ""
-#: src/views/domain/cert/IssueCert.vue:206
+#: src/views/domain/cert/IssueCert.vue:207
msgid ""
"The certificate for the domain will be checked every hour, and will be "
"renewed if it has been more than 1 month since it was last issued."
@@ -820,6 +821,13 @@ msgstr ""
msgid "The filename cannot contain the following characters: %{c}"
msgstr "檔名不能包含以下字元: %{c}"
+#: src/views/domain/cert/IssueCert.vue:203
+#, fuzzy
+msgid ""
+"The server_name in the current configuration must be the domain name you "
+"need to get the certificate."
+msgstr "注意:當前配置中的 server_name 必須為需要申請證書的域名。"
+
#: src/language/constants.ts:6
msgid "The username or password is incorrect"
msgstr "用戶名或密碼不正確"
diff --git a/frontend/src/views/domain/cert/Cert.vue b/frontend/src/views/domain/cert/Cert.vue
index 88b959c8..d32c51cd 100644
--- a/frontend/src/views/domain/cert/Cert.vue
+++ b/frontend/src/views/domain/cert/Cert.vue
@@ -2,6 +2,10 @@
import CertInfo from '@/views/domain/cert/CertInfo.vue'
import IssueCert from '@/views/domain/cert/IssueCert.vue'
import {computed, ref} from 'vue'
+import {useGettext} from 'vue3-gettext'
+import ChangeCert from '@/views/domain/cert/ChangeCert.vue'
+
+const {$gettext} = useGettext()
const props = defineProps(['directivesMap', 'current_server_directives', 'enabled', 'cert_info'])
@@ -31,6 +35,8 @@ const enabled = computed({
- Note: The server_name in the current configuration must be the domain name - you need to get the certificate. -
-- The certificate for the domain will be checked every hour, - and will be renewed if it has been more than 1 month since it was last issued. -
-- Make sure you have configured a reverse proxy for .well-known - directory to HTTPChallengePort (default: 9180) before getting the certificate. -
++ The server_name in the current configuration must be the domain name + you need to get the certificate. +
++ The certificate for the domain will be checked every hour, + and will be renewed if it has been more than 1 month since it was last issued. +
++ Make sure you have configured a reverse proxy for .well-known + directory to HTTPChallengePort (default: 9180) before getting the certificate. +
+ +