|
@@ -8,7 +8,7 @@
|
|
|
"copied" = "Copied"
|
|
|
"download" = "Download"
|
|
|
"remark" = "Remark"
|
|
|
-"enable" = "Enable"
|
|
|
+"enable" = "Enabled"
|
|
|
"protocol" = "Protocol"
|
|
|
"search" = "Search"
|
|
|
"filter" = "Filter"
|
|
@@ -26,7 +26,7 @@
|
|
|
"edit" = "Edit"
|
|
|
"delete" = "Delete"
|
|
|
"reset" = "Reset"
|
|
|
-"copySuccess" = "Copied Successfully"
|
|
|
+"copySuccess" = "Copied Successful"
|
|
|
"sure" = "Sure"
|
|
|
"encryption" = "Encryption"
|
|
|
"transmission" = "Transmission"
|
|
@@ -41,10 +41,10 @@
|
|
|
"offline" = "Offline"
|
|
|
"online" = "Online"
|
|
|
"domainName" = "Domain Name"
|
|
|
-"monitor" = "Listening IP"
|
|
|
+"monitor" = "Listen IP"
|
|
|
"certificate" = "Certificate"
|
|
|
"fail" = "Fail"
|
|
|
-"success" = "Success"
|
|
|
+"success" = "Successful"
|
|
|
"getVersion" = "Get Version"
|
|
|
"install" = "Install"
|
|
|
"clients" = "Clients"
|
|
@@ -73,7 +73,7 @@
|
|
|
"successLogin" = "Login"
|
|
|
|
|
|
[pages.index]
|
|
|
-"title" = "Overview"
|
|
|
+"title" = "Status Overview"
|
|
|
"memory" = "RAM"
|
|
|
"hard" = "Disk"
|
|
|
"xrayStatus" = "Status"
|
|
@@ -81,31 +81,31 @@
|
|
|
"restartXray" = "Restart"
|
|
|
"xraySwitch" = "Version"
|
|
|
"xraySwitchClick" = "Choose the version you want to switch to."
|
|
|
-"xraySwitchClickDesk" = "Choose wisely, as older versions may not be compatible with current configurations."
|
|
|
+"xraySwitchClickDesk" = "Choose carefully, as older versions may not be compatible with current configurations."
|
|
|
"operationHours" = "Uptime"
|
|
|
"systemLoad" = "System Load"
|
|
|
-"systemLoadDesc" = "system load average for the past 1, 5, and 15 minutes"
|
|
|
-"connectionTcpCountDesc" = "Total TCP connections across all network cards"
|
|
|
-"connectionUdpCountDesc" = "Total UDP connections across all network cards"
|
|
|
-"connectionCount" = "Connections"
|
|
|
-"upSpeed" = "Overall upload speed for all network cards"
|
|
|
-"downSpeed" = "Overall download speed for all network cards"
|
|
|
-"totalSent" = "Total upload data across all network cards since OS startup"
|
|
|
-"totalReceive" = "Total download data across all network cards since OS startup"
|
|
|
-"xraySwitchVersionDialog" = "Switch Xray Version"
|
|
|
-"xraySwitchVersionDialogDesc" = "Are you sure you want to switch the Xray version to"
|
|
|
+"systemLoadDesc" = "System load average for the past 1, 5, and 15 minutes"
|
|
|
+"connectionTcpCountDesc" = "Total TCP connections across all networks"
|
|
|
+"connectionUdpCountDesc" = "Total UDP connections across all networks"
|
|
|
+"connectionCount" = "Connection Stats"
|
|
|
+"upSpeed" = "Overall upload speed across all networks"
|
|
|
+"downSpeed" = "Overall download speed across all networks"
|
|
|
+"totalSent" = "Total sent data across all networks since OS startup"
|
|
|
+"totalReceive" = "Total received data across all networks since OS startup"
|
|
|
+"xraySwitchVersionDialog" = "Change Xray Version"
|
|
|
+"xraySwitchVersionDialogDesc" = "Are you sure you want to change the Xray version to"
|
|
|
"dontRefresh" = "Installation is in progress, please do not refresh this page"
|
|
|
"logs" = "Logs"
|
|
|
"config" = "Config"
|
|
|
"backup" = "Backup & Restore"
|
|
|
"backupTitle" = "Backup & Restore Database"
|
|
|
-"backupDescription" = "It is recommended to a make backup before importing a new database."
|
|
|
-"exportDatabase" = "Download Database"
|
|
|
-"importDatabase" = "Upload Database"
|
|
|
+"backupDescription" = "It is recommended to make a backup before importing a new database."
|
|
|
+"exportDatabase" = "Backup Database"
|
|
|
+"importDatabase" = "Restore Database"
|
|
|
|
|
|
[pages.inbounds]
|
|
|
"title" = "Inbounds"
|
|
|
-"totalDownUp" = "Total Uploads/Downloads"
|
|
|
+"totalDownUp" = "Total Sent/Received"
|
|
|
"totalUsage" = "Total Flow Usage"
|
|
|
"inboundCount" = "Number of Inbounds"
|
|
|
"operate" = "Menu"
|
|
@@ -133,10 +133,10 @@
|
|
|
"network" = "Network"
|
|
|
"destinationPort" = "Destination Port"
|
|
|
"targetAddress" = "Target Address"
|
|
|
-"monitorDesc" = "Leave blank by default"
|
|
|
+"monitorDesc" = "Leave blank to listen on all IPs"
|
|
|
"meansNoLimit" = "Means no limit"
|
|
|
"totalFlow" = "Total Flow"
|
|
|
-"leaveBlankToNeverExpire" = "Leave Blank to Never Expire"
|
|
|
+"leaveBlankToNeverExpire" = "Leave blank to never expire"
|
|
|
"noRecommendKeepDefault" = "It is recommended to keep the default"
|
|
|
"certificatePath" = "File Path"
|
|
|
"certificateContent" = "File Content"
|
|
@@ -149,7 +149,7 @@
|
|
|
"export" = "Export All URLs"
|
|
|
"clone" = "Clone"
|
|
|
"cloneInbound" = "Clone"
|
|
|
-"cloneInboundContent" = "All settings of this inbound, except for Port, Listening IP, and Clients, will be applied to the clone."
|
|
|
+"cloneInboundContent" = "All settings of this inbound, except Port, Listening IP, and Clients, will be applied to the clone."
|
|
|
"cloneInboundOk" = "Clone"
|
|
|
"resetAllTraffic" = "Reset All Inbounds Traffic"
|
|
|
"resetAllTrafficTitle" = "Reset All Inbounds Traffic"
|
|
@@ -166,14 +166,14 @@
|
|
|
"email" = "Email"
|
|
|
"emailDesc" = "Please provide a unique email address."
|
|
|
"IPLimit" = "IP Limit"
|
|
|
-"IPLimitDesc" = "Disable inbound if the count exceeds the entered value (enter 0 to disable IP limit)."
|
|
|
+"IPLimitDesc" = "Disables inbound if the count exceeds the set value. (0 = disables IP limit)"
|
|
|
"IPLimitlog" = "IP Log"
|
|
|
-"IPLimitlogDesc" = "IPs history log (before enabling inbound after it has been disabled by IP limit, you should clear the log)."
|
|
|
+"IPLimitlogDesc" = "The IPs history log. (To enable inbound access after it has been disabled by IP limit, you should clear the log)"
|
|
|
"IPLimitlogclear" = "Clear The Log"
|
|
|
"setDefaultCert" = "Set Cert from Panel"
|
|
|
-"xtlsDesc" = "Xray-core needs to be 1.7.5"
|
|
|
-"realityDesc" = "Xray-core needs to be 1.8.0+."
|
|
|
-"telegramDesc" = "Please provide Telegram or Chat ID(s) without using the '@'. (get it here @userinfobot) or (use '/id' command in the bot)"
|
|
|
+"xtlsDesc" = "Xray needs to be v1.7.5"
|
|
|
+"realityDesc" = "Xray needs to be v1.8.0+"
|
|
|
+"telegramDesc" = "Please provide Telegram or Chat ID(s) without using the '@'. (get it here @userinfobot) or (use '/id' command in the bot)."
|
|
|
"subscriptionDesc" = "To find your subscription URL, navigate to the 'Details'. Additionally, you can use the same name for several configurations."
|
|
|
"info" = "Info"
|
|
|
"same" = "Same"
|
|
@@ -195,10 +195,10 @@
|
|
|
"prefix" = "Prefix"
|
|
|
"postfix" = "Postfix"
|
|
|
"delayedStart" = "Start after First Use"
|
|
|
-"expireDays" = "Expire Days"
|
|
|
+"expireDays" = "Duration"
|
|
|
"days" = "Day(s)"
|
|
|
"renew" = "Auto Renew"
|
|
|
-"renewDesc" = "Auto-renewal after expiration. 0 = disable"
|
|
|
+"renewDesc" = "Auto-renewal after expiration. (0 = disable)(unit: day)"
|
|
|
|
|
|
[pages.inbounds.toasts]
|
|
|
"obtain" = "Obtain"
|
|
@@ -228,23 +228,23 @@
|
|
|
"restartPanelDesc" = "Are you sure you want to restart the panel? If you cannot access the panel after restarting, please view the panel log info on the server."
|
|
|
"actions" = "Actions"
|
|
|
"resetDefaultConfig" = "Reset to Default"
|
|
|
-"panelSettings" = "Panel Settings"
|
|
|
-"securitySettings" = "Security Settings"
|
|
|
-"TGBotSettings" = "Telegram Bot Settings"
|
|
|
+"panelSettings" = "Configuration"
|
|
|
+"securitySettings" = "Authentication"
|
|
|
+"TGBotSettings" = "Telegram Bot"
|
|
|
"panelListeningIP" = "Panel Listening IP"
|
|
|
-"panelListeningIPDesc" = "Leave blank by default to monitor all IPs."
|
|
|
+"panelListeningIPDesc" = "Leave blank to listen om all IPs."
|
|
|
"panelListeningDomain" = "Panel Listening Domain"
|
|
|
-"panelListeningDomainDesc" = "Leave blank by default to monitor all domains and IPs."
|
|
|
-"panelPort" = "Panel Port"
|
|
|
-"panelPortDesc" = "Port number for serving the panel."
|
|
|
+"panelListeningDomainDesc" = "Leave blank to listen on all domains and IPs."
|
|
|
+"panelPort" = "Panel Listening Port"
|
|
|
+"panelPortDesc" = "Must be an unused port"
|
|
|
"publicKeyPath" = "Panel Public Key Path"
|
|
|
-"publicKeyPathDesc" = "Fill in an absolute path starting with."
|
|
|
+"publicKeyPathDesc" = "Fill in an absolute path begins with ‘/‘"
|
|
|
"privateKeyPath" = "Panel Private Key Path"
|
|
|
-"privateKeyPathDesc" = "Fill in an absolute path starting with."
|
|
|
+"privateKeyPathDesc" = "Fill in an absolute path begins with ‘/‘"
|
|
|
"panelUrlPath" = "Panel URI Path"
|
|
|
-"panelUrlPathDesc" = "Must start with '/' and end with."
|
|
|
+"panelUrlPathDesc" = "Fill in an absolute path begins with ‘/‘ and concludes with ‘/‘"
|
|
|
"pageSize" = "Pagination Size"
|
|
|
-"pageSizeDesc" = "Define page size for inbounds table. Set 0 to disable"
|
|
|
+"pageSizeDesc" = "Define page size for inbounds table. (0 = disable)"
|
|
|
"remarkModel" = "Remark Model & Separation Character"
|
|
|
"datepicker" = "Date Picker"
|
|
|
"datepickerDescription" = "Selector calendar type specifies the expiration date"
|
|
@@ -257,11 +257,11 @@
|
|
|
"telegramBotEnableDesc" = "Connect to the features of this panel through the Telegram bot."
|
|
|
"telegramToken" = "Telegram Token"
|
|
|
"telegramTokenDesc" = "The token you have got from @BotFather."
|
|
|
-"telegramProxy" = "Socks5 Proxy"
|
|
|
-"telegramProxyDesc" = "If you need the Socks5 proxy to connect to Telegram. Adjust its settings as per the guide."
|
|
|
+"telegramProxy" = "SOCKS5 Proxy"
|
|
|
+"telegramProxyDesc" = "If you need the SOCKS5 proxy to connect to Telegram. Adjust its settings as per the guide."
|
|
|
"telegramChatId" = "Telegram Admin Chat ID"
|
|
|
"telegramChatIdDesc" = "Multiple chat ID(s)separated by comma. use @userinfobot or use '/id' command in bot to get your Chat IDs."
|
|
|
-"telegramNotifyTime" = "Telegram bot notification time"
|
|
|
+"telegramNotifyTime" = "Telegram Bot Notification Time"
|
|
|
"telegramNotifyTimeDesc" = "Use crontab timing format."
|
|
|
"tgNotifyBackup" = "Database Backup"
|
|
|
"tgNotifyBackupDesc" = "Include database backup file with report notification."
|
|
@@ -270,28 +270,28 @@
|
|
|
"sessionMaxAge" = "Session Duration"
|
|
|
"sessionMaxAgeDesc" = "The duration of a login session. (unit: minute)"
|
|
|
"expireTimeDiff" = "Client Expiration Threshold Notification"
|
|
|
-"expireTimeDiffDesc" = "Get notified about client expiration before the threshold. (unit: day)"
|
|
|
-"trafficDiff" = "Traffic Limit Threshold Notification"
|
|
|
-"trafficDiffDesc" = "Get notified about traffic exhaustion before reaching the threshold. (unit: GB)"
|
|
|
+"expireTimeDiffDesc" = "Get notified about client expiration when reaching this threshold. (unit: day)"
|
|
|
+"trafficDiff" = "Traffic Exhaustion Threshold Notification"
|
|
|
+"trafficDiffDesc" = "Get notified about traffic exhaustion when reaching this threshold. (unit: GB)"
|
|
|
"tgNotifyCpu" = "CPU Load Threshold Notification"
|
|
|
"tgNotifyCpuDesc" = "Get notified if CPU usage exceeds this threshold. (unit: %)"
|
|
|
"timeZone" = "Time Zone"
|
|
|
"timeZoneDesc" = "Scheduled tasks run according to the time in this time zone."
|
|
|
"subSettings" = "Subscription"
|
|
|
-"subEnable" = "Enable Service"
|
|
|
+"subEnable" = "Enable Subscription Service"
|
|
|
"subEnableDesc" = "Subscription feature with separate configuration."
|
|
|
"subListen" = "Subscription Listening IP"
|
|
|
-"subListenDesc" = "Leave blank by default to monitor all IPs."
|
|
|
-"subPort" = "Subscription Port"
|
|
|
-"subPortDesc" = "Port number for serving the subscription service. Must be unused in server."
|
|
|
+"subListenDesc" = "Leave blank to listen on all IPs."
|
|
|
+"subPort" = "Subscription Listening Port"
|
|
|
+"subPortDesc" = "Must be an unused port."
|
|
|
"subCertPath" = "Subscription Public Key Path"
|
|
|
-"subCertPathDesc" = "Fill in an absolute path starting with '/'"
|
|
|
+"subCertPathDesc" = "Fill in an absolute path begins with ‘/‘"
|
|
|
"subKeyPath" = "Subscription Private Key Path"
|
|
|
-"subKeyPathDesc" = "Fill in an absolute path starting with '/'"
|
|
|
+"subKeyPathDesc" = "Fill in an absolute path begins with ‘/‘"
|
|
|
"subPath" = "Subscription URI Path"
|
|
|
-"subPathDesc" = "Must start with '/' and end with '/'"
|
|
|
+"subPathDesc" = "Fill in an absolute path begins with ‘/‘ and concludes with ‘/‘"
|
|
|
"subDomain" = "Subscription Listening Domain"
|
|
|
-"subDomainDesc" = "Leave blank by default to monitor all domains and IPs."
|
|
|
+"subDomainDesc" = "Leave blank to listen on all domains and IPs."
|
|
|
"subUpdates" = "Subscription Update Intervals"
|
|
|
"subUpdatesDesc" = "Interval hours between updates in client application."
|
|
|
"subEncrypt" = "Encode"
|
|
@@ -299,7 +299,7 @@
|
|
|
"subShowInfo" = "Show Usage Info"
|
|
|
"subShowInfoDesc" = "Show remained traffic and date after config name."
|
|
|
"subURI" = "Reverse Proxy URI"
|
|
|
-"subURIDesc" = "Change base URI of subscription URL for using on behind of proxies."
|
|
|
+"subURIDesc" = "Set the URI path of subscription URL for use behind of proxies."
|
|
|
|
|
|
[pages.xray]
|
|
|
"title" = "Xray Configurations"
|
|
@@ -307,31 +307,31 @@
|
|
|
"restart" = "Restart Xray"
|
|
|
"basicTemplate" = "Basic Template"
|
|
|
"advancedTemplate" = "Advanced Template"
|
|
|
-"generalConfigs" = "General Configs"
|
|
|
+"generalConfigs" = "General Strategy"
|
|
|
"generalConfigsDesc" = "These options will provide general adjustments."
|
|
|
-"blockConfigs" = "Blocking Configs"
|
|
|
+"blockConfigs" = "Protection Shield"
|
|
|
"blockConfigsDesc" = "These options will prevent users from connecting to specific protocols and websites."
|
|
|
-"blockCountryConfigs" = "Block Country Configs"
|
|
|
+"blockCountryConfigs" = "Block Country"
|
|
|
"blockCountryConfigsDesc" = "These options will prevent users from connecting to specific country domains."
|
|
|
-"directCountryConfigs" = "Direct Country Configs"
|
|
|
+"directCountryConfigs" = "Direct Country"
|
|
|
"directCountryConfigsDesc" = "These options will connect users directly to specific country domains."
|
|
|
-"ipv4Configs" = "IPv4 Configs"
|
|
|
+"ipv4Configs" = "IPv4 Routing"
|
|
|
"ipv4ConfigsDesc" = "These options will route to target domains only via IPv4."
|
|
|
-"warpConfigs" = "WARP Configs"
|
|
|
-"warpConfigsDesc" = "Caution: Before using these options, install WARP in socks5 proxy mode on your server by following the steps on the panel's GitHub. WARP will route traffic to websites through Cloudflare servers."
|
|
|
+"warpConfigs" = "WARP Routing"
|
|
|
+"warpConfigsDesc" = "Caution: Before using these options, install WARP in SOCKS5 proxy mode on your server by following the steps on the panel's GitHub. WARP will route traffic to websites through Cloudflare servers."
|
|
|
"Template" = "Xray Configuration Template"
|
|
|
"TemplateDesc" = "Generate the final Xray configuration file based on this template."
|
|
|
"FreedomStrategy" = "Configure Strategy for Freedom Protocol"
|
|
|
"FreedomStrategyDesc" = "Set the output strategy of the network in the Freedom Protocol."
|
|
|
"RoutingStrategy" = "Configure Domains Routing Strategy"
|
|
|
"RoutingStrategyDesc" = "Set the overall routing strategy for DNS resolving."
|
|
|
-"Torrent" = "Ban BitTorrent Protocol"
|
|
|
+"Torrent" = "Block BitTorrent Protocol"
|
|
|
"TorrentDesc" = "Change the configuration template to avoid using BitTorrent protocol."
|
|
|
-"PrivateIp" = "Ban Private IPs to Connect"
|
|
|
+"PrivateIp" = "Block Private IPs to Connect"
|
|
|
"PrivateIpDesc" = "Change the configuration template to avoid connecting to private IP ranges."
|
|
|
"Ads" = "Block Ads"
|
|
|
"AdsDesc" = "Change the configuration template to block ads."
|
|
|
-"Family" = "Block malware and Adult Content"
|
|
|
+"Family" = "Family Protection"
|
|
|
"FamilyDesc" = "Cloudflare DNS resolvers to block malware and adult content for family protection."
|
|
|
"Security" = "Block Malware, Phishing and Cryptominers Websites"
|
|
|
"SecurityDesc" = "Change the configuration template for Security protection."
|
|
@@ -424,9 +424,9 @@
|
|
|
"admin" = "Admin"
|
|
|
"secret" = "Secret Token"
|
|
|
"loginSecurity" = "Login security"
|
|
|
-"loginSecurityDesc" = "Enable additional user login security step"
|
|
|
+"loginSecurityDesc" = "Adds an additional layer of authentication to enhance the login security."
|
|
|
"secretToken" = "Secret Token"
|
|
|
-"secretTokenDesc" = "Please copy and securely store this token in a safe place. This token is required for login and cannot be recovered from the x-ui command tool."
|
|
|
+"secretTokenDesc" = "Please copy and securely store this token in a safe place. This token is required for login and cannot be recovered from the X-UI command tool."
|
|
|
|
|
|
[pages.settings.toasts]
|
|
|
"modifySettings" = "Modify Settings"
|
|
@@ -472,19 +472,19 @@
|
|
|
"cpuThreshold" = "🔴 CPU Load {{ .Percent }}% exceeds the threshold of {{ .Threshold }}%"
|
|
|
"selectUserFailed" = "❌ Error in user selection!"
|
|
|
"userSaved" = "✅ Telegram User saved."
|
|
|
-"loginSuccess" = "✅ Successfully logged in to the panel.\r\n"
|
|
|
-"loginFailed" = "❗️ Login to the panel failed.\r\n"
|
|
|
+"loginSuccess" = "✅ Logged in to the panel successful.\r\n"
|
|
|
+"loginFailed" = "❗️ Log in to the panel failed.\r\n"
|
|
|
"report" = "🕰 Scheduled Reports: {{ .RunTime }}\r\n"
|
|
|
-"datetime" = "⏰ Date-Time: {{ .DateTime }}\r\n"
|
|
|
+"datetime" = "⏰ Date&Time: {{ .DateTime }}\r\n"
|
|
|
"hostname" = "💻 Hostname: {{ .Hostname }}\r\n"
|
|
|
"version" = "🚀 X-UI Version: {{ .Version }}\r\n"
|
|
|
"ipv6" = "🌐 IPv6: {{ .IPv6 }}\r\n"
|
|
|
"ipv4" = "🌐 IPv4: {{ .IPv4 }}\r\n"
|
|
|
"ip" = "🌐 IP: {{ .IP }}\r\n"
|
|
|
"ips" = "🔢 IPs:\r\n{{ .IPs }}\r\n"
|
|
|
-"serverUpTime" = "⏳ Server Uptime: {{ .UpTime }} {{ .Unit }}\r\n"
|
|
|
+"serverUpTime" = "⏳ Uptime: {{ .UpTime }} {{ .Unit }}\r\n"
|
|
|
"serverLoad" = "📈 Server Load: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
|
|
|
-"serverMemory" = "📋 Server RAM: {{ .Current }}/{{ .Total }}\r\n"
|
|
|
+"serverMemory" = "📋 RAM: {{ .Current }}/{{ .Total }}\r\n"
|
|
|
"tcpCount" = "🔹 TCP: {{ .Count }}\r\n"
|
|
|
"udpCount" = "🔸 UDP: {{ .Count }}\r\n"
|
|
|
"traffic" = "🚦 Traffic: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
|
|
@@ -505,7 +505,7 @@
|
|
|
"TGUser" = "👤 Telegram User: {{ .TelegramID }}\r\n"
|
|
|
"exhaustedMsg" = "🚨 Exhausted {{ .Type }}:\r\n"
|
|
|
"exhaustedCount" = "🚨 Exhausted {{ .Type }} count:\r\n"
|
|
|
-"onlinesCount" = "🌐 Online clients: {{ .Count }}\r\n"
|
|
|
+"onlinesCount" = "🌐 Online Clients: {{ .Count }}\r\n"
|
|
|
"disabled" = "🛑 Disabled: {{ .Disabled }}\r\n"
|
|
|
"depleteSoon" = "🔜 Deplete Soon: {{ .Deplete }}\r\n\r\n"
|
|
|
"backupTime" = "🗄 Backup Time: {{ .Time }}\r\n"
|