diff --git a/api/binary.php b/api/binary.php index a57132a..25182e8 100644 --- a/api/binary.php +++ b/api/binary.php @@ -1,5 +1,6 @@ false, 'error' => 'Unauthorized']); + echo json_encode(['success' => false, 'error' => __('unauthorized')]); exit; } @@ -16,7 +17,7 @@ if (!$user_id) { $stmt = $db->prepare("SELECT status FROM users WHERE id = ?"); $stmt->execute([$user_id]); if ($stmt->fetchColumn() === 'frozen') { - echo json_encode(['success' => false, 'error' => 'Account frozen']); + echo json_encode(['success' => false, 'error' => __('account_frozen')]); exit; } @@ -31,7 +32,7 @@ if ($action === 'place_order') { $profit_rate = (int)$_POST['profit_rate']; if ($amount <= 0) { - echo json_encode(['success' => false, 'error' => 'Invalid amount']); + echo json_encode(['success' => false, 'error' => __('invalid_amount')]); exit; } @@ -43,7 +44,7 @@ if ($action === 'place_order') { $bal = $stmt->fetchColumn(); if ($bal < $amount) { - throw new Exception("Insufficient balance"); + throw new Exception(__('insufficient_balance')); } // Deduct balance @@ -73,7 +74,7 @@ if ($action === 'settle_order') { $order = $stmt->fetch(); if (!$order || $order['status'] !== 'pending') { - echo json_encode(['success' => false, 'error' => 'Order not found or already settled']); + echo json_encode(['success' => false, 'error' => __('no_records_found')]); exit; } diff --git a/api/contract.php b/api/contract.php index 5f57051..111b328 100644 --- a/api/contract.php +++ b/api/contract.php @@ -1,5 +1,6 @@ false, 'error' => 'Unauthorized']); + echo json_encode(['success' => false, 'error' => __('unauthorized')]); exit; } @@ -23,7 +24,7 @@ if ($action === 'place_order') { $type = $_POST['type'] ?? 'market'; if ($amount <= 0) { - echo json_encode(['success' => false, 'error' => 'Invalid amount']); + echo json_encode(['success' => false, 'error' => __('invalid_amount')]); exit; } @@ -37,7 +38,7 @@ if ($action === 'place_order') { $bal = $stmt->fetchColumn() ?: 0; if ($bal < $margin) { - throw new Exception("Insufficient balance for margin"); + throw new Exception(__('insufficient_balance')); } // Deduct margin @@ -67,7 +68,7 @@ if ($action === 'place_order') { $order = $stmt->fetch(); if (!$order) { - echo json_encode(['success' => false, 'error' => 'Order not found']); + echo json_encode(['success' => false, 'error' => __('no_records_found')]); exit; } diff --git a/api/finance.php b/api/finance.php index 14024ef..4e478ad 100644 --- a/api/finance.php +++ b/api/finance.php @@ -9,7 +9,7 @@ $db = db(); $user_id = $_SESSION['user_id'] ?? null; if (!$user_id) { - echo json_encode(['success' => false, 'error' => 'Unauthorized']); + echo json_encode(['success' => false, 'error' => __('unauthorized')]); exit; } @@ -17,7 +17,7 @@ if (!$user_id) { $stmt = $db->prepare("SELECT status FROM users WHERE id = ?"); $stmt->execute([$user_id]); if ($stmt->fetchColumn() === 'frozen') { - echo json_encode(['success' => false, 'error' => 'Account frozen']); + echo json_encode(['success' => false, 'error' => __('account_frozen')]); exit; } @@ -162,7 +162,7 @@ if ($action === 'recharge') { $fiat_currency = $_POST['fiat_currency'] ?? null; if ($amount <= 0) { - echo json_encode(['success' => false, 'error' => 'Invalid amount']); + echo json_encode(['success' => false, 'error' => __('invalid_amount')]); exit; } @@ -187,7 +187,7 @@ if ($action === 'withdraw') { $bal = $stmt->fetchColumn(); if ($bal < $amount) { - echo json_encode(['success' => false, 'error' => 'Insufficient balance']); + echo json_encode(['success' => false, 'error' => __('insufficient_balance')]); exit; } diff --git a/api/spot.php b/api/spot.php index e80f88b..386770d 100644 --- a/api/spot.php +++ b/api/spot.php @@ -1,5 +1,6 @@ false, 'error' => 'Unauthorized']); + echo json_encode(['success' => false, 'error' => __('unauthorized')]); exit; } @@ -19,7 +20,7 @@ $amount = (float)($_POST['amount'] ?? 0); $type = $_POST['type'] ?? 'limit'; if ($amount <= 0) { - echo json_encode(['success' => false, 'error' => 'Invalid amount']); + echo json_encode(['success' => false, 'error' => __('invalid_amount')]); exit; } @@ -34,7 +35,7 @@ try { $bal = $stmt->fetchColumn() ?: 0; if ($bal < $total_cost) { - throw new Exception("Insufficient balance"); + throw new Exception(__('insufficient_balance')); } // Deduct balance diff --git a/assets/css/style.css b/assets/css/style.css index f782ba6..c8b2f75 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -229,6 +229,14 @@ a:hover { padding-right: 10px !important; padding-left: 10px !important; } + .register-card, .login-card { + padding: 30px 15px !important; + margin: 10px 0; + border-radius: 20px !important; + } + .register-card .logo-text, .login-card .logo-text { + font-size: 20px !important; + } } /* Custom Scrollbar */ diff --git a/assets/css/terminal.css b/assets/css/terminal.css index 3097ad2..69d6e1b 100644 --- a/assets/css/terminal.css +++ b/assets/css/terminal.css @@ -663,30 +663,29 @@ /* Mobile Switcher Module */ .mobile-type-switcher { - padding: 12px 15px; + padding: 8px 15px; background: #0b0e11; border-bottom: 1px solid var(--term-border); } .switcher-module { display: flex; - background: #1e2329; - padding: 4px; - border-radius: 12px; - gap: 4px; - box-shadow: inset 0 2px 4px rgba(0,0,0,0.2); + background: #161a1e; + padding: 3px; + border-radius: 10px; + gap: 3px; } .switcher-item { flex: 1; text-align: center; - padding: 10px 5px; - border-radius: 10px; + padding: 8px 5px; + border-radius: 8px; text-decoration: none; color: var(--term-muted); - font-size: 13px; + font-size: 12px; font-weight: 700; - transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); + transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; @@ -702,41 +701,123 @@ .terminal-header { height: 60px; padding: 0 15px; + gap: 15px; + } + .terminal-header .fs-4 { + font-size: 14px !important; + } + .price-jump.fs-4 { + font-size: 16px !important; } .terminal-chart { - height: 380px !important; + height: 350px !important; } .trading-panels { - padding: 15px; + padding: 12px; background: #0b0e11; border-top: 1px solid var(--term-border); + height: auto; + min-height: auto; } .binary-order-panel .btn-buy-sell { - height: 50px; - font-size: 14px; - border-radius: 10px; + height: 60px; + font-size: 16px; + border-radius: 15px; + margin-top: 5px; } + .cycle-grid { grid-template-columns: repeat(3, 1fr); gap: 8px; } + .cycle-btn { - min-height: 45px; - border-radius: 10px; + min-height: 50px; + border-radius: 12px; } - .cycle-btn .cycle-time { font-size: 12px; } - .cycle-btn .cycle-profit { font-size: 10px; } + .cycle-btn .cycle-time { font-size: 14px; } .amount-input-wrapper .form-control { - height: 45px; - font-size: 16px; + height: 50px; + font-size: 20px; + text-align: center; + border-radius: 15px; } .quick-amounts .btn { - height: 35px; + height: 40px; font-size: 12px; - padding: 0; + border-radius: 10px; + } + + .order-form-container .btn { + height: 55px; + border-radius: 15px; + font-size: 16px; + } + .input-wrapper { + border-radius: 12px !important; + height: 50px !important; + } + + /* Mobile Chart Toolbar */ + .mobile-chart-toolbar { + background: #161a1e; + border-bottom: 1px solid var(--term-border); + display: flex; + flex-direction: column; + } + + .toolbar-scroll { + display: flex; + overflow-x: auto; + padding: 8px 10px; + gap: 8px; + scrollbar-width: none; + } + .toolbar-scroll::-webkit-scrollbar { display: none; } + + .toolbar-item { + background: transparent; + border: none; + color: var(--term-muted); + font-size: 12px; + font-weight: 600; + white-space: nowrap; + padding: 4px 8px; + border-radius: 4px; + } + .toolbar-item.active { + color: #fff; + background: rgba(255,255,255,0.1); + } + + .toolbar-divider { + width: 1px; + height: 15px; + background: var(--term-border); + align-self: center; + } + + .toolbar-tabs { + display: flex; + border-top: 1px solid var(--term-border); + } + .tab-item { + flex: 1; + background: transparent; + border: none; + color: var(--term-muted); + font-size: 13px; + font-weight: 700; + padding: 10px; + border-bottom: 2px solid transparent; + } + .tab-item.active { + color: var(--term-primary); + border-bottom-color: var(--term-primary); + background: rgba(0, 98, 255, 0.05); } } diff --git a/assets/pasted-20260218-123410-15ddfb21.png b/assets/pasted-20260218-123410-15ddfb21.png new file mode 100644 index 0000000..c5399b8 Binary files /dev/null and b/assets/pasted-20260218-123410-15ddfb21.png differ diff --git a/assets/pasted-20260218-124429-13ea957c.png b/assets/pasted-20260218-124429-13ea957c.png new file mode 100644 index 0000000..c2cb7df Binary files /dev/null and b/assets/pasted-20260218-124429-13ea957c.png differ diff --git a/assets/pasted-20260218-125419-34c315c6.png b/assets/pasted-20260218-125419-34c315c6.png new file mode 100644 index 0000000..6947044 Binary files /dev/null and b/assets/pasted-20260218-125419-34c315c6.png differ diff --git a/assets/pasted-20260218-131510-4a5b8fc3.png b/assets/pasted-20260218-131510-4a5b8fc3.png new file mode 100644 index 0000000..e651e18 Binary files /dev/null and b/assets/pasted-20260218-131510-4a5b8fc3.png differ diff --git a/assets/pasted-20260218-132532-9efdb3e6.png b/assets/pasted-20260218-132532-9efdb3e6.png new file mode 100644 index 0000000..6ad315d Binary files /dev/null and b/assets/pasted-20260218-132532-9efdb3e6.png differ diff --git a/assets/pasted-20260218-133815-06e0d484.png b/assets/pasted-20260218-133815-06e0d484.png new file mode 100644 index 0000000..6d25bea Binary files /dev/null and b/assets/pasted-20260218-133815-06e0d484.png differ diff --git a/assets/pasted-20260218-134814-1beb4a1a.png b/assets/pasted-20260218-134814-1beb4a1a.png new file mode 100644 index 0000000..9888e7e Binary files /dev/null and b/assets/pasted-20260218-134814-1beb4a1a.png differ diff --git a/auth/login.php b/auth/login.php index 13a4d28..addb941 100644 --- a/auth/login.php +++ b/auth/login.php @@ -49,7 +49,7 @@ include __DIR__ . '/../includes/header.php'; - BYRO +

@@ -64,7 +64,7 @@ include __DIR__ . '/../includes/header.php';
- +
@@ -72,7 +72,7 @@ include __DIR__ . '/../includes/header.php';
- + diff --git a/auth/register.php b/auth/register.php index b52595f..de92e42 100644 --- a/auth/register.php +++ b/auth/register.php @@ -91,7 +91,9 @@ if (isset($_GET['action']) && $_GET['action'] === 'send_code') { $_SESSION['email_code'] = $code; require_once __DIR__ . '/../mail/MailService.php'; - $res = MailService::sendMail($email, (__('verification_code') . ' - Byro Registration'), (__('verification_code') . ": $code"), "Your verification code is: $code"); + $subject = __('verification_code') . ' - ' . __('register'); + $content = __('verification_code') . ": $code"; + $res = MailService::sendMail($email, $subject, $content, $content); echo json_encode(['success' => true]); exit; @@ -175,7 +177,7 @@ include __DIR__ . '/../includes/header.php'; - BYRO +

@@ -253,7 +255,7 @@ function setRegType(type) { if (type === 'email') { label.innerText = ''; - input.placeholder = 'example@mail.com'; + input.placeholder = ''; input.type = 'email'; if (verifyLabel) verifyLabel.innerText = ''; } else { diff --git a/fees.php b/fees.php index aaef625..c255a23 100644 --- a/fees.php +++ b/fees.php @@ -20,25 +20,25 @@ require_once __DIR__ . '/includes/header.php'; - VIP 0 () + 0 () < $10,000 0.100% 0.100% - VIP 1 + 1 ≥ $10,000 0.080% 0.090% - VIP 2 + 2 ≥ $100,000 0.060% 0.080% - VIP 3 + 3 ≥ $500,000 0.040% 0.070% @@ -64,7 +64,7 @@ require_once __DIR__ . '/includes/header.php'; 0.050% - VIP 1 + 1 0.015% 0.045% diff --git a/help.php b/help.php index 432fbc4..9c5ce9a 100644 --- a/help.php +++ b/help.php @@ -5,9 +5,9 @@ require_once __DIR__ . '/includes/header.php';

-

Search for articles or browse categories below.

+

- +
@@ -16,48 +16,48 @@ require_once __DIR__ . '/includes/header.php';
-

Getting Started

-

Learn how to create an account, verify your identity, and secure your funds.

+

+

-

Deposits & Withdrawals

-

Everything you need to know about moving assets in and out of Byro.

+

+

-

Trading Tutorials

-

Master spot, contract, and binary options trading with our guides.

+

+

-

Security & Account

-

Troubleshoot login issues, 2FA, and manage your account settings.

+

+

-

API Documentation

-

Integrate Byro trading features into your own applications.

+

+

-

Contact Support

-

Can't find what you're looking for? Reach out to our 24/7 team.

+

+

diff --git a/includes/footer.php b/includes/footer.php index eb9e4c9..6e530bd 100644 --- a/includes/footer.php +++ b/includes/footer.php @@ -14,7 +14,7 @@ - +

@@ -232,7 +232,7 @@ csFileInput.addEventListener('change', async () => { if (data.success) { // Success } else { - alert(data.error || 'Upload failed'); + alert(data.error || ''); } } catch (err) { console.error('Upload error:', err); diff --git a/includes/header.php b/includes/header.php index 64d7428..5d61782 100644 --- a/includes/header.php +++ b/includes/header.php @@ -340,7 +340,7 @@ if (!function_exists('getSetting')) { - +