Clark Chen 10 лет назад
Родитель
Сommit
94e439b5d7
1 измененных файлов с 95 добавлено и 616 удалено
  1. 95 616
      web/inc/i18n.php

+ 95 - 616
web/inc/i18n.php

@@ -1,619 +1,98 @@
 <?php
+// Functions for internationalization
 /**
- * Vesta language file
- * This language file is translate by
- * Clark’s Computer Knowledge Journal (http://www.clark-chen.com)
- * Clark Chen (clark@clark-chen.com)
- * Github - https://github.com/ttcttctw/Vesta-Control-Panel-Traditional-Chinese-Translation/blob/master/tw.php
- * VestaCP Forum - https://forum.vestacp.com/viewtopic.php?f=16&t=8480
+ * Translates string to given language in first parameter, key given in second parameter (dynamically loads required language). Works like spritf from second parameter
+ * @global array $LANG Associative array of language pharses
+ * @return string Translated string
  */
-$LANG['tw'] = array(
-    'Packages'  => '方案設定',
-    'IP'  => 'IP管理',
-    'Graphs'  => '資源使用圖表',
-    'Statistics'  => '統計資料',
-    'Log'  => '系統紀錄',
-    'Services'  => '服務',
-    'Firewall' => '防火牆',
-    'Server' => '伺服器',
-    'Updates'  => '系統更新',
-    'Log in'  => '登入',
-    'Log out'  => '登出',
-    'USER'  => '使用者管理',
-    'WEB'  => '網站管理',
-    'DNS'  => 'DNS管理',
-    'MAIL'  => '信箱管理',
-    'DB'  => '資料庫',
-    'CRON'  => '任務排程',
-    'BACKUP'  => '備份',
-    'Add User'  => '新增使用者',
-    'Add Domain'  => '新增網域',
-    'Add Web Domain'  => '新增網站網域',
-    'Add DNS Domain'  => '新增DNS網域',
-    'Add DNS Record'  => '新增DNS紀錄',
-    'Add Mail Domain'  => '新增信箱網域',
-    'Add Mail Account'  => '新增信箱帳號',
-    'Add Database'  => '新增資料庫',
-    'Add Cron Job'  => '新增任務排程',
-    'Create Backup'  => '建立備份',
-    'Configure'  => '配置',
-    'Restore All'  => '全部回復',
-    'Add Package'  => '新增方案',
-    'Add IP'  => '新增IP',
-    'Add Rule' => '新增規則',
-    'Ban IP Address' => '封鎖IP',
-    'Search'  => '搜尋',
-    'Add one more FTP Account' => '增加一個FTP帳號',
-    'Overall Statistics'  => '整理統計資料',
-    'Daily'  => '每天',
-    'Weekly'  => '每週',
-    'Monthly'  => '每月',
-    'Yearly'  => '每年',
-    'Add'  => '新增',
-    'Back'  => '返回',
-    'Save'  => '儲存',
-    'Submit'  => '送出',
-    'toggle all'  => '批次執行',
-    'apply to selected'  => '套用到所有已選擇的',
-    'rebuild'  => '重建',
-    'rebuild web'  => '重建網站',
-    'rebuild dns'  => '重建DNS',
-    'rebuild mail'  => '重建信箱',
-    'rebuild db'  => '重建資料庫',
-    'rebuild cron'  => '重建任務排程',
-    'update counters'  => '更新計數器',
-    'suspend'  => '封鎖',
-    'unsuspend'  => '解除封鎖',
-    'delete'  => '刪除',
-    'show per user'  => '依照選擇的使用者',
-    'login as'  => '登入帳號',
-    'logout'  => '登出',
-    'edit'  => '編輯',
-    'open webstats'  => '開啟網站統計資料',
-    'view logs'  => '查看系統紀錄',
-    'list records'  => '列出 %s 紀錄',
-    'add record'  => '新增紀錄',
-    'list accounts'  => '列出 %s 帳號',
-    'add account'  => '新增帳號',
-    'open webmail'  => '開啟網路信箱',
-    'list fail2ban' => '列出登入失敗遭封鎖名單',
-    'open %s'  => '開啟 %s',
-    'download'  => '下載',
-    'restore'  => '回復',
-    'configure restore settings'  => '配置回復設定',
-    'stop'  => '停止',
-    'start'  => '啟動',
-    'restart'  => '重新啟動',
-    'update'  => '更新',
-    'generate'  => '產生',
-    'Generate CSR' => '產生憑證簽署請求 (CSR)',
-    'reread IP' => '重新取得IP',
-    'enable autoupdate' => '啟用自動更新',
-    'disable autoupdate' => '停用自動更新',
-    'turn on notifications' => '啟用通知',
-    'turn off notifications' => '停用通知',
-    'Adding User'  => '新增使用者',
-    'Editing User'  => '編輯使用者',
-    'Adding Domain'  => '新增網域',
-    'Editing Domain'  => '編輯網域',
-    'Adding DNS Domain'  => '新增DNS網域',
-    'Editing DNS Domain'  => '編輯DNS網域',
-    'Adding DNS Record'  => '新增DNS紀錄',
-    'Editing DNS Record'  => '編輯DNS紀錄',
-    'Adding Mail Domain'  => '新增信箱網域',
-    'Editing Mail Domain'  => '編輯信箱網域',
-    'Adding Mail Account'  => '新增信箱帳號',
-    'Editing Mail Account'  => '編輯信箱帳號',
-    'Adding database'  => '新增資料庫',
-    'Editing Cron Job'  => '編輯任務排程',
-    'Adding Cron Job'  => '新增任務排程',
-    'Editing Database'  => '編輯資料庫',
-    'Adding Package'  => '新增方案',
-    'Editing Package'  => '編輯方案',
-    'Adding IP address'  => '新增IP',
-    'Editing IP Address'  => '編輯IP',
-    'Editing Backup Exclusions' => '編輯備份排除項目',
-    'Generating CSR' => '產生憑證簽署請求(CSR)中...',
-    'Listing'  => '列出',
-    'Search Results'  => '搜尋結果',
-    'Adding Firewall Rule' => '新增防火牆規則',
-    'Editing Firewall Rule' => '編輯防火牆規則',
-    'Adding IP Address to Banlist' => '新增IP至黑名單',
-    'active'  => '正常',
-    'spnd'  => '封鎖',
-    'suspended'  => '已封鎖',
-    'running'  => '執行中',
-    'stopped'  => '已停止',
-    'outdated'  => '有新版本可升級',
-    'updated'  => '已是最新版本',
-    'yes'  => '是',
-    'no'  => '否',
-    'none'  => '無',
-    'pb'  => 'PB',
-    'tb'  => 'TB',
-    'gb'  => 'GB',
-    'mb'  => 'MB',
-    'minute'  => '分鐘',
-    'hour'  => '小時',
-    'day'  => '天',
-    'days'  => '天',
-    'hours'  => '小時',
-    'minutes'  => '分鐘',
-    'month'  => '月',
-    'package'  => '方案',
-    'Bandwidth'  => '流量',
-    'Disk'  => '磁碟空間',
-    'Web'  => '網站',
-    'Mail'  => '信箱',
-    'Databases'  => '資料庫',
-    'User Directories'  => '使用者目錄',
-    'Template'  => '模板',
-    'Web Template'  => 'Apache模板',
-    'Proxy Template'  => 'Nginx模板',
-    'DNS Template'  => 'DNS模板',
-    'Web Domains'  => '網站網域',
-    'SSL Domains'  => 'SSL網域',
-    'Web Aliases'  => '網站次網域',
-    'per domain'  => '(每網域)',
-    'DNS domains'  => 'DNS網域',
-    'DNS records'   => 'DNS紀錄',
-    'Name Servers'  => '域名服務器',
-    'Mail Domains'  => '信箱網域',
-    'Mail Accounts'  => '信箱使用者',
-    'Cron Jobs'  => '任務排程',
-    'SSH Access'  => 'SSH權限',
-    'IP Addresses'  => 'IP位置',
-    'Backups'  => '備份',
-    'Backup System'  => '備份系統',
-    'backup exclusions' => '備份例外',
-    'template'  => '模板',
-    'SSL Support'  => 'SSL支援',
-    'SSL Home Directory'  => 'SSL主目錄',
-    'Proxy Support'  => 'Nginx支援',
-    'Proxy Extensions'  => 'Nginx擴充',
-    'Web Statistics'  => '網站統計',
-    'Additional FTP Account'  => '其他FTP帳號',
-    'SOA'  => 'SOA',
-    'TTL'  => 'TTL',
-    'Expire'  => '過期',
-    'Records'  => '紀錄',
-    'Catchall email'  => '收到所有郵件',
-    'AntiVirus Support'  => '防毒支援',
-    'AntiSpam Support'  => '防垃圾郵件支援',
-    'DKIM Support'  => 'DKIM支援',
-    'Accounts'  => '帳號',
-    'Quota'  => '配額',
-    'Autoreply'  => '自動回覆',
-    'Forward to'  => '轉寄到',
-    'Do not store forwarded mail' => '不保留已轉發的郵件',
-    'database'  => '資料庫',
-    'User'  => '使用者',
-    'Host'  => '主機',
-    'Charset'  => '編碼',
-    'Min'  => '分',
-    'Hour'  => '時',
-    'Day'  => '日',
-    'Month'  => '月',
-    'Day of week'  => '星期幾',
-    'local'  => '本地',
-    'Run Time'  => '運作時間',
-    'Backup Size'  => '備份大小',
-    'SYS'  => 'SYS',
-    'Domains'  => '網域',
-    'Status'  => '狀態',
-    'shared'  => '共享',
-    'dedicated'  => '獨立',
-    'Owner' => '擁有者',
-    'Users'  => '使用者',
-    'Load Average'  => '平均負載量',
-    'Memory Usage'  => '記憶體使用量',
-    'Bandwidth Usage p2p1' => '流量使用量 (p2p1)',
-    'Bandwidth Usage ppp0' => '流量使用量 (ppp0)',
-    'Bandwidth Usage ppp1' => '流量使用量 (ppp1)',
-    'Bandwidth Usage eth0' => '流量使用量 (eth0)',
-    'Bandwidth Usage eth1' => '流量使用量 (eth1)',
-    'Bandwidth Usage sit0' => '流量使用量 (sit0)',
-    'Bandwidth Usage sit1' => '流量使用量 (sit1)',
-    'Bandwidth Usage he-ipv6' => '流量使用量 (he-ipv6)',
-    'HTTPD Usage'  => 'Apache使用量',
-    'APACHE2 Usage' => 'Apache2使用量',
-    'NGINX Usage'  => 'NGINX使用量',
-    'Exim Usage' => 'Exim使用量',
-    'MySQL Usage on localhost'  => 'MySQL使用量 (localhost)',
-    'PostgreSQL Usage on localhost'  => 'PostgreSQL使用量 (localhost)',
-    'FTP Usage'  => 'FTP使用量',
-    'SSH Usage'  => 'SSH使用量',
-    'ACCEPT' => '允許',
-    'DROP' => '封鎖',
-    'reverse proxy'  => '代理伺服器',
-    'web server'  => '網站主機',
-    'dns server'  => 'DNS主機',
-    'mail server'  => '信箱主機',
-    'pop/imap server'  => 'POP/IMAP主機',
-    'email antivirus'  => '信箱防毒',
-    'email antispam'  => '信箱防垃圾信',
-    'database server'  => '資料庫主機',
-    'ftp server'  => 'FTP主機',
-    'job scheduler'  => '任務排程指令',
-    'firewall' => '防火牆',
-    'brute-force monitor' => '防止暴力破解',
-    'LoadAverage' => '平均負載量',
-    'CPU'  => '處理器負載',
-    'MEMORY'  => '記憶體',
-    'DISK' => '磁碟',
-    'NETWORK' => '網路',
-    'Memory'  => '記憶體',
-    'Uptime'  => '已啟動時間',
-    'core package'  => '核心系統',
-    'php interpreter'  => 'PHP解析',
-    'internal web server'  => '管理系統伺服器',
-    'Version'  => '版本',
-    'Release'  => '發佈號碼',
-    'Architecture'  => '架構',
-    'Object'  => 'Object',
-    'Owner'  => '擁有者',
-    'Username'  => '使用者名稱',
-    'Password'  => '密碼',
-    'Email'  => '電子信箱',
-    'Package'  => '方案',
-    'Language'  => '語言',
-    'First Name'  => '名字',
-    'Last Name'  => '姓氏',
-    'Send login credentials to email address'  => '傳送登入資訊至使用者的信箱',
-    'Default Template'  => '預設模板',
-    'Default Name Servers'  => '預設域名服務器',
-    'Domain'  => '網域',
-    'DNS Support'  => 'DNS支援',
-    'Mail Support'  => '信箱支援',
-    'Advanced options'  => '進階選項',
-    'Aliases'  => '次網域',
-    'SSL Certificate'  => 'SSL憑證',
-    'SSL Key'  => 'SSL密鑰',
-    'SSL Certificate Authority / Intermediate'  => 'SSL中繼憑證',
-    'SSL CSR' => 'SSL憑證簽署請求 (CSR)',
-    'optional'  => '選用',
-    'internal' => '內部',
-    'Statistics Authorization'  => '統計授權',
-    'Statistics Auth'  => '統計驗證',
-    'Account'  => '帳號',
-    'Prefix will be automaticaly added to username'  => '前綴 %s 將會自動加到使用者名稱',
-    'Path' => '路徑',
-    'Send FTP credentials to email'  => '將FTP登入資料傳送到使用者信箱',
-    'Expiration Date'  => '到期日期',
-    'YYYY-MM-DD'  => 'YYYY-MM-DD',
-    'Name servers'  => '域名服務器',
-    'Record'  => '紀錄',
-    'IP or Value'  => 'IP或值',
-    'Priority'  => '優先順序',
-    'Record Number' => '記錄編號',
-    'in megabytes'  => '以MB為單位',
-    'Message'  => '訊息',
-    'use local-part'  => '使用本地部分',
-    'one or more email addresses'  => '一個或更多郵件地址',
-    'Prefix will be automaticaly added to database name and database user'  => '前綴  %s 將會自動加入資料庫名稱及使用者名稱',
-    'Database'  => '資料庫',
-    'Type'  => '類型',
-    'Minute'  => '分鐘',
-    'Command'  => '指令',
-    'Package Name'  => '方案名稱',
-    'Netmask'  => '子網路遮罩',
-    'Interface'  => '端口',
-    'Shared'  => '共享',
-    'Assigned user'  => '指定使用者',
-    'Assigned domain'  => '指定網址',
-    'NAT IP association' => 'NAT IP連結',
-    'shell'  => 'shell',
-    'web domains'  => '網站網域',
-    'web aliases'  => '網站次網域',
-    'dns records'  => 'DNS記錄',
-    'DNS Domains' => 'DNS網域',
-    'mail domains'  => '信箱網域',
-    'mail accounts'  => '信箱帳號',
-    'accounts'  => '帳號',
-    'databases'  => '資料庫',
-    'cron jobs'  => '任務排程',
-    'backups'  => '備份',
-    'quota'  => '配額',
-    'day of week'  => '星期幾',
-    'cmd'  => '指令',
-    'users'  => '使用者',
-    'domains'  => '網域',
-    'aliases'  => '次網域',
-    'records'  => '記錄',
-    'jobs'  => '任務',
-    'username'  => '使用者名稱',
-    'password'  => '密碼',
-    'type'  => '類型',
-    'charset'  => '編碼',
-    'domain'  => '網域',
-    'ip'  => 'IP',
-    'ip address'  => 'IP位置',
-    'IP address'  => 'IP位置',
-    'netmask'  => '子網路遮罩',
-    'interface'  => '端口',
-    'assigned user'  => '指定使用者',
-    'ns1'  => 'ns1',
-    'ns2'  => 'ns2',
-    'user'  => '使用者',
-    'email'  => '信箱',
-    'first name'  => '名字',
-    'last name'  => '姓氏',
-    'account'  => '帳號',
-    'ssl certificate'  => 'SSL 證書',
-    'ssl key'  => 'SSL密鑰',
-    'stats user password'  => '統計使用者帳號密碼',
-    'stats username'  => '統計使用者名稱',
-    'stats password'  => '統計密碼',
-    'ftp user password'  => 'FTP使用者帳號密碼',
-    'ftp user'  => 'FTP使用者',
-    'Last 70 lines of %s.%s.log' => '最後70行的 %s.%s.記錄',
-    'Download AccessLog' => '下載存取記錄',
-    'Download ErrorLog' => '下載錯誤記錄',
-    'Country' => '國家',
-    '2 letter code' => '國家簡碼(台灣是TW/香港是HK)',
-    'State / Province' => '州 / 省',
-    'City / Locality' => '市 / 地區',
-    'Organization' => '組織名稱',
-    'Action' => '動作',
-    'Protocol' => '協議',
-    'Port' => '端口',
-    'Proxy Server' => '代理伺服器',
-    'Web Server' => '網頁伺服器',
-    'DNS Server' => 'DNS伺服器',
-    'MAIL Server' => '郵件伺服器',
-    'Antivirus' => '防毒系統',
-    'AntiSpam' => '防垃圾郵件',
-    'Webmail URL' => '網路信箱網址',
-    'MySQL Support' => 'MySQL支援',
-    'phpMyAdmin URL' => 'phpMyAdmin網址',
-    'Maximum Number Of Databases' => '資料庫最高可使用數量',
-    'Current Number Of Databases' => '資料庫目前已使用數量',
-    'PostgreSQL Support' => 'PostgreSQL支援',
-    'Local backup' => '本機備份',
-    'Compression level' => '壓縮程度',
-    'Directory' => '路徑',
-    'Remote backup' => '異地備份',
-    '' => '',
-    'Comment' => '備註',
-    'Banlist' => '黑名單',
-    'ranges are acceptable' => '可使用範圍(例如:21-22)',
-    'CIDR format is supported' => '支援CIDR格式',
-    'Add one more Name Server' => '新增域名服務器',
-    '1 account'  => '1 帳號',
-    '%s accounts'  => '%s 帳號',
-    '1 domain'  => '1 網域',
-    '%s domains'  => '%s 網域',
-    '1 record'  => '1 記錄',
-    '%s records'  => '%s 記錄',
-    '1 mail account'  => '1 信箱帳號',
-    '%s mail accounts'  => '%s 信箱帳號',
-    '1 database'  => '1 資料庫',
-    '%s databases'  => '%s 資料庫',
-    '1 cron job'  => '1 任務排程',
-    '%s cron jobs'  => '%s 任務排程',
-    '1 archive'  => '1 壓縮',
-    '%s archives'  => '%s 壓縮',
-    '1 package'  => '1 方案',
-    '%s packages'  => '%s 方案',
-    '1 IP address'  => '1 IP位置',
-    '%s IP addresses'  => '%s IP位置',
-    '1 month'  => '1 月',
-    '%s months'  => '%s 月',
-    '1 log record'  => '1 系統記錄',
-    '%s log records'  => '%s 系統記錄',
-    '1 object'  => '1 object',
-    '%s objects'  => '%s objects',
-    'no exclusions' => '取消排除',
-    '1 rule' => '1 規則',
-    '%s rules' => '%s 規則',
-    'There are no currently banned IP' => '目前沒有任何已封鎖的IP',
-    'USER_CREATED_OK'  => '使用者 <a href="/edit/user/?user=%s"><b>%s</b></a> has been 已加入成功!',
-    'WEB_DOMAIN_CREATED_OK'  => '網域 <a href="/edit/web/?domain=%s"><b>%s</b></a> 已加入成功!',
-    'DNS_DOMAIN_CREATED_OK'  => 'DNS網域 <a href="/list/dns/?domain=%s"><b>%s</b></a> 已加入成功!',
-    'DNS_RECORD_CREATED_OK'  => '記錄 <b>%s.%s</b> 已加入成功!',
-    'MAIL_DOMAIN_CREATED_OK'  => '信箱網域 <a href="/list/mail/?domain=%s"><b>%s</b></a> 已加入成功!',
-    'MAIL_ACCOUNT_CREATED_OK'  => '信箱帳號 <a href="/edit/mail/?account=%s&domain=%s"><b>%s@%s</b></a> 已加入成功!',
-    'DATABASE_CREATED_OK'  => '資料庫 <a href="/edit/db/?database=%s"><b>%s</b></a> 已加入成功!',
-    'CRON_CREATED_OK'  => '任務排程 已加入成功!',
-    'IP_CREATED_OK'  => 'IP位置 <a href="/edit/ip/?ip=%s"><b>%s</b></a> 已加入成功!',
-    'PACKAGE_CREATED_OK'  => '方案 <a href="/edit/package/?package=%s"><b>%s</b></a> 已加入成功!',
-    'SSL_GENERATED_OK' => 'SSL證書 已加入成功!',
-    'RULE_CREATED_OK' => 'Rule 已加入成功!',
-    'Autoupdate has been successfully enabled' => '自動更新已成功啟動',
-    'Autoupdate has been successfully disabled' => '自動更新已成功關閉',
-    'Cronjob email reporting has been successfully enabled' => '任務排程 電子郵件回報已成功啟動',
-    'Cronjob email reporting has been successfully disabled' => '任務排程 電子郵件回報已成功關閉',
-    'Changes has been saved.'  => '已儲存更改',
-    'Confirmation'  => 'Confirmation',
-    'DELETE_USER_CONFIRMATION' => '確定要刪除使用者 %s 嗎?',
-    'SUSPEND_USER_CONFIRMATION' => '確定要封鎖使用者 %s 嗎?',
-    'UNSUSPEND_USER_CONFIRMATION' => '確定要解除封鎖使用者 %s 嗎?',
-    'DELETE_DOMAIN_CONFIRMATION' => '確定要刪除網域 %s 嗎?',
-    'SUSPEND_DOMAIN_CONFIRMATION' => '確定要封鎖網域 %s 嗎?',
-    'UNSUSPEND_DOMAIN_CONFIRMATION' => '確定要解除封鎖網域 %s 嗎?',
-    'DELETE_RECORD_CONFIRMATION' => '確定要刪除記錄 %s 嗎?',
-    'SUSPEND_RECORD_CONFIRMATION' => '確定要封鎖記錄 %s 嗎?',
-    'UNSUSPEND_RECORD_CONFIRMATION' => '確定要解除封鎖紀錄 %s 嗎?',
-    'DELETE_MAIL_ACCOUNT_CONFIRMATION' => '確定要刪除 %s 嗎?',
-    'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => '確定要封鎖 %s 嗎?',
-    'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => '確定要解除封鎖 %s 嗎?',
-    'DELETE_DATABASE_CONFIRMATION' => '確定要刪除資料庫 %s 嗎?',
-    'SUSPEND_DATABASE_CONFIRMATION' => '確定要封鎖資料庫 %s 嗎?',
-    'UNSUSPEND_DATABASE_CONFIRMATION' => '確定要解除封鎖資料庫 %s 嗎?',
-    'DELETE_CRON_CONFIRMATION' => '確定要刪除 任務排程嗎?',
-    'SUSPEND_CRON_CONFIRMATION' => '確定要封鎖 任務排程嗎?',
-    'UNSUSPEND_CRON_CONFIRMATION' => '確定要解除封鎖 任務排程嗎?',
-    'DELETE_BACKUP_CONFIRMATION'  => '確定要刪除 %s 備份嗎?',
-    'DELETE_EXCLUSION_CONFIRMATION' => '確定要刪除 %s 例外嗎?',
-    'DELETE_PACKAGE_CONFIRMATION'  => '確定要方案 %s 嗎?',
-    'DELETE_IP_CONFIRMATION'  => '確定要刪除IP地址 %s 嗎?',
-    'DELETE_RULE_CONFIRMATION' => '確定要刪除規則 #%s 嗎?',
-    'SUSPEND_RULE_CONFIRMATION' => '確定要封鎖規則  #%s 嗎?',
-    'UNSUSPEND_RULE_CONFIRMATION' => '確定要解除封鎖規則 #%s 嗎?',
-    'RESTART_CONFIRMATION' => '確定要重新啟動 %s 嗎?',
-    'Welcome'  => '歡迎',
-    'LOGGED_IN_AS'  => '以使用者身份 %s 登入',
-    'Error'  => '錯誤',
-    'Invalid username or password'  => '無效的使用者名稱或密碼',
-    'Invalid username or code'  => '無效的使用者名稱或驗證碼.',
-    'Passwords not match'  => '密碼錯誤',
-    'Please enter valid email address.'  => '請輸入正確的信箱',
-    'Field "%s" can not be blank.'  => '"%s" 不能為空白',
-    'Password is too short.'  => '密碼太短 (是少要6個數字+字母)',
-    'Error code:'  => '錯誤代碼: %s',
-    'SERVICE_ACTION_FAILED'  => '"%s" "%s" 失敗',
-    'IP address is in use' => 'IP位置為使用中',
-    'BACKUP_SCHEDULED'  => '您的要求已加入隊列中,備份完成後會再以電子郵件通知您',
-    'BACKUP_EXISTS'  => '已經有一個備份正在執行中,請等待備份完成後在操作',
-    'RESTORE_SCHEDULED'  => '您的要求已加入隊列中,回復完成後會再以電子郵件通知您',
-    'RESTORE_EXISTS'  => '已經有一個回復正在執行中,請等待備份完成後在操作',
-    'WEB_EXCLUSIONS' => "輸入網域名稱,每行一個網域。如要排除備份所有網域請使用*。排除特定的資料夾請依照這個格式: Example.com:public_html/cache:public_html/tmp",
-    'DNS_EXCLUSIONS' => "輸入網域名稱,每行一個網域。如要排除備份所有網域請使用*",
-    'MAIL_EXCLUSIONS' => "輸入網域名稱,每行一個網域。如要排除備份所有網域請使用*。要排除特定使用者請依照這個格式: Example.com:info:support:postmaster",
-    'DB_EXCLUSIONS' => "輸入完整資料庫名城,每行一個資料庫。如要排除備份所有資料庫請使用*",
-    'CRON_EXCLUSIONS' => "要排除備份所有任務排程請使用*",
-    'USER_EXCLUSIONS' => "輸入要排除備份的資料夾名稱,每行一個資料夾。如要排除備份所有資料夾請使用*",
-    'Welcome to Vesta Control Panel'  => '歡迎來到 Vesta 管理系統',
-    'MAIL_FROM'  => 'Vesta 管理系統 <noreply@%s>',
-    'GREETINGS_GORDON_FREEMAN' => "您好, %s %s,\n",
-    'GREETINGS' => "您好,\n",
-    'ACCOUNT_READY' => "您的帳號已成功建立,並可以開始使用了!\n\nhttps://%s/login/\n使用者名稱: %s\n密碼: %s\n\n--\nVesta Control Panel\n",
-    'FTP login credentials'  => 'FTP 登入資料',
-    'FTP_ACCOUNT_READY' => "FTP帳號已成功建立,並可以開始使用了!\n\n主機名稱: %s\n使用者名稱: %s_%s\n密碼: %s\n\n--\nVesta Control Panel\n",
-    'Database Credentials'  => "資料庫 登入資料",
-    'DATABASE_READY' => "資料庫已加入成功!\n\n資料庫名稱: %s\n使用者名稱: %s\n密碼: %s\n%s\n\n--\nVesta Control Panel\n",
-    'forgot password'  => '忘記密碼',
-    'Confirm'  => '確認',
-    'New Password'  => '新密碼',
-    'Confirm Password'  => '確認密碼',
-    'Reset'  => '重設',
-    'Reset Code'  => '重設代碼',
-    'RESET_NOTICE'  => '',
-    'RESET_CODE_SENT'  => '密買重設代碼已發送到您的信箱<br>',
-    'MAIL_RESET_SUBJECT'  => '密碼重置在 %s',
-    'PASSWORD_RESET_REQUEST' => "重置密碼請點擊連結:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\n或者您可以到 https://%s/reset/?action=code&user=%s 輸入密碼重設代碼:\n%s\n\n如果您沒有要求重設密碼,請忽略此郵件\n\n—\nVesta Control Panel\n",
-    'Jan' => '1月',
-    'Feb' => '2月',
-    'Mar' => '3月',
-    'Apr' => '4月',
-    'May' => '5月',
-    'Jun' => '6月',
-    'Jul' => '7月',
-    'Aug' => '8月',
-    'Sep' => '9月',
-    'Oct' => '10月',
-    'Nov' => '11月',
-    'Dec' => '12月',
-    'Configuring Server' => '配置主機',
-    'Hostname' => '主機名稱',
-    'Time Zone' => '時區',
-    'Default Language' => '預設語言',
-    'FileSystem Disk Quota' => '檔案系統硬碟配額',
-    'Vesta Control Panel Plugins' => 'Vesta Control Panel 外掛',
-    'preview' => '預覽',
-    'Reseller Role' => '經銷商權限',
-    'Web Config Editor' => '網站配置編輯器',
-    'Template Manager' => '模組管理器',
-    'Backup Migration Manager' => '備份轉移管理器',
-    'FileManager' => '檔案管理器',
-    'show: CPU / MEM / NET / DISK' => '顯示: 處理器 / 記憶體 / 網路 / 硬碟',
-    'sort by' => '排序按照',
-    'Date' => '日期',
-    'Starred' => '加註星號',
-    'Name' => '名稱',
-    'File Manager' => '檔案管理器',
-    'type' => '類型',
-    'size' => '大小',
-    'date' => '日期',
-    'name' => '名稱',
-    'Initializing' => '正在初始化',
-    'UPLOAD' => '上傳',
-    'NEW FILE' => '新增檔案',
-    'NEW DIR' => '新增資料夾',
-    'DELETE' => '刪除',
-    'RENAME' => '重新命名',
-    'COPY' => '複製',
-    'ARCHIVE' => '壓縮',
-    'EXTRACT' => '解壓縮',
-    'DOWNLOAD' => '下載',
-    'Hit' => 'Hit',
-    'to reload the page' => '重新整理頁面',
-    'Directory name cannot be empty' => '資料夾名稱不能為空白',
-    'File name cannot be empty' => '檔案名稱不能為空白',
-    'No file selected' => '還沒選取任何檔案',
-    'No file or folder selected' => '還沒有選取任何檔案或資料夾',
-    'File type not supported' => '尚未支援的檔案類型',
-    'Directory download not available in current version' => '目前的版本尚未支援資料夾下載',
-    'Directory not available' => '資料夾無法使用',
-    'Done' => '完成',
-    'Close' => '關閉',
-    'Copy' => '複製',
-    'Cancel' => '取消',
-    'Rename' => '重新命名',
-    'Delete' => '刪除',
-    'Extract' => '解壓縮',
-    'Create' => '新增',
-    'Compress' => '壓縮',
-    'OK' => '確定',
-    'Are you sure you want to copy' => '確定要複製',
-    'Are you sure you want to delete' => '確定要刪除',
-    'into' => '資訊',
-    'existing files will be replaced' => '原本的檔案會被覆蓋',
-    'Original name' => '原始名稱',
-    'File' => '檔案',
-    'already exists' => '已經存在',
-    'Create file' => '新增檔案',
-    'Create directory' => '新增資料夾',
-    'Add New object' => '新增',
-    'Save Form' => '儲存設定',
-    'Cancel saving form' => '不要儲存設定',
-    'Go to USER list' => '回到使用者列表',
-    'Go to WEB list' => '回到網站列表',
-    'Go to DNS list' => '回到DNS列表',
-    'Go to MAIL list' => '回到郵件列表',
-    'Go to DB list' => '回到資料庫列表',
-    'Go to CRON list' => '回到任務排程列表',
-    'Go to BACKUP list' => '回到備份列表',
-    'Focus on search' => '搜尋',
-    'Display/Close shortcuts' => '顯示/關閉 快捷鍵列表',
-    'Move backward through top menu' => '在頂置選單中向左移動',
-    'Move forward through top menu' => '在頂置選單中向右移動',
-    'Enter focused element' => '進去選擇的選項',
-    'Upload' => '上傳',
-    'New File' => '新增檔案',
-    'New Folder' => '新增資料夾',
-    'Download' => '下載',
-    'Rename' => '重新命名',
-    'Copy' => '複製',
-    'Archive' => '壓縮',
-    'Delete' => '刪除',
-    'Shortcuts' => '快捷鍵',
-    'Save File (in text editor)' => '儲存檔案 (在目前的文字編輯器)',
-    'Close Popup / Cancel' => '關閉快顯視窗 / 取消',
-    'Move Cursor Up' => '選項往上移',
-    'Move Cursor Down' => '選項往下移',
-    'Switch to Left Tab' => '切換到左邊的管理器',
-    'Switch to Right Tab' => '切換到右邊的管理器',
-    'Switch Tab' => '切換到另一邊的管理器',
-    'Go to the Top of the File List' => '回到檔案列表頂端',
-    'Go to the Last File' => '回到上個檔案',
-    'Open File / Enter Directory' => '開啟檔案 或 進入資料夾',
-    'Go to Parent Directory' => '回到上一頁',
-    'Select Current File' => '選取目前的檔案',
-    'Select Bunch of Files' => '選取多個檔案',
-    'Add File to the Current Selection' => '增加檔案到已選取的列表',
-    'Select All Files' => '選取所有檔案',
-    'shortcuts are inspired by magnificent GNU <a href="https://www.midnight-commander.org/">Midnight Commander</a> file manager' => 
-        '快捷鍵是的想法是由 magnificent GNU <a href="https://www.midnight-commander.org/">Midnight Commander</a> 檔案管理器 啟發的',
-    'Save' => '儲存',
-    'Licence Key' => '授權金鑰',
-    'Enter License Key' => '輸入授權金鑰',
-    'Buy Licence' => '購買授權',
-    'Buy Lifetime License' => '購買永久授權',
-    'Disable and Cancel Licence' => '刪除並且取消授權',
-    'Licence Activated' => '授權已啟用',
-    'Licence Deactivated' => '授權已停用',
-    'Restrict users so that they cannot use SSH and access only their home directory.' => '禁止使用者使用SSH,並且只能存取他們自己的資料夾',
-    'Browse, copy, edit, view, and retrieve all of your web domain files using fully featured File Manager.' => '瀏覽、複製、編輯、存取你所有的網站資料使用全能的檔案管理器',
-    'This is a commercial module, you would need to purchace license key to enable it.' => '這是一個付費模組,您需要購買授權金鑰才能啟動它。'
-);
+function _translate() {
+    global $LANG;
+    $args = func_get_args();
+    $l = $args[0];
+    if (!$l) return 'NO LANGUAGE DEFINED';
+    $key = $args[1];
+    if (!isset($LANG[$l])) {
+        require_once($_SERVER['DOCUMENT_ROOT'].'/inc/i18n/'.$l.'.php');
+    }
+    if (!isset($LANG[$l][$key])) {
+        $text=$key;
+    } else {
+        $text=$LANG[$l][$key];
+    }
+    array_shift($args);
+    if (count($args)>1) {
+        $args[0] = $text;
+        return call_user_func_array("sprintf",$args);
+    } else {
+        return $text;
+    }
+}
+/**
+ * Translates string by a given key in first parameter to current session language. Works like sprintf
+ * @global array $LANG Associative array of language pharses
+ * @return string Translated string
+ * @see _translate()
+ */
+function __() {
+    $args = func_get_args();
+    array_unshift($args,$_SESSION['language']);
+    return call_user_func_array("_translate",$args);
+}
+/**
+ * Detects user language from Accept-Language HTTP header.
+ * @param string Fallback language (default: 'en')
+ * @return string Language code (such as 'en' and 'ja')
+ */
+function detect_user_language($fallback='en') {
+    static $user_lang = '';
+    // Already detected
+    if (!empty($user_lang)) return $user_lang;
+    // Check if Accept-Language header is available
+    if (!isset($_SERVER) ||
+        !isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ||
+        !is_string($_SERVER['HTTP_ACCEPT_LANGUAGE'])
+    ) {
+        // Store result for reusing
+        $user_lang = $fallback;
+        return $user_lang;
+    }
+    // Sort Accept-Language by `q` value
+    $accept_langs = explode(',', preg_replace('/\s/', '', strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE'])));
+    $accept_langs_sorted = [];
+    foreach ($accept_langs as $lang) {
+        $div = explode(';q=', $lang, 2);
+        if (count($div) < 2) {
+            // `q` value was not specfied
+            // -> Set default `q` value (1)
+            $div[] = '1';
+        }
+        list($code, $q) = $div;
+        if (preg_match('/^[\w\-]+$/', $code)) {
+            // Acceptable language code
+            $accept_langs_sorted[$code] = (double)$q;
+        }
+    }
+    arsort($accept_langs_sorted);
+    // List languages
+    exec (VESTA_CMD."v-list-sys-languages json", $output, $return_var);
+    $languages = json_decode(implode('', $output), true);
+    unset($output);
+    // Find best matching language
+    foreach ($accept_langs_sorted as $user_lang => $dummy) {
+        $decision = '';
+        foreach ($languages as $prov_lang) {
+            if (strlen($decision) > strlen($prov_lang)) continue;
+            if (strpos($user_lang, $prov_lang) !== false) {
+                $decision = $prov_lang;
+            }
+        }
+        if (!empty($decision)) {
+            // Store result for reusing
+            $user_lang = $decision;
+            return $user_lang;
+        }
+    }
+    // Store result for reusing
+    $user_lang = $fallback;
+    return $user_lang;
+}