[ [ 'id' => "signal1", 'pair' => "GBP/JPY", 'status' => "Active", 'tp' => "Tp-1", 'action' => "SELL", 'dateTime' => date('c'), 'openPrice' => "189.345", 'stopLoss' => "190.150", 'takeProfit1' => "188.150", 'takeProfit2' => "187.250", 'takeProfit3' => "186.150", 'possibility' => "75.5", 'timeFrame' => "H-1", 'profitLoss' => "+120 pips", 'tradeResult' => "Running" ], [ 'id' => "signal2", 'pair' => "AUD/JPY", 'status' => "Active", 'tp' => "Waiting", 'action' => "SELL", 'dateTime' => date('c', strtotime('-30 minutes')), 'openPrice' => "97.845", 'stopLoss' => "98.250", 'takeProfit1' => "97.150", 'takeProfit2' => "96.750", 'takeProfit3' => "96.250", 'possibility' => "68.9", 'timeFrame' => "M-15", 'profitLoss' => "Waiting", 'tradeResult' => "Waiting" ] ], 'payment_details' => [ 'btc' => [ 'address' => "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa", 'network' => "Bitcoin (BTC)", 'amount' => "0.0012 BTC", 'qrCode' => "https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=bitcoin:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" ], 'upi' => [ 'address' => "proforex@upi", 'name' => "Pro Forex Signals", 'network' => "UPI", 'amount' => "₹4100", 'qrCode' => "https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=proforex@upi" ] ], 'telegram_info' => [ 'username' => "rupesh_trader_7657", 'display_name' => "Rupesh Trader", 'link' => "https://t.me/rupesh_trader_7657" ], 'vip_plans' => [ [ 'id' => '7days', 'name' => '7 Days Trial', 'duration' => '7 Days', 'price' => '$10', 'discount' => 'Save 30%', 'features' => [ 'Daily 2-3 Signals', 'Basic Support', 'Email Notifications', 'Access to Free Channel' ], 'popular' => false ], [ 'id' => '1month', 'name' => '1 Month VIP', 'duration' => '30 Days', 'price' => '$100', 'original_price' => '$150', 'discount' => 'Save 33%', 'features' => [ 'Daily 5-7 Premium Signals', 'Priority Support', 'Telegram Group Access', 'Risk Management Tips', 'Weekly Analysis Reports' ], 'popular' => true ], [ 'id' => '6months', 'name' => '6 Months VIP', 'duration' => '180 Days', 'price' => '$300', 'original_price' => '$600', 'discount' => 'Save 50%', 'features' => [ 'All 1 Month Features', 'Personal Support Manager', 'Advanced Strategy Sessions', 'Market Trend Analysis', 'Early Signal Access' ], 'popular' => false ], [ 'id' => '1year', 'name' => '1 Year VIP', 'duration' => '365 Days', 'price' => '$500', 'original_price' => '$1200', 'discount' => 'Save 58%', 'features' => [ 'All 6 Months Features', 'One-on-One Mentoring', 'Custom Trading Strategy', '24/7 Priority Support', 'Lifetime Updates Access' ], 'popular' => false ] ], 'payment_proofs' => [], 'live_chat' => [], 'invitation_codes' => [] ]; // Load data from JSON database file function loadFromDatabase() { global $defaultData; if (file_exists(DATABASE_FILE)) { $jsonData = file_get_contents(DATABASE_FILE); if ($jsonData) { $data = json_decode($jsonData, true); // Merge with defaults to ensure all keys exist return array_merge($defaultData, $data); } } // If file doesn't exist, create it with default data saveToDatabase($defaultData); return $defaultData; } // Save data to JSON database file function saveToDatabase($data) { // Add timestamp for tracking $data['last_updated'] = date('Y-m-d H:i:s'); $data['updated_by'] = $_SERVER['REMOTE_ADDR'] ?? 'unknown'; $jsonData = json_encode($data, JSON_PRETTY_PRINT); return file_put_contents(DATABASE_FILE, $jsonData); } // Handle payment proof submission if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['submit_payment'])) { $databaseData = loadFromDatabase(); $proofData = [ 'id' => uniqid('proof_'), 'plan_id' => $_POST['plan_id'], 'plan_name' => $_POST['plan_name'], 'plan_price' => $_POST['plan_price'], 'payment_method' => $_POST['payment_method'], 'transaction_id' => $_POST['transaction_id'] ?? '', 'utr_number' => $_POST['utr_number'] ?? '', 'name' => $_POST['name'] ?? 'Anonymous', 'email' => $_POST['email'] ?? '', 'telegram' => $_POST['telegram'] ?? '', 'screenshot_filename' => '', 'status' => 'pending', 'submitted_at' => date('Y-m-d H:i:s'), 'ip_address' => $_SERVER['REMOTE_ADDR'] ]; // Handle file upload if (isset($_FILES['payment_screenshot']) && $_FILES['payment_screenshot']['error'] === UPLOAD_ERR_OK) { $uploadDir = 'payment_proofs/'; if (!file_exists($uploadDir)) { mkdir($uploadDir, 0777, true); } $filename = uniqid() . '_' . basename($_FILES['payment_screenshot']['name']); $uploadPath = $uploadDir . $filename; if (move_uploaded_file($_FILES['payment_screenshot']['tmp_name'], $uploadPath)) { $proofData['screenshot_filename'] = $filename; } } // Add to payment proofs $databaseData['payment_proofs'][] = $proofData; // Add to live chat $databaseData['live_chat'][] = [ 'id' => uniqid('chat_'), 'type' => 'payment_submitted', 'user' => $proofData['name'], 'message' => "New payment submitted for {$proofData['plan_name']} via {$proofData['payment_method']}", 'timestamp' => date('Y-m-d H:i:s'), 'status' => 'unread' ]; saveToDatabase($databaseData); // Set success message $_SESSION['payment_submitted'] = true; $_SESSION['payment_message'] = "Payment proof submitted successfully! We'll verify and activate your VIP access within 24 hours."; // Redirect to avoid form resubmission header('Location: ' . $_SERVER['PHP_SELF']); exit; } // Load current data from database $databaseData = loadFromDatabase(); $signals = $databaseData['signals'] ?? []; $paymentDetails = $databaseData['payment_details'] ?? []; $telegramInfo = $databaseData['telegram_info'] ?? []; $vipPlans = $databaseData['vip_plans'] ?? []; // Currency flag mapping $flagMap = [ "GBP" => "gb", "JPY" => "jp", "AUD" => "au", "EUR" => "eu", "NZD" => "nz", "CHF" => "ch", "USD" => "us", "CAD" => "ca", "SGD" => "sg", "HKD" => "hk", "SEK" => "se", "NOK" => "no", "DKK" => "dk", "ZAR" => "za", "MXN" => "mx", "TRY" => "tr", "BTC" => "crypto", "ETH" => "crypto", "XRP" => "crypto", "LTC" => "crypto" ]; // Function to format date for display function formatDateTime($dateTimeStr) { if (!$dateTimeStr) return "Just now"; try { $date = new DateTime($dateTimeStr); $now = new DateTime(); $diff = $date->diff($now); if ($diff->days > 0) { return $date->format('d M H:i'); } elseif ($diff->h > 0) { return $diff->h . ' hour' . ($diff->h > 1 ? 's' : '') . ' ago'; } elseif ($diff->i > 0) { return $diff->i . ' min ago'; } else { return "Just now"; } } catch (Exception $error) { return "Recently"; } } ?>
Forex Signals - Live Buy/Sell Updates