[ 'add_item' => 'Add :attribute', 'edit_item' => 'Edit :attribute', ], 'aff' => [ 'apply_counts' => 'Total :num withdrawal requests', 'commission_counts' => 'This request involves :num orders', 'commission_title' => 'Withdrawal Request Details', 'counts' => 'Total :num commission records', 'referral' => 'Referral Commissions', ], 'article' => [ 'category_hint' => 'Articles in the same category are automatically archived', 'counts' => 'Total :num articles', 'logo_placeholder' => 'Or enter the URL of the logo image', 'type' => [ 'announcement' => 'Announcement', 'knowledge' => 'Knowledge Base', ], ], 'clear' => 'Clear', 'clone' => 'Clone', 'confirm' => [ 'continues' => 'Are you sure you want to continue?', 'delete' => 'Confirm deletion of :attribute [:name]? This action is irreversible!', 'export' => 'Confirm export of all data?', ], 'coupon' => [ 'counts' => 'Total :num coupons', 'created_days_hint' => 'Account registration ≥ :days days', 'discount' => 'Discount', 'export_title' => 'Bulk Coupon Export', 'groups_hint' => 'Only effective for selected user groups', 'info_title' => 'Coupon Details', 'levels_hint' => 'Only effective for selected user levels', 'limit_hint' => 'Conditions are AND relationships', 'minimum_hint' => 'Minimum spend required: :num', 'name_hint' => 'Name displayed to users', 'newbie' => [ 'created_days' => 'Account age', 'first_discount' => 'First coupon use', 'first_order' => 'First order discount', ], 'priority_hint' => 'Priority (0-255), higher values take precedence', 'services_blacklist_hint' => 'Excluded products', 'services_placeholder' => 'Enter product ID and press Enter to add', 'services_whitelist_hint' => 'Eligible products', 'single_use' => 'Single use', 'sn_hint' => 'Coupon code (leave blank to auto-generate 8-character code)', 'type' => [ 'charge' => 'Top-up Coupon', 'discount' => 'Discount Coupon', 'voucher' => 'Cash Voucher', ], 'type_hint' => '• Voucher: Deduct a fixed amount | • Discount: Apply percentage discount | • Top-up: Top up account balance', 'used_hint' => 'Each user can use it :num time(s)', 'user_whitelist_hint' => 'Specified eligible users', 'users_blacklist_hint' => 'Excluded users', 'users_placeholder' => 'Enter user ID and press Enter to add', 'value' => '{1} Deduct :num|{2} :num% Off|{3} Add :num to Balance', 'value_hint' => 'Discount coupon range: 1%-99%', ], 'creating' => 'Creating...', 'dashboard' => [ 'abnormal_users' => 'Abnormal Traffic Users (1H)', 'active_days_users' => ':days-day Active Users', 'available_users' => 'Active Users', 'credit' => 'Account Balance', 'current_month_traffic_consumed' => 'Traffic Used This Month', 'days_traffic_consumed' => ':days-day Traffic Consumption', 'expiring_users' => 'Users Expiring Soon', 'inactive_days_users' => ':days-day Inactive Users', 'maintaining_nodes' => 'Nodes Under Maintenance', 'nodes' => 'Nodes', 'online_orders' => 'Online Payment Orders', 'online_users' => 'Online Now', 'orders' => 'Orders', 'overuse_users' => 'Users With >90% Traffic Used', 'paid_users' => 'Paying Users', 'succeed_orders' => 'Paid Orders', 'users' => 'Users', 'withdrawing_commissions' => 'Pending Commissions', 'withdrawn_commissions' => 'Withdrawn Commissions', ], 'filter' => [ 'start_time' => 'Start time', 'end_time' => 'End time', ], 'goods' => [ 'counts' => 'Total :num products', 'info' => [ 'available_date_hint' => 'Automatically deducts traffic upon expiration', 'desc_placeholder' => 'Product description (visible to users)', 'limit_num_hint' => 'Each user can purchase this item up to N times. 0 means no limit.', 'list_hint' => 'Format each line as
  • Content
  • ', 'list_placeholder' => 'Custom information (HTML supported)', 'period_hint' => 'Automatically reset traffic every N days', 'type_hint' => 'Plans include validity period; traffic packages only deduct traffic', ], 'sell_and_used' => 'Usage/Sales', 'status' => [ 'no' => 'Off Shelf', 'yes' => 'On Shelf', ], 'type' => [ 'package' => 'Traffic package', 'plan' => 'Subscription plan', 'top_up' => 'Balance top-up', ], ], 'hint' => 'Operation Tip', 'logs' => [ 'ban' => [ 'ban_time' => 'Ban time', 'last_connect_at' => 'Last connection', 'reason' => 'Ban reason', 'time' => 'Ban duration', ], 'counts' => 'Total :num records', 'order' => [ 'is_coupon' => 'Coupon used', 'is_expired' => 'Expired', 'update_conflict' => 'Update failed, order conflict', ], 'rule' => [ 'clear_all' => 'Clear All Records', 'clear_confirm' => '⚠️ Confirm clearing all trigger records?', 'created_at' => 'Trigger time', 'name' => 'Rule name', 'reason' => 'Trigger reason', 'tag' => '✅ Accessed illegal content', ], 'monitor' => [ 'sub_title' => 'Real-time (within 2 minutes)', ], 'user_ip' => [ 'connect' => 'Connection IP', 'sub_title' => 'Last 10 Minutes', ], 'user_traffic' => [ 'choose_node' => 'Select node', ], ], 'marketing' => [ 'counts' => 'Total :num messages', 'email' => [ 'ever_paid' => 'Historically paid', 'expire_start' => 'Expired after', 'expire_end' => 'Expired before', 'filters' => 'Filters', 'loading_statistics' => 'Loading statistics...', 'never_paid' => 'Never paid', 'paid_servicing' => 'Active service', 'previously_paid' => 'Historically paid with no current active service', 'recent_traffic_abnormal' => 'Recent traffic-abnormal', 'recently_active' => 'Recently active', 'targeted_users_count' => 'Targeted user count', 'traffic_usage_over' => 'Traffic usage >N%', ], 'email_send' => 'Send Bulk Email', 'error_message' => 'Error messages', 'processed' => 'Request accepted', 'push_send' => 'Push notifications', 'send_status' => 'Delivery status', 'send_time' => 'Sent at', 'targeted_users_not_found' => 'Target users not found', 'unknown_sending_type' => 'Unknown delivery type', ], 'massive_export' => 'Bulk Export', 'menu' => [ 'analysis' => [ 'accounting' => 'Financial Records', 'attribute' => 'Analytics', 'node_flow' => 'Node Traffic', 'site_flow' => 'System Traffic', 'user_flow' => 'User Traffic', ], 'customer_service' => [ 'article' => 'Article Management', 'attribute' => 'Support', 'marketing' => 'Broadcast Messages', 'ticket' => 'Ticket Center', ], 'dashboard' => 'Dashboard', 'log' => [ 'attribute' => 'Logs', 'notify' => 'Notification History', 'online_logs' => 'Online Logs', 'online_monitor' => 'Online Monitor', 'payment_callback' => 'Payment Callbacks', 'service_ban' => 'Ban Records', 'system' => 'System Logs', 'traffic' => 'Traffic Logs', 'traffic_flow' => 'Traffic Details', ], 'node' => [ 'attribute' => 'Nodes', 'auth' => 'Authorization', 'cert' => 'Certificate Management', 'list' => 'Node List', ], 'promotion' => [ 'attribute' => 'Marketing', 'invite' => 'Invite Management', 'rebate_flow' => 'Rebate History', 'withdraw' => 'Withdrawals', ], 'rbac' => [ 'attribute' => 'Access', 'permission' => 'Permission Settings', 'role' => 'Role Management', ], 'rule' => [ 'attribute' => 'Audits', 'group' => 'Rule Groups', 'list' => 'Rule Management', 'trigger' => 'Trigger Logs', ], 'setting' => [ 'attribute' => 'Settings', 'email_suffix' => 'Email Suffixes', 'system' => 'System Settings', 'universal' => 'General Config', ], 'shop' => [ 'attribute' => 'Store', 'coupon' => 'Coupon Center', 'goods' => 'Product Catalog', 'order' => 'Order Center', ], 'tools' => [ 'analysis' => 'Log Analyzer', 'attribute' => 'Tools', 'convert' => 'Format Converter', 'decompile' => 'Config Decoder', 'import' => 'Data Import', ], 'user' => [ 'attribute' => 'Users', 'credit_log' => 'Balance Logs', 'group' => 'User Groups', 'list' => 'User List', 'oauth' => 'OAuth Logins', 'subscribe' => 'Subscription Center', ], ], 'monitor' => [ 'daily_chart' => 'Daily Traffic Chart', 'hint' => 'Tip: If no data, check scheduled task status', 'monthly_chart' => 'Monthly Traffic Chart', 'node' => 'Node Traffic', 'user' => 'User Traffic', ], 'no' => 'No', 'node' => [ 'auth' => [ 'counts' => 'Total :num authorizations', 'deploy' => [ 'attribute' => 'Backend Deployment', 'command' => 'Execute Command', 'real_time_logs' => 'Real-time logs', 'recent_logs' => 'Recent logs', 'restart' => 'Restart service', 'same' => 'Same as Above', 'start' => 'Start service', 'status' => 'Running status', 'stop' => 'Stop service', 'title' => ':type_label Deployment', 'trojan_hint' => 'First configure node domain', 'uninstall' => 'Uninstall service', 'update' => 'Update service', ], 'empty' => 'No pending nodes', 'generating_all' => 'Generate keys for all nodes?', 'reset_auth' => 'Reset authorization key', ], 'cert' => [ 'counts' => 'Total :num SSL certificates', 'key_placeholder' => 'Private key (auto-issued for VNET-V2Ray)', 'pem_placeholder' => 'Certificate (auto-issued for VNET-V2Ray)', ], 'counts' => 'Total :num nodes', 'info' => [ 'additional_ports_hint' => 'If enabled, please configure server-side additional_ports settings.', 'basic' => 'Basic Configuration', 'data_rate_hint' => 'Example: 0.1 means 100MB counts as 10MB', 'ddns_hint' => 'For dynamic IPs: configure DDNS', 'detection' => [ 'all' => 'Full protocol detection', 'hint' => 'Random checks every 30-60 minutes', 'icmp' => 'ICMP only', 'tcp' => 'TCP only', ], 'display' => [ 'all' => 'Fully visible', 'hint' => 'User visibility scope', 'invisible' => 'Fully hidden', 'node' => 'Node list only', 'sub' => 'Subscription only', ], 'domain_hint' => 'Auto-binds IP in DDNS mode', 'domain_placeholder' => 'Domain (prioritized over IP)', 'extend' => 'Advanced Configuration', 'hint' => 'Note: Node ID is used for server configuration', 'ipv4_hint' => 'Multiple IPs separated by commas', 'ipv4_placeholder' => 'IPv4 address', 'ipv6_hint' => 'Multiple IPs separated by commas', 'ipv6_placeholder' => 'IPv6 address', 'level_hint' => '0 = No level restrictions', 'obfs_param_hint' => 'Non-plain obfuscation requirements:
    • http_simple: port 80 recommended
    • tls: port 443 recommended', 'push_port_hint' => 'Ensure this port is open in the server firewall for proper message pushing.', 'single_hint' => 'Port 80/443 recommended
    View strict mode config', 'v2_cover' => [ 'dtls' => 'DTLS 1.2', 'http' => 'HTTP', 'none' => 'None', 'srtp' => 'SRTP', 'utp' => 'uTP', 'wechat' => 'WeChat Video', 'wireguard' => 'WireGuard', ], 'v2_host_hint' => 'For HTTP obfuscation, separate multiple domains with commas. WebSocket allows only one domain.', 'v2_method_hint' => '⚠️ Do not use "none" encryption for WebSocket', 'v2_net_hint' => '⚠️ WebSocket requires TLS', 'v2_tls_provider_hint' => 'Different backends have different configurations:', ], 'proxy_info' => '*SS protocol compatibility', 'proxy_info_hint' => 'Compatibility mode requires adding _compatible to backend config', 'refresh_geo' => 'Refresh geolocation', 'refresh_geo_all' => 'Refresh all geolocations', 'reload' => 'Reload service', 'reload_all' => 'Reload all services', 'connection_test' => 'Connectivity test', 'connection_test_all' => 'Test All Connectivity', 'reload_confirm' => 'Confirm node service reload?', 'traffic_monitor' => 'Traffic statistics', ], 'oauth' => [ 'counts' => 'Total :num authorizations', ], 'optional' => 'Optional', 'permission' => [ 'counts' => 'Total :num permissions', 'description_hint' => 'Example: Delete order permission', 'name_hint' => 'Route name, e.g., admin.user.edit', ], 'query' => 'Query', 'report' => [ 'annually_accounting' => 'Annual transactions', 'annually_site_flow' => 'Annual traffic', 'avg_traffic_30d' => '30-day average', 'current_month' => 'Current month', 'current_year' => 'Current year', 'daily_accounting' => 'Daily transactions', 'daily_distribution' => 'Time distribution', 'daily_site_flow' => 'Daily system traffic', 'daily_traffic' => 'Daily traffic', 'hourly_traffic' => 'Hourly traffic', 'last_month' => 'Last month', 'last_year' => 'Last year', 'monthly_accounting' => 'Monthly transactions', 'monthly_site_flow' => 'Monthly system traffic', 'select_hourly_date' => 'Select date', 'sum_traffic_30d' => '30-day total', 'today' => 'Today', ], 'require' => 'Required', 'role' => [ 'counts' => 'Total :num roles', 'description_hint' => 'Display name, e.g., Support Specialist', 'modify_admin_error' => '⚠️ Cannot modify super admin', 'name_hint' => 'Unique ID, e.g., SupportAdmin', 'permissions_all' => 'All permissions', ], 'rule' => [ 'counts' => 'Total :num rules', 'group' => [ 'counts' => 'Total :num groups', 'type' => [ 'off' => 'Block', 'on' => 'Allow', ], ], 'type' => [ 'domain' => 'Domain rule', 'ip' => 'IP rule', 'protocol' => 'Protocol rule', 'reg' => 'Regex rule', ], ], 'select_all' => 'Select all', 'selected_hint' => 'Assigned rules (searchable)', 'set_to' => 'Set as :attribute', 'setting' => [ 'common' => [ 'connect_nodes' => 'Node connections', 'set_default' => 'Set as default', ], 'email' => [ 'black' => 'Blacklist', 'rule' => 'Filter rules', 'tail' => 'Email suffix', 'tail_placeholder' => 'Enter suffix (without @)', 'sub_title' => 'Works with system settings to block specific emails', 'white' => 'Whitelist', ], 'no_permission' => '⚠️ No modification permission', 'system' => [ 'web' => 'Website', 'account' => 'Account', 'node' => 'Node', 'security' => 'Security', 'payment' => 'Payment', 'notify' => 'Notifications', 'auto_job' => 'Cron Jobs', 'menu' => 'Menu', ], ], 'sort_asc' => 'Higher values sort first', 'system' => [ 'active_account' => [ 'after' => 'Activate after registration', 'before' => 'Activate before registration', ], 'captcha' => [ 'geetest' => 'Geetest', 'hcaptcha' => 'hCaptcha', 'recaptcha' => 'Google reCAPTCHA', 'standard' => 'Standard CAPTCHA', 'turnstile' => 'Turnstile', ], 'tasks' => [ 'clean' => [ 'notification_logs' => 'Notification logs', 'node_daily_logs' => 'Node daily traffic', 'node_hourly_logs' => 'Node hourly traffic', 'node_heartbeats' => 'Node heartbeats', 'node_online_logs' => 'Node online users', 'payments' => 'Payment data', 'rule_logs' => 'Rule triggers', 'node_online_ips' => 'User connection IPs', 'user_baned_logs' => 'User bans', 'user_daily_logs_nodes' => 'User node daily traffic', 'user_daily_logs_total' => 'User total daily traffic', 'user_hourly_logs' => 'User node hourly traffic', 'login_logs' => 'Login logs', 'subscribe_logs' => 'Subscription logs', 'traffic_logs' => 'Traffic details', 'unpaid_orders' => 'Unpaid orders', ], 'close' => [ 'tickets' => 'Tickets', 'confirmation_orders' => 'Manual orders', 'orders' => 'Payment orders', 'verify' => 'Verification code', ], ], 'forbid' => [ 'china' => 'Forbid China Access', 'mainland' => 'Forbid Chinese Mainland Access', 'oversea' => 'Forbid Overseas Access', ], 'hint' => [ 'AppStore_id' => 'Apple ID for iOS setup guide', 'AppStore_password' => 'Apple password for iOS setup guide', 'account_expire_notification' => 'Notify users before account expiration', 'active_times' => 'Max email activations allowed per 24h', 'admin_invite_days' => 'Validity of admin invite codes', 'affiliate_link_salt' => 'Empty = show user ID; Set to encrypt referral link', 'auto_release_port' => 'Release ports N days after ban/expiration', 'bark_key' => 'Device key for Bark (iOS app required)', 'captcha_key' => 'CAPTCHA config guide', 'data_anomaly_notification' => 'Alert admin if user traffic exceeds threshold in 1h', 'data_exhaust_notification' => 'Notify users when traffic runs out', 'ddns_key' => 'DDNS config guide', 'ddns_mode' => 'Auto-sync node domain/IP to DNS provider', 'default_days' => 'Default validity of new accounts (0 = same day)', 'default_traffic' => 'Initial traffic for new users', 'detection_check_times' => 'Max block alerts (0/empty = unlimited, ≤12)', 'dingTalk_access_token' => 'DingTalk token guide', 'dingTalk_secret' => 'Required if robot signature is enabled', 'expire_days' => 'Days before expiration to send warning', 'f2fpay_app_id' => 'Alipay App ID', 'f2fpay_private_key' => 'Alipay private key (keep safe)', 'f2fpay_public_key' => 'Alipay public key (not app public key)', 'forbid_mode' => 'Block access by IP region', 'iYuu_token' => 'Get IYUU token', 'invite_num' => 'Default invite quota for new users', 'is_activate_account' => 'Require email activation for new accounts', 'is_ban_status' => '⚠️ Banning resets all account data', 'is_captcha' => 'Enable CAPTCHA on login/register', 'is_clear_log' => 'Auto-clear logs (recommended)', 'is_custom_subscribe' => 'Show usage information in subscription page', 'is_email_filtering' => 'Blacklist or whitelist email suffixes', 'is_forbid_robot' => 'Block bots, crawlers, and proxies', 'is_free_code' => 'Hide free codes if disabled', 'is_rand_port' => 'Random port for new users', 'is_register' => 'Disable registration', 'maintenance_content' => 'HTML content for maintenance page', 'maintenance_mode' => 'Redirect to maintenance page; Admin login via :url', 'maintenance_time' => 'Maintenance countdown timer', 'min_port' => 'Valid port range: 1000–65535', 'checkin_reward' => 'Traffic range rewarded per check-in', 'node_blocked_notification' => 'Check and notify node blocks hourly', 'node_daily_notification' => 'Daily traffic report for nodes', 'node_offline_notification' => 'Check node status every 10 minutes', 'node_renewal_notification' => 'Renewal reminders 7/3/1 days before expiry', 'oauth_path' => 'Set in .ENV before enabling here', 'offline_check_times' => 'Max offline alerts per 24h', 'password_reset_notification' => 'Allow users to reset password', 'paybeaver_app_id' => 'App ID from Merchant Center', 'paybeaver_app_secret' => 'App Secret from Merchant Center', 'payjs_mch_id' => 'Get merchant information', 'payment_confirm_notification' => 'Notify admin after manual payment', 'payment_received_notification' => 'Notify user after payment success', 'pushDeer_key' => 'Get PushDeer Key', 'pushplus_token' => 'Get PushPlus Token', 'rand_subscribe' => 'Return nodes randomly or by ID in subscription', 'redirect_url' => 'Redirect when audit rule triggered', 'referral_money' => 'Minimum amount for withdrawal', 'referral_percent' => 'Commission rate (0–100%)', 'referral_status' => 'Hide referral features (no effect on existing rewards)', 'referral_traffic' => 'Get bonus traffic when registering with a referral link or invite code', 'referral_reward_type' => 'Switching type won’t affect past records', 'register_ip_limit' => 'Max registrations per IP per 24h (0 = unlimited)', 'reset_password_times' => 'Max password resets per 24h', 'reset_traffic' => 'Reset traffic on plan renewal date', 'server_chan_key' => 'Get ServerChan SCKEY', 'standard_currency' => 'Default system currency', 'subject_name' => 'Product name in payment gateways', 'subscribe_rate_limit' => 'Max subscription requests per 24h (0 = disable)', 'subscribe_domain' => 'Subscription domain with http(s):// (anti-DNS pollution)', 'subscribe_max' => 'Max nodes per subscription (0 = all)', 'telegram_token' => 'Get Telegram Bot Token', 'tg_chat_token' => 'Get TGChat Token', 'ticket_closed_notification' => 'Notify user when ticket is closed', 'ticket_created_notification' => 'Notify handler on ticket creation', 'ticket_replied_notification' => 'Notify on ticket replies', 'ban_duration' => 'Auto-unban duration after suspension', 'traffic_abuse_limit' => '⚠️ Ban if traffic exceeds limit in 1h', 'checkin_interval' => 'Min hours between check-ins (0 = disabled)', 'traffic_warning_percent' => 'Notify when traffic below threshold (%)', 'user_invite_days' => 'User invite code validity', 'username_type' => 'User ID type (default: email)', 'v2ray_tls_provider' => 'TLS provider for V2Ray backend', 'web_api_url' => 'Domain for node backends to use. e.g., '.config('app.url'), 'webmaster_email' => 'Admin contact email for errors', 'website_statistics_code' => 'Analytics JS code', 'payment_callback_url' => 'Callback URL with http(s):// (anti-DNS pollution)', 'website_customer_service_code' => 'Live chat JS code', 'website_name' => 'Name in notifications/emails', 'website_security_code' => 'Set secure entry if not empty', 'website_url' => 'Base URL (needed for reset/pay)', 'wechat_aid' => 'WeCom App AgentId', 'wechat_cid' => 'WeCom Corp ID', 'wechat_encodingAESKey' => 'From API → EncodingAESKey', 'wechat_secret' => 'App Secret', 'wechat_token' => 'From API → Token, URL: :url', ], 'notification' => [ 'channel' => [ 'bark' => 'Bark', 'dingtalk' => 'DingTalk', 'email' => 'Email', 'iyuu' => 'IYUU', 'pushdeer' => 'PushDeer', 'pushplus' => 'PushPlus', 'serverchan' => 'ServerChan', 'site' => 'In-site', 'telegram' => 'Telegram', 'tg_chat' => 'TG-Chat', 'wechat' => 'WeCom', ], 'send_test' => 'Send test', 'test' => [ 'content' => 'Test notification content', 'success' => 'Test notification sent', 'title' => 'Test notification title', 'unknown_channel' => 'Unknown channel', ], ], 'payment' => [ 'attribute' => 'Payment settings', 'channel' => [ 'f2fpay' => 'Alipay F2F', 'codepay' => 'CodePay', 'credit' => 'Credit', 'epay' => 'ePay', 'manual' => 'Manual', 'paybeaver' => 'PayBeaver', 'payjs' => 'PayJs', 'paypal' => 'PayPal', 'stripe' => 'Stripe', 'theadpay' => 'THeadPay', 'cryptomus' => 'Cryptomus', 'youzan' => 'YouZan', 'bitpayx' => 'BitPayX', ], 'hint' => [ 'f2fpay' => 'Apply at Alipay Open Platform', 'codepay' => 'Register at CodePay and download software', 'manual' => 'Shows automatically when configured', 'paybeaver' => 'Register at PayBeaver', 'payjs' => 'Register at PayJs', 'paypal' => 'Get credentials at PayPal API', 'theadpay' => 'Register at THeadPay', 'cryptomus' => 'Register at Cryptomus and get API key', ], ], 'placeholder' => [ 'bark_key' => 'Enter Bark key → Update', 'codepay_url' => 'https://codepay.fateqq.com/creat_order/?', 'default_url' => 'Default: :url', 'dingTalk_access_token' => 'Robot WebHook access_token', 'dingTalk_secret' => 'Robot signature secret', 'iYuu_token' => 'Enter IYUU token → Update', 'pushDeer_key' => 'Enter PushDeer key → Update', 'pushplus_token' => 'Apply at PushPlus', 'server_chan_key' => 'Enter ServerChan SCKEY → Update', 'telegram_token' => 'Enter Telegram token → Update', 'tg_chat_token' => 'Apply at Telegram', 'wechat_aid' => 'Enter WeChat App AgentId', 'wechat_cid' => 'Enter WeChat Corp ID → Update', 'wechat_secret' => 'Enter WeChat App Secret', ], 'referral' => [ 'loop' => 'Recurring commission', 'once' => 'First-purchase commission', ], 'username' => [ 'any' => 'Any', 'email' => 'Email', 'mobile' => 'Mobile', ], 'demo_restriction' => '⚠️ Modification disabled in demo', 'params_required' => 'Complete :attribute parameters', ], 'system_generate' => 'System generated', 'ticket' => [ 'close_confirm' => '⚠️ Confirm close ticket? This is irreversible', 'counts' => 'Total :num tickets', 'error' => 'Unknown error! Please check the logs.', 'inviter_info' => 'Inviter Information', 'self_send' => 'You cannot create a ticket for yourself!', 'send_to' => 'Please provide target user details', 'user_info' => 'User Information', ], 'times' => 'times', 'tools' => [ 'analysis' => [ 'file_missing' => ':file_name does not exist. Please create the file first.', 'not_enough' => 'Insufficient records (≥15,000 required)', 'req_url' => 'Recent request URLs', 'sub_title' => 'For single-node deployments only', ], 'convert' => [ 'content_placeholder' => 'Enter Shadowsocks JSON', 'file_missing' => 'File does not exist. Please check directory permissions.', 'missing_error' => 'Conversion failed: Missing the [port_password] field in configuration or the field is empty.', 'params_unknown' => 'Parameter error', 'sub_title' => 'Convert Shadowsocks to ShadowsocksR', ], 'decompile' => [ 'attribute' => 'Config parsing', 'content_placeholder' => 'Enter ShadowsocksR links (one per line)', ], 'import' => [ 'file_error' => 'An unknown error occurred. Please re-upload.', 'file_required' => 'Please select a file to upload.', 'file_type_error' => 'Only :type format supported', 'format_error' => 'Content format parsing error. Please upload a :type file with compliant configuration.', ], ], 'unselected_hint' => 'Unassigned rules (searchable)', 'user' => [ 'admin_deletion' => '⚠️ Admin accounts cannot be deleted', 'bulk_account_quantity' => 'Generate quantity', 'connection_test' => 'Check Connectivity', 'counts' => 'Total :num accounts', 'group' => [ 'counts' => 'Total :num groups', 'name' => 'Group name', 'sub_title' => 'Nodes can be in multiple groups; users in one group only. Group takes precedence over level for node visibility.', ], 'info' => [ 'account' => 'Account Information', 'expired_date_hint' => 'Blank defaults to 365 days', 'proxy' => 'Proxy Information', 'recharge_placeholder' => 'Negative = deduction', 'reset_date_hint' => 'Next traffic reset date', 'switch' => 'Switch role', 'uuid_hint' => 'UUID for V2Ray', ], 'online_monitor' => 'Online monitor', 'proxies_config' => '[:username] proxy config', 'proxy_info' => 'Proxy Information', 'reset_confirm' => '⚠️ Confirm resetting traffic for :username?', 'reset_traffic' => 'Reset traffic', 'traffic_monitor' => 'Traffic monitor', 'update_help' => 'Updated! Return to list?', 'user_view' => 'User view', ], 'user_dashboard' => 'User Center', 'yes' => 'Yes', 'zero_unlimited_hint' => 'No setting/0 means no restriction', 'network_status' => [ 1 => '✔️ Normal', 2 => '🛑 Blocked Overseas', 3 => '🛑 Blocked Domestically', 4 => '❌ Disconnected', ], ];