admin.php 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800
  1. <?php
  2. return [
  3. 'dashboard' => [
  4. 'users' => 'All Users',
  5. 'available_users' => 'Active Users',
  6. 'paid_users' => 'Paying Users',
  7. 'active_days_users' => 'Active Users Within :days Days',
  8. 'inactive_days_users' => 'Inactive Users Over :days Days',
  9. 'online_users' => 'Current Online Users',
  10. 'expiring_users' => 'Near Due Date',
  11. 'overuse_users' => 'Overuse (used ≥ 90% traffic)',
  12. 'abnormal_users' => 'Abnormal Traffic (last 1 hour)',
  13. 'nodes' => 'Nodes',
  14. 'maintaining_nodes' => 'Nodes Under Maintenance',
  15. 'traffic_consumed' => 'Total Traffic Consumed',
  16. 'traffic_days_consumed' => 'Traffic Consumed Within :days Days',
  17. 'orders' => 'Orders',
  18. 'online_orders' => 'Online Orders',
  19. 'succeed_orders' => 'Successful Orders',
  20. 'credit' => 'Total Balance',
  21. 'withdrawing_commissions' => 'Pending Commissions Withdrawal',
  22. 'withdrawn_commissions' => 'Withdrawn Commissions',
  23. ],
  24. 'action' => [
  25. 'edit_item' => 'Edit :attribute',
  26. 'add_item' => 'Add :attribute',
  27. ],
  28. 'confirm' => [
  29. 'delete' => [0 => 'Do you want to delete :attribute [', 1 => '] ?'],
  30. 'continues' => 'Do you want to continue?',
  31. 'export' => 'Do you want to export all?',
  32. ],
  33. 'user_dashboard' => 'User Dashboard',
  34. 'menu' => [
  35. 'dashboard' => 'Dashboard',
  36. 'user' => [
  37. 'attribute' => 'Users',
  38. 'list' => 'User Management',
  39. 'oauth' => 'OAuth',
  40. 'group' => 'User Groups',
  41. 'credit_log' => 'Balance History',
  42. 'subscribe' => 'Subscription Requests',
  43. ],
  44. 'rbac' => [
  45. 'attribute' => 'RBAC',
  46. 'permission' => 'Permissions',
  47. 'role' => 'Roles',
  48. ],
  49. 'customer_service' => [
  50. 'attribute' => 'Helpdesk',
  51. 'ticket' => 'Support Tickets',
  52. 'article' => 'Article Management',
  53. 'push' => 'Push Notifications',
  54. 'mail' => 'Mass Mailing',
  55. ],
  56. 'node' => [
  57. 'attribute' => 'Nodes',
  58. 'list' => 'Node Management',
  59. 'auth' => 'API Authorization',
  60. 'cert' => 'Certificate',
  61. ],
  62. 'rule' => [
  63. 'attribute' => 'Audit',
  64. 'list' => 'Rule Management',
  65. 'group' => 'Rule Group',
  66. 'trigger' => 'Trigger Logs',
  67. ],
  68. 'shop' => [
  69. 'attribute' => 'Shop',
  70. 'goods' => 'Product Management',
  71. 'coupon' => 'Coupon Management',
  72. 'order' => 'Orders',
  73. ],
  74. 'promotion' => [
  75. 'attribute' => 'Promotions',
  76. 'invite' => 'Referral Management',
  77. 'withdraw' => 'Commission Withdrawals',
  78. 'rebate_flow' => 'Rebate History',
  79. ],
  80. 'analysis' => [
  81. 'attribute' => 'Report',
  82. 'accounting' => 'Accounting',
  83. 'user_flow' => 'User Flow',
  84. ],
  85. 'log' => [
  86. 'attribute' => 'Logs',
  87. 'traffic' => 'Data Usage',
  88. 'traffic_flow' => 'Data Flow',
  89. 'service_ban' => 'Ban Records',
  90. 'online_logs' => 'Online Logs',
  91. 'online_monitor' => 'Online Monitoring',
  92. 'notify' => 'Notification Logs',
  93. 'payment_callback' => 'Payment Callback',
  94. 'system' => 'System Report',
  95. ],
  96. 'tools' => [
  97. 'attribute' => 'Toolbox',
  98. 'decompile' => 'Decompile',
  99. 'convert' => 'Convert',
  100. 'import' => 'Import',
  101. 'analysis' => 'Log Analysis',
  102. ],
  103. 'setting' => [
  104. 'attribute' => 'Settings',
  105. 'email_suffix' => 'Email Suffix Management',
  106. 'universal' => 'General Settings',
  107. 'system' => 'System Settings',
  108. ],
  109. ],
  110. 'user' => [
  111. 'massive' => [
  112. 'text' => 'Number of Users to Generate',
  113. 'button' => 'Bulk Generation',
  114. 'failed' => 'Bulk generation failed',
  115. 'succeed' => 'Bulk accounts generated successfully',
  116. 'note' => 'Bulk users generated in background',
  117. ],
  118. 'proxy_info' => 'Configuration information',
  119. 'traffic_monitor' => 'Data Statistics',
  120. 'online_monitor' => 'Online Monitoring',
  121. 'reset_traffic' => 'Reset Data',
  122. 'user_view' => 'Switch to User Profile',
  123. 'connection_test' => 'Network test',
  124. 'counts' => 'Total of <code>:num</code> accounts',
  125. 'reset_confirm' => [0 => 'Do you want to reset [', 1 => ']\'s data?'],
  126. 'info' => [
  127. 'account' => 'Account Information',
  128. 'proxy' => 'Proxy Information',
  129. 'switch' => 'Switch Identity',
  130. 'reset_date_hint' => 'Next data reset date',
  131. 'expired_date_hint' => 'Leave empty for one year by default',
  132. 'uuid_hint' => 'UUID for V2Ray',
  133. 'recharge_placeholder' => 'Filling in a negative value will deduct the balance',
  134. ],
  135. 'update_help' => 'Successfully updated, do you want to return?',
  136. 'proxies_config' => ':username connection configuration information',
  137. 'group' => [
  138. 'title' => 'User Group Control<small>(same node can be assigned to more than one group, One user can only belong to one group; For visible/available nodes: filter by level first, then group)</small>',
  139. 'name' => 'Group Name',
  140. 'counts' => 'Total of <code>:num</code> groups',
  141. ],
  142. ],
  143. 'zero_unlimited_hint' => 'Empty or 0 for unlimited',
  144. 'node' => [
  145. 'traffic_monitor' => 'Usage Statistics',
  146. 'refresh_geo' => 'Refresh Geography',
  147. 'ping' => 'Detect Delay',
  148. 'connection_test' => 'Connectivity Test',
  149. 'counts' => 'Total of <code>:num</code> nodes',
  150. 'reload_all' => 'Reload All Backend',
  151. 'refresh_geo_all' => 'Refresh All Nodes\' Geographies',
  152. 'reload_confirm' => 'Do you want to reload the node?',
  153. 'info' => [
  154. 'hint' => '<strong>Note: </strong> Nodes page\'s <code>ID</code> is used in ShadowsocksR Python backend as <code>node_id</code> in usermysql.json, in V2Ray backend as <code>nodeId</code>.',
  155. 'basic' => 'Basic Information',
  156. 'ddns_hint' => 'Dynamic IP nodes need to be configured with <a href="https://github.com/NewFuture/DDNS" target="_blank">DDNS</a>. For this type of node, the node connectivity test will use server domain to test',
  157. 'domain_placeholder' => 'Server domain address',
  158. 'domain_hint' => 'Enable DDNS in System Settings. Domain will be automatically create/bound to IP address! No longer need to go to the DNS registrant page to modify IP information.',
  159. 'extend' => 'Extended Information',
  160. 'display' => [
  161. 'invisible' => 'Completely invisible',
  162. 'node' => 'Show only on :trans page',
  163. 'sub' => 'Show by Subscription only',
  164. 'all' => 'Visible for all',
  165. 'hint' => 'Whether users can subscribe/see this node',
  166. ],
  167. 'ipv4_hint' => 'Multi-IP uses \',\' partition; ex: 1.1.1.1, 8.8.8.8',
  168. 'ipv6_hint' => 'Multi-IP uses \',\' partition; ex: 1.1.1.1, 8.8.8.8',
  169. 'ipv4_placeholder' => 'Server IPv4 Address',
  170. 'ipv6_placeholder' => 'Server IPv6 address',
  171. 'push_port_hint' => 'Required and server firewall needs to be set up correctly, otherwise it will cause an exception',
  172. 'data_rate_hint' => 'Ex: set to 0.1, 10M will be count as 100M and 500M count as 100M',
  173. 'level_hint' => 'Level: 0 = No ratings, all visible',
  174. 'detection' => [
  175. 'tcp' => 'TCP only',
  176. 'icmp' => 'ICMP only',
  177. 'all' => 'Detect All',
  178. 'hint' => 'Nodes will be tested every 30-60 minutes',
  179. ],
  180. 'obfs_param_hint' => 'While obfs is not [plain], fill in parameters to traffic masquerading; &#13;&#10; While obfs is [http_simple], suggest set port to 80; &#13;&#10; While obfs is [tls], suggest set port to 443;',
  181. 'additional_ports_hint' => 'If enabled, please configure server<span class="red-700"><a href="javascript:showTnc();">additional_ports</a></span>information',
  182. 'v2_method_hint' => 'Do not use none when using WebSocket',
  183. 'v2_net_hint' => 'Enable TLS when using WebSocket Transfer Protocol',
  184. 'v2_cover' => [
  185. 'none' => 'None',
  186. 'http' => 'HTTP Transport',
  187. 'srtp' => 'Video call data (SRTP)',
  188. 'utp' => 'BT download data (uTP)',
  189. 'wechat' => 'WeChat video call',
  190. 'dtls' => 'DTLS1.2 packets',
  191. 'wireguard' => 'WireGuard packets',
  192. ],
  193. 'v2_host_hint' => 'Multiple domains are separated by \',\' when the spoofing type is HTTP transfer protocol, and only one domain is allowed when using the WebSocket transfer protocol.',
  194. 'v2_tls_provider_hint' => 'Different backend configurations are different:',
  195. 'single_hint' => 'Recommended 80 or 443. Backend needs to configure <br> strict mode: user\'s port cannot be connected, only via the following specified port. (<a href="javascript:showPortsOnlyConfig();">How to configure?</a>)',
  196. ],
  197. 'proxy_info' => '*Compatibility SS',
  198. 'proxy_info_hint' => 'If compatible, please add<span class="red-700">_compatible</span> to server configuration protocol and obfuscation',
  199. 'reload' => 'Reload Backend',
  200. 'auth' => [
  201. 'title' => 'Node Authorizations <small>WEBAPI</small>',
  202. 'deploy' => [
  203. 'title' => 'Deploy :type_label backend',
  204. 'attribute' => 'Backend Deployment',
  205. 'command' => 'Operation commands',
  206. 'update' => 'Update: ',
  207. 'uninstall' => 'Uninstall: ',
  208. 'start' => 'Launch: ',
  209. 'stop' => 'Stop: ',
  210. 'status' => 'Status: ',
  211. 'recent_logs' => 'Recent Log: ',
  212. 'real_time_logs' => 'Real-time Log: ',
  213. 'restart' => 'Restart: ',
  214. 'same' => 'Same as above',
  215. 'trojan_hint' => 'Please fill in the node\'s<a href=":url" target="_blank">domain name</a> and resolve IP to this the domain',
  216. ],
  217. 'reset_auth' => 'Reset Key',
  218. 'counts' => 'Total of <code>:num</code> authorizations',
  219. 'generating_all' => 'Do you want to generate authorization for all nodes?',
  220. ],
  221. 'cert' => [
  222. 'title' => 'Domain Certificates <small>Spoofing Domain for V2Ray Nodes</small>',
  223. 'counts' => 'Total of <code>:num</code> domain certificates',
  224. 'key_placeholder' => 'The KEY value of the domain certificate. Allowed to be empty, VNET-V2Ray backend support auto-signing certificate',
  225. 'pem_placeholder' => 'The PEM value of the domain certificate. Allowed to be empty, VNET-V2Ray backend support auto-signing certificate',
  226. ],
  227. ],
  228. 'hint' => 'Hint',
  229. 'oauth' => [
  230. 'title' => 'User OAuth',
  231. 'counts' => 'Total of <code>:num</code> open authorizations',
  232. ],
  233. 'select_all' => 'Select All',
  234. 'clear' => 'Clear',
  235. 'unselected_hint' => 'To be assigned, searchable here',
  236. 'selected_hint' => 'Assigned, searchable here',
  237. 'clone' => 'Clone',
  238. 'monitor' => [
  239. 'daily_chart' => 'Daily traffic chart',
  240. 'monthly_chart' => 'Monthly traffic chart',
  241. 'node' => 'Node traffic',
  242. 'user' => 'User traffic',
  243. 'hint' => '<strong>Hint: </strong> If no statistics are available, please check is the scheduled task running correctly.',
  244. ],
  245. 'tools' => [
  246. 'analysis' => [
  247. 'title' => 'SSR Log Analysis <small>For single node only</small>',
  248. 'req_url' => 'Recent Requests Address',
  249. 'not_enough' => 'Less than 15,000 records, unable to analyze data',
  250. ],
  251. 'convert' => [
  252. 'title' => 'Format Conversion <small>Shadowsocks to ShadowsocksR</small>',
  253. 'content_placeholder' => 'Please fill in the configuration information to be converted',
  254. ],
  255. 'decompile' => [
  256. 'title' => 'Decompile <small>Configuration Information</small>',
  257. 'attribute' => 'Decompile',
  258. 'content_placeholder' => 'Please fill in the ShadowsocksR link that you want to decompile, one link per line',
  259. ],
  260. ],
  261. 'ticket' => [
  262. 'title' => 'Tickets',
  263. 'counts' => 'Total of <code>:num</code> tickets',
  264. 'send_to' => 'Please fill in the target user information',
  265. 'user_info' => 'User Information',
  266. 'inviter_info' => 'Inviter Information',
  267. 'close_confirm' => 'Sure to close this ticket?',
  268. 'error' => 'Unknown error! Please check the logs',
  269. ],
  270. 'logs' => [
  271. 'subscribe' => 'Subscriptions',
  272. 'counts' => 'Total of <code>:num</code> records',
  273. 'rule' => [
  274. 'clear_all' => 'Clear all records',
  275. 'title' => 'Trigger record',
  276. 'name' => 'Trigger Rule',
  277. 'reason' => 'Trigger reason',
  278. 'created_at' => 'Trigger Time',
  279. 'tag' => '✅ Access to non-permitted content',
  280. 'clear_confirm' => 'Sure to clear all records?',
  281. ],
  282. 'order' => [
  283. 'title' => 'Orders',
  284. 'is_expired' => 'Whether expired',
  285. 'is_coupon' => 'Whether a coupon is used',
  286. ],
  287. 'user_traffic' => [
  288. 'title' => 'Data Usage Records',
  289. 'choose_node' => 'Select Node',
  290. ],
  291. 'user_data_modify_title' => 'User Data Change Records',
  292. 'callback' => 'Callback Logs <small>For Online Payment</small>',
  293. 'notification' => 'Email Delivery Records',
  294. 'ip_monitor' => 'Online IP monitoring <small>Real-time data within 2 minutes</small>',
  295. 'user_ip' => [
  296. 'title' => 'User Online IP List <small>Last 10 minutes</small>',
  297. 'connect' => 'IP of connection',
  298. ],
  299. 'ban' => [
  300. 'title' => 'Users Ban Records',
  301. 'time' => 'Duration',
  302. 'reason' => 'Reason',
  303. 'ban_time' => 'Banned Time',
  304. 'last_connect_at' => 'Last connection time',
  305. ],
  306. 'credit_title' => 'Balance Change Records',
  307. ],
  308. 'start_time' => 'Start',
  309. 'end_time' => 'End',
  310. 'goods' => [
  311. 'title' => 'Products',
  312. 'type' => [
  313. 'top_up' => 'Top-Up',
  314. 'package' => 'Data Pack',
  315. 'plan' => 'Plan',
  316. ],
  317. 'info' => [
  318. 'type_hint' => 'Plan is related to the account expiration date, Data Pack only affect the available data that user has, does not affect the expiration date',
  319. 'period_hint' => 'Plan\'s data reset in every N days',
  320. 'limit_num_hint' => 'Number of times each user can purchase this product; 0 means no restriction on purchase',
  321. 'available_date_hint' => 'Automatically deduct data from total data when due',
  322. 'desc_placeholder' => 'Brief description of the product',
  323. 'list_placeholder' => 'Add custom lists to product',
  324. 'list_hint' => 'Please start each line with A and end with B<code>&lt;li&gt;</code> and end with <code>&lt;/li&gt;</code>',
  325. ],
  326. 'status' => [
  327. 'yes' => 'Active',
  328. 'no' => 'Inactive',
  329. ],
  330. 'sell_and_used' => 'In Use/Sales',
  331. 'counts' => 'Total of <code>:num</code> products',
  332. ],
  333. 'sort_asc' => 'The larger the sort value, the higher the priority',
  334. 'yes' => 'Yes',
  335. 'no' => 'No',
  336. 'rule' => [
  337. 'type' => [
  338. 'reg' => 'Regular expression',
  339. 'domain' => 'Domain Name',
  340. 'ip' => 'IP',
  341. 'protocol' => 'Protocol',
  342. ],
  343. 'counts' => 'Total of <code>:num</code> audit rules',
  344. 'title' => 'Rules',
  345. 'group' => [
  346. 'type' => [
  347. 'off' => 'Block',
  348. 'on' => 'Allow',
  349. ],
  350. 'title' => 'Audit Group',
  351. 'counts' => 'Total of <code>:num</code> audit groups',
  352. ],
  353. ],
  354. 'role' => [
  355. 'name_hint' => 'Unique identification name, ex: Administrator',
  356. 'description_hint' => 'Displays name, ex: Administrator',
  357. 'title' => 'Permission Roles',
  358. 'permissions_all' => 'All Permissions',
  359. 'counts' => 'Total of <code>:num</code> permission roles',
  360. ],
  361. 'report' => [
  362. 'monthly_accounting' => 'Monthly Income',
  363. 'annually_accounting' => 'Annual Income',
  364. 'historic_accounting' => 'Historical Income',
  365. 'current_month' => 'Current month',
  366. 'last_month' => 'Last Month',
  367. 'current_year' => 'Current year',
  368. 'last_year' => 'Last year',
  369. 'hourly_traffic' => 'Hourly data traffic',
  370. 'daily_traffic' => 'Daily data traffic',
  371. 'today' => 'Today',
  372. ],
  373. 'permission' => [
  374. 'title' => 'Permissions',
  375. 'description_hint' => 'Description of permission, ex: [X system] Edit A',
  376. 'name_hint' => 'Fill in the route, ex: admin.permission.create,update',
  377. 'counts' => 'Total of <code>:num</code> permissions',
  378. ],
  379. 'marketing' => [
  380. 'email' => [
  381. 'title' => 'Marketing Emails',
  382. 'group_send' => 'Send Group Email',
  383. 'counts' => 'Total of <code>:num</code> emails',
  384. ],
  385. 'send_status' => 'Delivery Status',
  386. 'send_time' => 'Sending time',
  387. 'error_message' => 'Error Messages',
  388. 'push' => [
  389. 'title' => 'Marketing Push Messages',
  390. 'send' => 'Push Marketing Message',
  391. 'counts' => 'Total of <code>:num</code> push messages',
  392. ],
  393. ],
  394. 'creating' => 'Adding...',
  395. 'article' => [
  396. 'type' => [
  397. 'knowledge' => 'Article',
  398. 'announcement' => 'Announcement',
  399. ],
  400. 'category_hint' => 'Same category will be grouped under the same folder',
  401. 'logo_hint' => 'Recommended size: 100x75',
  402. 'title' => 'Articles',
  403. 'counts' => 'Total of <code>:num</code> articles',
  404. ],
  405. 'coupon' => [
  406. 'title' => 'Coupons',
  407. 'name_hint' => 'For user-end display',
  408. 'sn_hint' => 'The code to use the coupon, leave it blank will generate 8-digit random code by default',
  409. 'type' => [
  410. 'voucher' => 'Voucher',
  411. 'discount' => 'Discount Coupon',
  412. 'charge' => 'Recharge Coupon',
  413. ],
  414. 'type_hint' => 'Reduction: deduct the amount of the product; Discount: discount the percentage of the product; Recharge: add the amount to the user balance',
  415. 'value' => '{1} ➖ :num|{2} :num% discount |{3} ➕ :num',
  416. 'value_hint' => 'Range 1% ~ 99%',
  417. 'priority_hint' => 'While Coupons have the same [Coupon Code], Eligible and highest priority coupon will be used first. The maximum is 255',
  418. 'minimum_hint' => 'Coupon can only be used when the payment amount exceeds <strong>:num</strong>',
  419. 'used_hint' => 'Eligible users may use this coupon no more than <strong>:num</strong> times',
  420. 'levels_hint' => 'Coupon can only be used if the user is within the selected levels',
  421. 'groups_hint' => 'Coupon can only be used by selected user groups',
  422. 'users_placeholder' => 'Enter the user ID, then press enter',
  423. 'user_whitelist_hint' => 'Involved users are allowed to use this coupon, leave blank for not using this condition',
  424. 'users_blacklist_hint' => 'Involved users are not allowed to use this coupon, leave blank for not using this condition',
  425. 'services_placeholder' => 'Enter the product ID, then press enter',
  426. 'services_whitelist_hint' => 'Coupon can only be used for products in this list, leave blank for not using this condition',
  427. 'services_blacklist_hint' => 'Coupon cannot be used for products in this list, leave blank for not using this condition',
  428. 'newbie' => [
  429. 'first_discount' => 'First time using any coupon',
  430. 'first_order' => 'First Order',
  431. 'created_days' => 'Create Account',
  432. ],
  433. 'created_days_hint' => '<code>:day</code> days of account creation',
  434. 'limit_hint' => 'The rules of this restriction are <strong>and</strong> relation, please use them properly',
  435. 'info_title' => 'Coupon Information',
  436. 'counts' => 'Total of <code>:num</code> coupons',
  437. 'discount' => 'Discount',
  438. 'export_title' => 'Coupon Export',
  439. 'single_use' => 'One-time',
  440. ],
  441. 'times' => 'Times',
  442. 'massive_export' => 'Batch Export',
  443. 'system_generate' => 'System Generated',
  444. 'aff' => [
  445. 'rebate_title' => 'Referral Rebate History',
  446. 'counts' => 'Total of <code>:num</code> applications',
  447. 'title' => 'Withdrawal Requests',
  448. 'apply_counts' => 'Total of <code>:num</code> requests',
  449. 'referral' => 'Promotional Rebates',
  450. 'commission_title' => 'Withdrawal Request Details',
  451. 'commission_counts' => 'This application involves <code>:num</code> orders',
  452. ],
  453. 'setting' => [
  454. 'common' => [
  455. 'title' => 'General Configuration',
  456. 'set_default' => 'Set as default',
  457. 'connect_nodes' => 'Number of associated nodes',
  458. ],
  459. 'email' => [
  460. 'title' => 'Email Suffix Filters <small> used to limit the emails used for registration</small>',
  461. 'tail' => 'Email Suffix',
  462. 'rule' => 'Restriction Type',
  463. 'black' => 'Blacklist',
  464. 'white' => 'Whitelist',
  465. 'tail_placeholder' => 'Please fill in the email suffix',
  466. ],
  467. 'system' => [
  468. 'title' => 'System Settings',
  469. 'web' => 'Website',
  470. 'account' => 'Account',
  471. 'node' => 'Node',
  472. 'extend' => 'Advanced',
  473. 'check_in' => 'Check-in',
  474. 'promotion' => 'Promotion',
  475. 'notify' => 'Notification',
  476. 'auto_job' => 'Automation',
  477. 'other' => 'LOGO|Customer Service|Statistics',
  478. 'payment' => 'Payment Gateway',
  479. 'menu' => 'Menu',
  480. ],
  481. 'no_permission' => 'You have no permission to change the setting!',
  482. ],
  483. 'system' => [
  484. 'account_expire_notification' => 'Account Expiration Notification',
  485. 'active_times' => 'Number of activation of account',
  486. 'admin_invite_days' => '[Admin] Expiration days of invitation code',
  487. 'aff_salt' => '[Invitation URL] Encrypt User Information',
  488. 'alipay_qrcode' => 'Alipay QrCode',
  489. 'AppStore_id' => '[Apple] Account',
  490. 'AppStore_password' => '[Apple] Password',
  491. 'auto_release_port' => 'Port Recycle',
  492. 'bark_key' => '[Bark] Device Token',
  493. 'captcha_key' => 'Captcha Key',
  494. 'captcha_secret' => 'Captcha Secret/ID',
  495. 'codepay_id' => '[CodePay] ID',
  496. 'codepay_key' => '[CodePay] Key',
  497. 'codepay_url' => '[CodePay] URL',
  498. 'data_anomaly_notification' => 'Data Abnormal Notification',
  499. 'data_exhaust_notification' => 'Data Exhaustion Notification',
  500. 'ddns_key' => '[DNS Provider] Key',
  501. 'ddns_mode' => 'DNS Provider',
  502. 'ddns_secret' => '[DNS Provider] Secret',
  503. 'default_days' => 'Account Initial Time',
  504. 'default_traffic' => 'Initial Data Traffic',
  505. 'detection_check_times' => 'Node Network Detection Alert',
  506. 'dingTalk_access_token' => '[DingTalk Robot] Access Token',
  507. 'dingTalk_secret' => '[DingTalk Robot] Secret',
  508. 'epay_key' => '[ePay] Key',
  509. 'epay_mch_id' => '[ePay] Merchant ID',
  510. 'epay_url' => '[ePay] URL',
  511. 'expire_days' => 'Expiration Warning Threshold',
  512. 'f2fpay_app_id' => '[Alipay] APP ID',
  513. 'f2fpay_private_key' => '[Alipay] Private Key',
  514. 'f2fpay_public_key' => '[Alipay] Public Key',
  515. 'forbid_mode' => 'Access Prohibited',
  516. 'invite_num' => 'Number of invitations can be generated',
  517. 'is_activate_account' => 'Account Activation',
  518. 'is_AliPay' => 'Alipay Gateway',
  519. 'is_ban_status' => 'Expiration Ban',
  520. 'is_captcha' => 'Captcha',
  521. 'is_checkin' => 'Check-in Reward',
  522. 'is_clear_log' => 'Clean Logs',
  523. 'is_custom_subscribe' => 'Advanced Subscription',
  524. 'is_email_filtering' => 'Email Filtering',
  525. 'is_forbid_robot' => 'Forbid Bots Access',
  526. 'is_free_code' => 'Free Invitation Code',
  527. 'is_invite_register' => 'Invitation to Register',
  528. 'is_otherPay' => 'Special Gateway',
  529. 'is_QQPay' => 'QQ Wallet Gateway',
  530. 'is_rand_port' => 'Random Ports',
  531. 'is_register' => 'Registration',
  532. 'is_subscribe_ban' => 'Subscription Abnormal Ban',
  533. 'is_traffic_ban' => 'Abnormal Data Use Ban',
  534. 'is_WeChatPay' => 'WeChat Pay Gateway',
  535. 'iYuu_token' => '[IYUU] Token',
  536. 'maintenance_content' => 'Maintenance Announcement',
  537. 'maintenance_mode' => 'Maintenance Mode',
  538. 'maintenance_time' => 'Maintenance End Time',
  539. 'min_port' => 'Port Range',
  540. 'min_rand_traffic' => 'Data Range',
  541. 'node_blocked_notification' => 'Node Blocked Alert',
  542. 'node_daily_notification' => 'Node Data Usage Daily Report',
  543. 'node_offline_notification' => 'Node Offline Notification',
  544. 'oauth_path' => 'OAuth Platforms',
  545. 'offline_check_times' => 'Number of Offline Notification',
  546. 'password_reset_notification' => 'Reset Password Notification',
  547. 'paybeaver_app_id' => '[PayBeaver] App ID',
  548. 'paybeaver_app_secret' => '[PayBeaver] App Secret',
  549. 'payjs_key' => '[PayJs] Key',
  550. 'payjs_mch_id' => '[PayJs] Merchant ID',
  551. 'payment_confirm_notification' => 'Manual Pay Payment Confirmation',
  552. 'payment_received_notification' => 'Successful Payment Notification',
  553. 'paypal_app_id' => 'App ID',
  554. 'paypal_client_id' => 'Client ID',
  555. 'paypal_client_secret' => 'Client Secret Key',
  556. 'pushDeer_key' => '[PushDeer] Key',
  557. 'pushplus_token' => '[PushPlus] Token',
  558. 'rand_subscribe' => 'Random Subscription',
  559. 'redirect_url' => 'Redirect URL',
  560. 'referral_money' => 'Minimum Withdrawal Limit',
  561. 'referral_percent' => 'Rebate Rate',
  562. 'referral_status' => 'Promotion',
  563. 'referral_traffic' => 'Registration Bonus Data Traffic',
  564. 'referral_type' => 'Rebate Mode',
  565. 'register_ip_limit' => 'Same IP Registration Restriction',
  566. 'reset_password_times' => 'Password Reset Limitation',
  567. 'reset_traffic' => 'Data Traffic Reset',
  568. 'server_chan_key' => '[ServerChan] SCKEY',
  569. 'standard_currency' => 'Primary Currency',
  570. 'stripe_public_key' => 'Public Key',
  571. 'stripe_secret_key' => 'Secret Key',
  572. 'stripe_signing_secret' => 'WebHook Signing secret',
  573. 'subject_name' => 'Custom Product Name',
  574. 'subscribe_ban_times' => 'Subscription Request Threshold',
  575. 'subscribe_domain' => 'Service Subscription URL',
  576. 'subscribe_max' => 'Maximum number of subscription nodes',
  577. 'telegram_token' => 'Telegram Token',
  578. 'tg_chat_token' => 'TG Chat Token',
  579. 'theadpay_key' => '[THeadpay] Key',
  580. 'theadpay_mchid' => '[THeadpay] Merchant ID',
  581. 'theadpay_url' => '[THeadpay] URL',
  582. 'ticket_closed_notification' => 'Ticket Closure Notification',
  583. 'ticket_created_notification' => 'Ticket Creation Notification',
  584. 'ticket_replied_notification' => 'Ticket Response Notification',
  585. 'traffic_ban_time' => 'Ban Time',
  586. 'traffic_ban_value' => 'Data Abnormal Threshold',
  587. 'traffic_limit_time' => 'Time Interval',
  588. 'traffic_warning_percent' => 'Low Data Traffic Threshold',
  589. 'trojan_license' => 'Trojan Backend License',
  590. 'username_type' => 'Username Type',
  591. 'user_invite_days' => '[User] Expiration days of invitation code',
  592. 'v2ray_license' => 'V2Ray Backend License',
  593. 'v2ray_tls_provider' => 'V2Ray TLS Configuration',
  594. 'webmaster_email' => 'Administrator Email',
  595. 'website_analytics' => 'Statistics Code',
  596. 'website_callback_url' => 'Payment Callback Domain',
  597. 'website_customer_service' => 'Customer Service Code',
  598. 'website_home_logo' => 'Homepage Logo',
  599. 'website_logo' => 'Site Logo',
  600. 'website_name' => 'Site Name',
  601. 'website_security_code' => 'Site Security Code',
  602. 'website_url' => 'Site Domain Address',
  603. 'web_api_url' => 'Authorization/Backend Access Domain',
  604. 'wechat_aid' => 'Enterprise WeChat AID',
  605. 'wechat_cid' => 'Enterprise WeChat CID',
  606. 'wechat_encodingAESKey' => 'Enterprise WeChat Encoding AESKey',
  607. 'wechat_qrcode' => 'WeChat QrCode',
  608. 'wechat_secret' => 'Enterprise WeChat Secret',
  609. 'wechat_token' => 'Enterprise WeChat Token',
  610. 'hint' => [
  611. 'account_expire_notification' => 'Notify users that their accounts are about to expire',
  612. 'active_times' => 'The number of times a user can activate an account via email within 1 day',
  613. 'admin_invite_days' => 'Expiration date of the invitation code generated by the administrator',
  614. 'aff_salt' => 'If left blank, the invitation link will use user ID; Filling in any letters/numbers as key to encrypt user ID',
  615. 'AppStore_id' => 'Apple account that can be used in the articles',
  616. 'AppStore_password' => 'Apple password that can be used in the articles',
  617. 'auto_release_port' => 'Ports for accounts that have been banned/expired for <code>'.config('tasks.release_port').'</code> days will be released',
  618. 'bark_key' => 'Push messages to iOS devices. You need to install Bark on your iPhone first, then take the long string after [api.day.app]. Be sure to fill in this value before enable Bark',
  619. 'captcha_key' => 'Browse <a href="https://proxypanel.gitbook.io/wiki/captcha" target="_blank">Setup Guide</a> to set up',
  620. 'data_anomaly_notification' => 'User hourly traffic exceeding data abnormal threshold notifies admin',
  621. 'data_exhaust_notification' => 'Notify users that their data is about to run out',
  622. 'ddns_key' => "Browse <a href='https://proxypanel.gitbook.io/wiki/ddns' target='_blank'>Setup Guide</a> to set up",
  623. 'ddns_mode' => 'Sync nodes\' domain and IP setting to DNS Provider',
  624. 'default_days' => 'Default expiration date for new registered accounts. 0 means same day expiration',
  625. 'default_traffic' => 'Default available data traffic for new registered accounts',
  626. 'detection_check_times' => 'Automatically offline node after N reminders. 0/empty mean do not offline node, Max 12',
  627. 'dingTalk_access_token' => 'Browse <a href=https://open.dingtalk.com/document/group/custom-robot-access#title-jfe-yo9-jl2 target=_blank>DingTalk Handbook</a> to see the set-up steps',
  628. 'dingTalk_secret' => 'Optional, unless DingTalk bot\'s [加签] function is selected!',
  629. 'expire_days' => '[Account Expiry Notice] Starting Threshold, notify users daily',
  630. 'f2fpay_app_id' => 'Alipay\'s APPID',
  631. 'f2fpay_private_key' => 'App Private key generated by the official secret key software',
  632. 'f2fpay_public_key' => 'Note that it is not the APP public key!',
  633. 'forbid_mode' => 'Blocking the corresponding area based on IP, non-blocked areas can be accessed normally',
  634. 'invite_num' => 'Number of invitation codes a user can generate by default',
  635. 'is_activate_account' => 'Once enabled, users need to activate their accounts via email',
  636. 'is_ban_status' => '(Caution!) Blocking the entire account will reset all data on the account and prevent users from logging in. Deactivate this to disable the user agent only.',
  637. 'is_captcha' => 'If enabled, Captcha will be required for login/registration action',
  638. 'is_checkin' => 'Random traffic will be awarded according to the traffic range when user check-in',
  639. 'is_clear_log' => '(Recommended) Automatically clean useless/outdated logs when enabled',
  640. 'is_custom_subscribe' => 'When enabled, the top of the subscription list will show the account expiration date, the amount of traffic left (only some clients are supported)',
  641. 'is_email_filtering' => 'Blacklist: users can use any email outside the blacklist to register; Whitelist: users can only use supported email in the white list to register',
  642. 'is_forbid_robot' => 'Bots, Crawlers, or Proxies access, Panel will throw a 404 error',
  643. 'is_free_code' => 'Free invitation code will not be visible if disabled',
  644. 'is_rand_port' => 'Randomly get ports when users register/add users',
  645. 'is_register' => 'Cannot register if disabled',
  646. 'is_subscribe_ban' => 'When enabled, subscription link will be blocked when user requests via subscription link exceed the set threshold',
  647. 'is_traffic_ban' => 'If the user\'s data usage exceeds the data abnormal threshold within 1 hour, Use\'s service will be disabled for fixed amount of time',
  648. 'iYuu_token' => 'Before enabling IYUU, Please make sure to fill in token that (<a href=https://iyuu.cn target=_blank>apply from IYUU</a>)',
  649. 'maintenance_content' => 'Customized maintenance announcement content',
  650. 'maintenance_mode' => "When enabled, user access will redirect to maintenance page| For Admin access using <a href='javascript:(0)'>:url</a>",
  651. 'maintenance_time' => 'For maintenance interface countdown',
  652. 'min_port' => 'Port range: 1000 ~ 65535',
  653. 'node_blocked_notification' => 'Detects node network connectivity hourly and alerts administrators when there is a situation',
  654. 'node_daily_notification' => 'Report traffic consumption data per node',
  655. 'node_offline_notification' => 'Detects nodes offline every 10 minutes and alerts administrator when any of them is offline',
  656. 'oauth_path' => 'Please add settings in .ENV, before using any of platforms',
  657. 'offline_check_times' => 'Stop alerts after N alerts within 24 hours',
  658. 'password_reset_notification' => 'Users can reset their passwords, if enabled',
  659. 'paybeaver_app_id' => '<a href="https://merchant.paybeaver.com/" target="_blank">Merchant Center</a> -> Developer -> App ID',
  660. 'paybeaver_app_secret' => '<a href="https://merchant.paybeaver.com/" target="_blank">Merchant Center</a> -> Developer -> App Secret',
  661. 'payjs_mch_id' => 'Get configs from <a href="https://payjs.cn/dashboard/member" target="_blank">Member page</a>',
  662. 'payment_confirm_notification' => 'Users notify administrators to process orders that using Manual Pay',
  663. 'payment_received_notification' => 'Prompt the user with the latest status of the order',
  664. 'pushDeer_key' => 'Before enabling PushDeer, make sure to fill <a href=https://www.pushdeer.com/official.html target=_blank>Push Key</a>',
  665. 'pushplus_token' => 'Before enabling PushPlus, make sure to fill <a href=https://www.pushplus.plus/push1.html target=_blank>Token</a>',
  666. 'rand_subscribe' => 'When enabled, the system returns the node list randomly, otherwise, it will be available based on Node list order',
  667. 'redirect_url' => 'When an audit rule is triggered, blocked access requests are redirected to this address',
  668. 'referral_money' => 'The minimum amount that can be requested for withdrawal',
  669. 'referral_percent' => 'According to the account registered by the promotion link, the percentage of share that the inviter can get from each order',
  670. 'referral_status' => 'Not visible to users after closing, but does not affect the normal invitation rebate function',
  671. 'referral_traffic' => 'Free data traffic after registration with promotion link/invitation code',
  672. 'referral_type' => 'After switching modes the old data remains unchanged and the new rebate is calculated according to the new mode',
  673. 'register_ip_limit' => 'The number of registration requests allowed to be requested from the same IP within 24 hours. No limit for 0/empty',
  674. 'reset_password_times' => 'The number of times users can reset their passwords via email within 24 hours',
  675. 'reset_traffic' => 'Users reset their available data traffic according to the reset cycle of their purchased plan',
  676. 'server_chan_key' => 'Before enabling ServerChan, please fill in <a href=https://sc.ftqq.com target=_blank>SCKEY</a>',
  677. 'standard_currency' => 'For displaying product title in payment gateways',
  678. 'subject_name' => 'Display product title for payment channel',
  679. 'subscribe_ban_times' => 'Limit of subscription requests a user can send within 24 hours',
  680. 'subscribe_domain' => '(recommended) Prevent Main Domain abnormality, resulting in failure to subscribe properly start with [http:// or https://]',
  681. 'subscribe_max' => 'The number of nodes when the client subscribes, and return all nodes when 0/left blank',
  682. 'telegram_token' => 'Find <a href=https://t.me/BotFather target=_blank>@BotFather</a> to apply for robot\'s TOKEN',
  683. 'tg_chat_token' => 'Before enabling TG Chat, please fill in <a href=https://t.me/realtgchat_bot target=_blank> applied Token</a>',
  684. 'ticket_closed_notification' => 'Notify user when ticket closed',
  685. 'ticket_created_notification' => 'Notification of newly created ticket to management/user, depending on whom created',
  686. 'ticket_replied_notification' => 'Ticket response notification to the other party',
  687. 'traffic_ban_time' => 'Any user/subscription anomaly blocking time, automatically unblocked upon expiry',
  688. 'traffic_ban_value' => 'If the value is exceeded within 1 hour, the ban will be triggered',
  689. 'traffic_limit_time' => 'Check-in Interval',
  690. 'traffic_warning_percent' => '[Traffic Exhaustion Notification] Start threshold, notify users daily',
  691. 'username_type' => 'Standardize the type of site allowed username type, Default is Email',
  692. 'user_invite_days' => 'Expiration date of user-generated invitations',
  693. 'v2ray_tls_provider' => 'For back-end auto-issue/loading of TLS certificates (Node\'s setting have higher priority than here)',
  694. 'webmaster_email' => 'Some error messages will provide the administrator\'s email as the contact information',
  695. 'website_analytics' => 'Statistics JavaScript',
  696. 'website_callback_url' => 'Prevent payment callback from being backsliding due to a DNS poisoning of main domain, start with http:// or https://',
  697. 'website_customer_service' => 'Customer Service JavaScript',
  698. 'website_name' => 'Show on email and etc.',
  699. 'website_security_code' => 'When not empty, must be accessed via <a href=":url" target="_blank">Secure Portal</a> to access the website',
  700. 'website_url' => 'Main domain that this panel will be using for everything links related as default',
  701. 'web_api_url' => 'For example: '.config('app.url'),
  702. 'wechat_aid' => 'Create an app in <a href=https://work.weixin.qq.com/wework_admin/frame#apps arget=_blank>app management page</a>, get AgentId',
  703. 'wechat_cid' => 'Get the CID in<a href=https://work.weixin.qq.com/wework_admin/frame#profile target=_blank>My Enterprise page</a>',
  704. 'wechat_encodingAESKey' => 'App Management ⇒ Application ⇒ Set API ⇒ EncodingAESKey',
  705. 'wechat_secret' => 'App Secret (may need to download enterprise WeChat to be able view it)',
  706. 'wechat_token' => 'App Management -> Application -> Set API -> TOKEN, URL set to :url',
  707. ],
  708. 'placeholder' => [
  709. 'default_url' => 'Default as :url',
  710. 'server_chan_key' => 'Fill in ServerChan\'s SCKEY, then press Update',
  711. 'pushDeer_key' => 'Fill in Push Key, then press Update',
  712. 'iYuu_token' => 'Fill in IYUU Token, then press Update',
  713. 'bark_key' => 'Fill in Bark key, then press Update',
  714. 'telegram_token' => 'Fill in Telegram Token, then press Update',
  715. 'pushplus_token' => 'Please apply at ServerChan',
  716. 'dingTalk_access_token' => 'Customize bot\'s access_token in WebHook',
  717. 'dingTalk_secret' => 'Customize key that will appear after robot is signed',
  718. 'wechat_aid' => 'WeChat AID',
  719. 'wechat_cid' => 'Fill in the WeChat CID, then press Update',
  720. 'wechat_secret' => 'WeChat Secret',
  721. 'tg_chat_token' => 'Please apply at Telegram',
  722. 'codepay_url' => 'https://codepay.fatq.com/create_order/?',
  723. ],
  724. 'payment' => [
  725. 'attribute' => 'Payment Gateway',
  726. 'channel' => [
  727. 'alipay' => 'Alipay F2F',
  728. 'codepay' => 'CodePay',
  729. 'epay' => 'ePay',
  730. 'payjs' => 'PayJs',
  731. 'paypal' => 'PayPal',
  732. 'stripe' => 'Stripe',
  733. 'paybeaver' => 'PayBeaver',
  734. 'theadpay' => 'THeadPay',
  735. 'manual' => 'Manual Pay',
  736. ],
  737. 'hint' => [
  738. 'alipay' => 'This feature requires going to <a href="https://open.alipay.com/platform/appManage.htm?#/create/" target="_blank">Ant Financial Services Open Platform</a> to apply for permission and application',
  739. 'codepay' => 'Please go to <a href="https://codepay.fateqq.com/i/377289" target="_blank">CodePay</a>. Apply for an account, download and set up its software',
  740. 'payjs' => 'Please go to <a href="https://payjs.cn/ref/zgxjnb" target="_blank">PayJs</a> to apply an account',
  741. 'paypal' => 'Login to the <a href="https://www.paypal.com/businessprofile/mytools/apiaccess/firstparty" target="_blank">API credentials application page</a> with your merchant account, agree and get setup information',
  742. 'paybeaver' => 'Please go to <a href="https://merchant.paybeaver.com/?aff_code=iK4GNuX8" target="_blank"> PayBeaver</a> to apply an account',
  743. 'theadpay' => 'Please go to <a href="https://theadpay.com/" target="_blank">THeadPay</a> to request an account',
  744. 'manual' => 'After the gateway is set and selected, it will be displayed on the user-end',
  745. ],
  746. ],
  747. 'notification' => [
  748. 'channel' => [
  749. 'telegram' => 'Telegram',
  750. 'wechat' => 'Enterprise WeChat',
  751. 'dingtalk' => 'DingTalk',
  752. 'email' => 'Email',
  753. 'bark' => 'Bark',
  754. 'serverchan' => 'ServerChan',
  755. 'pushdeer' => 'PushDeer',
  756. 'pushplus' => 'PushPlus',
  757. 'iyuu' => 'IYUU',
  758. 'tg_chat' => 'TG Chat',
  759. 'site' => 'Site Popup',
  760. ],
  761. 'send_test' => 'Send Test Message',
  762. ],
  763. 'forbid' => [
  764. 'mainland' => 'Forbid Chinese Mainland Access',
  765. 'china' => 'Forbid China Access',
  766. 'oversea' => 'Forbid Oversea Access',
  767. ],
  768. 'username' => [
  769. 'email' => 'Email',
  770. 'mobile' => 'Phone number',
  771. 'any' => 'Any Username',
  772. ],
  773. 'active_account' => [
  774. 'before' => 'Pre-registration activation',
  775. 'after' => 'Activate after registration',
  776. ],
  777. 'ddns' => [
  778. 'namesilo' => 'Namesilo',
  779. 'aliyun' => 'AliCloud/Aliyun',
  780. 'dnspod' => 'DNSPod',
  781. 'cloudflare' => 'CloudFlare',
  782. ],
  783. 'captcha' => [
  784. 'standard' => 'Standard',
  785. 'geetest' => 'Geetest',
  786. 'recaptcha' => 'Google ReCaptcha',
  787. 'hcaptcha' => 'hCaptcha',
  788. ],
  789. 'referral' => [
  790. 'once' => 'First Purchase Rebate',
  791. 'loop' => 'Always Rebate',
  792. ],
  793. ],
  794. 'set_to' => 'Set as :attribute',
  795. 'minute' => ' minutes',
  796. 'query' => 'Query',
  797. 'optional' => 'Optional',
  798. 'require' => 'Required',
  799. ];