Linux spg1.cloudpowerdns.com 5.14.0-611.34.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Feb 18 05:51:10 EST 2026 x86_64
LiteSpeed
Server IP : 176.9.63.151 & Your IP : 216.73.217.60
Domains :
Cant Read [ /etc/named.conf ]
User : fastear1
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
home /
fastear1 /
.trash /
public /
Delete
Unzip
Name
Size
Permission
Date
Action
data
[ DIR ]
drwxr-xr-x
2025-09-15 23:22
uploads
[ DIR ]
drwxr-xr-x
2025-09-15 18:00
COMPLETE_SETUP_GUIDE.md
5.02
KB
-rw-r--r--
2025-09-15 23:45
DATABASE_SETUP.md
2.84
KB
-rw-r--r--
2025-09-15 23:41
FIX_ACCESS_DENIED.md
2.36
KB
-rw-r--r--
2025-09-16 00:07
MIGRATION_SUMMARY.md
4.28
KB
-rw-r--r--
2025-09-15 23:45
NEXT_STEPS.md
2.18
KB
-rw-r--r--
2025-09-15 23:45
PHPMYADMIN_SETUP_GUIDE.md
3.61
KB
-rw-r--r--
2025-09-15 23:43
QUICK_FIX_INSTRUCTIONS.md
1.99
KB
-rw-r--r--
2025-09-16 00:09
admin-dashboard.html
25.26
KB
-rw-r--r--
2025-09-15 17:29
admin-login.html
5.25
KB
-rw-r--r--
2025-09-15 02:24
admin-profile.html
24.21
KB
-rw-r--r--
2025-09-15 17:43
analytics.html
25.08
KB
-rw-r--r--
2025-09-15 16:13
check_mysql.php
1.33
KB
-rw-r--r--
2025-09-15 23:44
cleanup_duplicates.php
1.46
KB
-rw-r--r--
2025-09-15 23:08
complete_workflow_test.php
4.46
KB
-rw-r--r--
2025-09-15 23:22
create_test_user.php
1.15
KB
-rw-r--r--
2025-09-15 23:20
database.php
4.29
KB
-rw-r--r--
2025-09-15 23:43
database_mysql.php
9.98
KB
-rw-r--r--
2025-09-16 00:08
db_config.php
587
B
-rw-r--r--
2025-09-16 00:07
demo-enhanced.html
45.46
KB
-rw-r--r--
2025-09-15 01:43
deposit.html
10.83
KB
-rw-r--r--
2025-09-15 17:08
error_log
825
B
-rw-r--r--
2025-10-04 15:48
fastearnads.sql
6.12
KB
-rw-r--r--
2025-09-15 23:39
fastearnads_tables_only.sql
5.96
KB
-rw-r--r--
2025-09-16 00:07
final_test.php
4.73
KB
-rw-r--r--
2025-09-15 23:29
import_database.bat
1.03
KB
-rw-r--r--
2025-09-15 23:45
index.php
50.11
KB
-rw-r--r--
2025-09-15 23:40
manage-ads.html
25.39
KB
-rw-r--r--
2025-09-15 16:12
manage-users.html
42.4
KB
-rw-r--r--
2025-09-15 16:54
manage-withdraws.html
49.19
KB
-rw-r--r--
2025-09-15 15:54
migrate_data.php
1.6
KB
-rw-r--r--
2025-09-15 23:40
simple-login.html
1.19
KB
-rw-r--r--
2025-09-15 02:08
start_mysql.bat
948
B
-rw-r--r--
2025-09-15 23:45
test_admin_approval.php
3.55
KB
-rw-r--r--
2025-09-15 23:21
test_connection_with_user.php
1.9
KB
-rw-r--r--
2025-09-15 19:19
test_db_connection.php
1.54
KB
-rw-r--r--
2025-09-15 23:41
test_deposit_fix.php
2.88
KB
-rw-r--r--
2025-09-15 23:09
test_frontend.html
3.49
KB
-rw-r--r--
2025-09-15 23:22
test_user_activity_history.php
2.96
KB
-rw-r--r--
2025-09-15 23:21
user-ads.html
18.36
KB
-rw-r--r--
2025-09-15 14:39
user-dashboard.html
47.77
KB
-rw-r--r--
2025-09-15 23:26
user-login.html
5.78
KB
-rw-r--r--
2025-09-15 02:27
user-profile.html
33.93
KB
-rw-r--r--
2025-09-15 18:33
user-register.html
7.56
KB
-rw-r--r--
2025-09-15 02:27
user-transactions.html
31.83
KB
-rw-r--r--
2025-09-15 22:58
user-withdraw.html
29.48
KB
-rw-r--r--
2025-09-15 21:52
user-withdrawals.html
29.17
KB
-rw-r--r--
2025-09-15 21:51
waiting-approval.html
5.46
KB
-rw-r--r--
2025-09-15 03:23
Save
Rename
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>FastEarnAds - Professional PTC Demo</title> <script src="https://cdn.tailwindcss.com"></script> <script defer src="https://unpkg.com/alpinejs@3.x.x/dist/cdn.min.js"></script> <style> [x-cloak] { display: none !important; } .card-hover { transition: all 0.3s ease; } .card-hover:hover { transform: translateY(-2px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); } .gradient-primary { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); } </style> </head> <body class="bg-gray-50 font-sans antialiased" x-data="appData()" x-init="init()"> <!-- Header --> <header class="sticky top-0 z-40 bg-white/95 backdrop-blur border-b border-gray-200"> <div class="max-w-6xl mx-auto px-4 py-4"> <div class="flex items-center justify-between"> <div class="flex items-center space-x-2"> <div class="w-8 h-8 bg-gradient-to-r from-indigo-600 to-purple-600 rounded-lg flex items-center justify-center"> <svg class="w-5 h-5 text-white" fill="currentColor" viewBox="0 0 20 20"> <path d="M4 4a2 2 0 00-2 2v1h16V6a2 2 0 00-2-2H4z"></path> </svg> </div> <span class="font-bold text-xl text-gray-900">FastEarnAds</span> </div> <div class="flex items-center space-x-3"> <div class="bg-gradient-to-r from-green-500 to-emerald-600 rounded-full px-4 py-2 text-white font-semibold text-sm"> <span x-text="formatCurrency(userData.balance)">$2.45</span> </div> <img class="w-8 h-8 rounded-full" src="https://ui-avatars.com/api/?name=John+Doe&background=6366f1&color=fff" alt="Profile"> </div> </div> </div> </header> <!-- Main Content --> <main class="pb-20 min-h-screen"> <!-- Dashboard --> <section x-show="currentPage === 'dashboard'" class="container mx-auto px-4 py-6 max-w-6xl"> <!-- Hero --> <div class="mb-8"> <div class="gradient-primary rounded-2xl p-6 text-white relative overflow-hidden"> <div class="relative z-10"> <h1 class="text-2xl font-bold mb-2">Welcome back, John!</h1> <p class="text-indigo-100 mb-4">Ready to earn some money today?</p> <div class="grid grid-cols-2 gap-4"> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-2xl font-bold" x-text="formatCurrency(userData.balance)">$2.45</div> <div class="text-sm text-indigo-100">Current Balance</div> </div> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-2xl font-bold" x-text="formatCurrency(userData.todayEarnings)">$0.35</div> <div class="text-sm text-indigo-100">Today's Earnings</div> </div> </div> </div> </div> </div> <!-- Stats Grid --> <div class="grid grid-cols-2 lg:grid-cols-4 gap-4 mb-8"> <div class="bg-white rounded-xl p-6 shadow-sm border card-hover"> <p class="text-sm font-medium text-gray-600 mb-1">Ads Watched</p> <p class="text-2xl font-bold text-gray-900" x-text="userData.adsWatched">7</p> <p class="text-xs text-gray-500">Today</p> </div> <div class="bg-white rounded-xl p-6 shadow-sm border card-hover"> <p class="text-sm font-medium text-gray-600 mb-1">Referrals</p> <p class="text-2xl font-bold text-gray-900" x-text="userData.totalReferrals">3</p> <p class="text-xs text-gray-500">Friends</p> </div> <div class="bg-white rounded-xl p-6 shadow-sm border card-hover"> <p class="text-sm font-medium text-gray-600 mb-1">Total Earned</p> <p class="text-2xl font-bold text-gray-900" x-text="formatCurrency(userData.totalEarnings)">$15.80</p> <p class="text-xs text-gray-500">All time</p> </div> <div class="bg-white rounded-xl p-6 shadow-sm border card-hover"> <p class="text-sm font-medium text-gray-600 mb-1">Available</p> <p class="text-2xl font-bold text-gray-900" x-text="userData.adsRemaining">3</p> <p class="text-xs text-gray-500">Ads left</p> </div> </div> <!-- Quick Actions --> <div class="grid grid-cols-1 md:grid-cols-2 gap-6"> <div class="bg-white rounded-2xl p-6 shadow-sm border card-hover"> <h3 class="text-lg font-semibold text-gray-900 mb-2">🎬 Watch Ads</h3> <p class="text-gray-600 mb-4">Watch short video ads and earn $0.05 - $0.15 per ad</p> <button @click="navigateTo('ads')" class="w-full bg-gradient-to-r from-blue-600 to-blue-700 text-white rounded-xl py-3 font-medium hover:from-blue-700 hover:to-blue-800 transition-all"> Start Watching </button> </div> <div class="bg-white rounded-2xl p-6 shadow-sm border card-hover"> <h3 class="text-lg font-semibold text-gray-900 mb-2">👥 Invite Friends</h3> <p class="text-gray-600 mb-4">Earn 20% commission on your friends' earnings forever!</p> <button @click="navigateTo('refer')" class="w-full bg-gradient-to-r from-green-600 to-green-700 text-white rounded-xl py-3 font-medium hover:from-green-700 hover:to-green-800 transition-all"> Share Link </button> </div> </div> </section> <!-- Ads Section --> <section x-show="currentPage === 'ads'" class="container mx-auto px-4 py-6 max-w-4xl" style="display: none;"> <div class="mb-6"> <div class="bg-gradient-to-r from-blue-600 to-indigo-800 rounded-2xl p-6 text-white"> <h1 class="text-2xl font-bold mb-2">🎬 Watch Ads & Earn</h1> <p class="text-blue-100 mb-4">Watch short video ads and earn money instantly!</p> <div class="grid grid-cols-2 gap-4"> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-lg font-bold" x-text="userData.adsRemaining">3</div> <div class="text-sm text-blue-100">Ads Available</div> </div> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-lg font-bold">$0.30</div> <div class="text-sm text-blue-100">Potential Earnings</div> </div> </div> </div> </div> <!-- Available Ads --> <div class="space-y-4"> <template x-for="ad in availableAds" :key="ad.id"> <div class="bg-white rounded-2xl p-6 shadow-sm border card-hover"> <div class="flex items-center justify-between"> <div class="flex items-center space-x-4"> <div class="w-16 h-16 rounded-xl flex items-center justify-center" :class="ad.bgColor"> <span class="text-2xl">🎬</span> </div> <div> <h3 class="font-semibold text-gray-900 mb-1" x-text="ad.title"></h3> <p class="text-sm text-gray-600" x-text="ad.duration + ' seconds • ' + ad.category"></p> </div> </div> <div class="text-right"> <div class="text-2xl font-bold text-green-600 mb-2" x-text="formatCurrency(ad.reward)"></div> <button @click="watchAd(ad)" class="bg-gradient-to-r from-green-600 to-green-700 text-white px-6 py-2 rounded-xl font-medium hover:from-green-700 hover:to-green-800 transition-all"> Watch Now </button> </div> </div> </div> </template> </div> </section> <!-- Referral Section --> <section x-show="currentPage === 'refer'" class="container mx-auto px-4 py-6 max-w-4xl" style="display: none;"> <div class="mb-6"> <div class="bg-gradient-to-r from-green-600 to-teal-700 rounded-2xl p-6 text-white"> <h1 class="text-2xl font-bold mb-2">👥 Invite Friends & Earn</h1> <p class="text-green-100 mb-4">Earn 20% commission on your friends' earnings forever!</p> <div class="grid grid-cols-2 gap-4"> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-lg font-bold" x-text="userData.totalReferrals">3</div> <div class="text-sm text-green-100">Friends Referred</div> </div> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-lg font-bold" x-text="formatCurrency(userData.referralEarnings)">$0.85</div> <div class="text-sm text-green-100">Commission Earned</div> </div> </div> </div> </div> <!-- Referral Link --> <div class="bg-white rounded-2xl p-6 shadow-sm border mb-6"> <h2 class="text-xl font-semibold text-gray-900 mb-4">Your Referral Link</h2> <div class="bg-gray-50 rounded-xl p-4 mb-4"> <div class="flex"> <input type="text" value="https://fastearnads.com/signup?ref=JOHN123" readonly class="flex-1 bg-white border rounded-l-lg px-4 py-3 text-sm"> <button @click="copyReferralLink()" class="bg-green-600 hover:bg-green-700 text-white px-6 py-3 rounded-r-lg"> 📋 </button> </div> </div> <div class="grid grid-cols-2 gap-4"> <button @click="shareWhatsApp()" class="bg-green-500 hover:bg-green-600 text-white rounded-xl py-3 font-medium transition-all"> WhatsApp </button> <button @click="shareFacebook()" class="bg-blue-600 hover:bg-blue-700 text-white rounded-xl py-3 font-medium transition-all"> Facebook </button> </div> </div> </section> <!-- Wallet Section --> <section x-show="currentPage === 'wallet'" class="container mx-auto px-4 py-6 max-w-4xl" style="display: none;"> <div class="mb-6"> <div class="bg-gradient-to-r from-purple-600 to-indigo-700 rounded-2xl p-6 text-white"> <h1 class="text-2xl font-bold mb-2">💳 My Wallet</h1> <p class="text-purple-100 mb-4">Manage your earnings and withdrawals</p> <div class="grid grid-cols-2 gap-4"> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-2xl font-bold" x-text="formatCurrency(userData.balance)">$2.45</div> <div class="text-sm text-purple-100">Available Balance</div> </div> <div class="bg-white bg-opacity-20 rounded-xl p-4"> <div class="text-2xl font-bold" x-text="formatCurrency(userData.totalEarnings)">$15.80</div> <div class="text-sm text-purple-100">Total Earned</div> </div> </div> </div> </div> <!-- Quick Actions --> <div class="grid grid-cols-1 md:grid-cols-2 gap-6 mb-6"> <div class="bg-white rounded-2xl p-6 shadow-sm border card-hover"> <div class="flex items-center space-x-4 mb-4"> <div class="w-12 h-12 bg-gradient-to-r from-green-500 to-green-600 rounded-xl flex items-center justify-center"> <span class="text-2xl">💸</span> </div> <div> <h3 class="text-lg font-semibold text-gray-900">Withdraw</h3> <p class="text-sm text-gray-600">Cash out your earnings</p> </div> </div> <p class="text-gray-600 mb-4">Minimum withdrawal: $2.30 (650 PKR)</p> <button @click="showWithdrawModal = true" :disabled="userData.balance < 2.30" :class="userData.balance < 2.30 ? 'bg-gray-300 cursor-not-allowed' : 'bg-gradient-to-r from-green-600 to-green-700 hover:from-green-700 hover:to-green-800'" class="w-full text-white rounded-xl py-3 font-medium transition-all"> <span x-show="userData.balance >= 2.30">Withdraw Now</span> <span x-show="userData.balance < 2.30">Need $<span x-text="(2.30 - userData.balance).toFixed(2)"></span> more</span> </button> </div> <div class="bg-white rounded-2xl p-6 shadow-sm border card-hover"> <div class="flex items-center space-x-4 mb-4"> <div class="w-12 h-12 bg-gradient-to-r from-blue-500 to-blue-600 rounded-xl flex items-center justify-center"> <span class="text-2xl">📈</span> </div> <div> <h3 class="text-lg font-semibold text-gray-900">Purchase Plan</h3> <p class="text-sm text-gray-600">Boost your earnings</p> </div> </div> <p class="text-gray-600 mb-4">Premium Plan: $2.30 (650 PKR)<br><span class="text-sm text-green-600">+50% earnings bonus!</span></p> <button @click="showPlanModal = true" class="w-full bg-gradient-to-r from-blue-600 to-blue-700 text-white rounded-xl py-3 font-medium hover:from-blue-700 hover:to-blue-800 transition-all"> Purchase Plan </button> </div> </div> <!-- Transaction History --> <div class="bg-white rounded-2xl p-6 shadow-sm border"> <h2 class="text-xl font-semibold text-gray-900 mb-4">Recent Transactions</h2> <div class="space-y-4" x-data="{ transactions: [] }" x-init="transactions = [ { type: 'credit', amount: 0.05, description: 'Ad Watch Reward', time: '2 minutes ago', icon: '🎬' }, { type: 'credit', amount: 0.02, description: 'Referral Commission', time: '1 hour ago', icon: '👥' }, { type: 'debit', amount: 5.00, description: 'Withdrawal to JazzCash', time: 'Yesterday', icon: '💳' }, { type: 'credit', amount: 2.30, description: 'Premium Plan Purchase', time: '2 days ago', icon: '📈' } ]"> <template x-for="transaction in transactions" :key="transaction.time"> <div class="flex items-center justify-between p-4 bg-gray-50 rounded-xl hover:bg-gray-100 transition-colors"> <div class="flex items-center space-x-3"> <div class="w-10 h-10 bg-white rounded-full flex items-center justify-center shadow-sm" x-text="transaction.icon"></div> <div> <p class="font-medium text-gray-900" x-text="transaction.description"></p> <p class="text-sm text-gray-500" x-text="transaction.time"></p> </div> </div> <div class="text-right"> <p class="font-semibold" :class="transaction.type === 'credit' ? 'text-green-600' : 'text-red-600'" x-text="(transaction.type === 'credit' ? '+' : '-') + formatCurrency(transaction.amount)"></p> </div> </div> </template> </div> </div> </section> <!-- Profile Section --> <section x-show="currentPage === 'profile'" class="container mx-auto px-4 py-6 max-w-4xl" style="display: none;"> <div class="mb-6"> <div class="bg-gradient-to-r from-indigo-600 to-purple-700 rounded-2xl p-6 text-white"> <div class="flex items-center space-x-4"> <img class="w-16 h-16 rounded-full border-4 border-white" src="https://ui-avatars.com/api/?name=John+Doe&background=fff&color=6366f1&size=128" alt="Profile"> <div> <h1 class="text-2xl font-bold mb-1">John Doe</h1> <p class="text-indigo-100">Member since March 2024</p> <div class="flex items-center mt-2"> <span class="bg-green-500 text-white text-xs px-2 py-1 rounded-full">✓ Verified</span> </div> </div> </div> </div> </div> <!-- Account Details --> <div class="bg-white rounded-2xl p-6 shadow-sm border mb-6"> <h2 class="text-xl font-semibold text-gray-900 mb-4 flex items-center"> <svg class="w-6 h-6 mr-2 text-indigo-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z"></path> </svg> Account Details </h2> <div class="space-y-4"> <div class="grid grid-cols-1 md:grid-cols-2 gap-4"> <div> <label class="block text-sm font-medium text-gray-700 mb-1">Full Name</label> <input type="text" value="John Doe" class="w-full bg-gray-50 border border-gray-300 rounded-lg px-4 py-3 text-sm" readonly> </div> <div> <label class="block text-sm font-medium text-gray-700 mb-1">Username</label> <input type="text" value="john_doe123" class="w-full bg-gray-50 border border-gray-300 rounded-lg px-4 py-3 text-sm" readonly> </div> </div> <div class="grid grid-cols-1 md:grid-cols-2 gap-4"> <div> <label class="block text-sm font-medium text-gray-700 mb-1">Email Address</label> <input type="email" value="john.doe@example.com" class="w-full bg-gray-50 border border-gray-300 rounded-lg px-4 py-3 text-sm" readonly> </div> <div> <label class="block text-sm font-medium text-gray-700 mb-1">Phone Number</label> <input type="tel" value="+92 300 1234567" class="w-full bg-gray-50 border border-gray-300 rounded-lg px-4 py-3 text-sm" readonly> </div> </div> <div> <label class="block text-sm font-medium text-gray-700 mb-1">Referral Code</label> <div class="flex"> <input type="text" value="JOHN123" class="flex-1 bg-gray-50 border border-gray-300 rounded-l-lg px-4 py-3 text-sm" readonly> <button @click="copyReferralCode()" class="bg-indigo-600 hover:bg-indigo-700 text-white px-4 py-3 rounded-r-lg transition-colors"> 📋 </button> </div> </div> </div> </div> <!-- Payment Details --> <div class="bg-white rounded-2xl p-6 shadow-sm border mb-6"> <h2 class="text-xl font-semibold text-gray-900 mb-4 flex items-center"> <svg class="w-6 h-6 mr-2 text-green-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z"></path> </svg> Payment Methods </h2> <div class="space-y-4"> <div class="p-4 border border-gray-200 rounded-lg"> <div class="flex items-center justify-between"> <div class="flex items-center space-x-3"> <div class="w-10 h-10 bg-orange-100 rounded-full flex items-center justify-center"> <span class="text-orange-600 font-bold">J</span> </div> <div> <p class="font-medium text-gray-900">JazzCash</p> <p class="text-sm text-gray-500">03XX-XXXXXXX</p> </div> </div> <span class="bg-green-100 text-green-800 text-xs px-2 py-1 rounded-full">Primary</span> </div> </div> <div class="p-4 border border-gray-200 rounded-lg"> <div class="flex items-center justify-between"> <div class="flex items-center space-x-3"> <div class="w-10 h-10 bg-blue-100 rounded-full flex items-center justify-center"> <span class="text-blue-600 font-bold">E</span> </div> <div> <p class="font-medium text-gray-900">EasyPaisa</p> <p class="text-sm text-gray-500">03XX-XXXXXXX</p> </div> </div> <button class="text-indigo-600 hover:text-indigo-700 text-sm font-medium">Edit</button> </div> </div> </div> <button class="w-full mt-4 bg-gray-100 hover:bg-gray-200 text-gray-700 rounded-lg py-3 font-medium transition-colors"> + Add Payment Method </button> </div> <!-- Account Stats --> <div class="bg-white rounded-2xl p-6 shadow-sm border"> <h2 class="text-xl font-semibold text-gray-900 mb-4">Account Statistics</h2> <div class="grid grid-cols-2 md:grid-cols-4 gap-4"> <div class="text-center p-4 bg-blue-50 rounded-lg"> <div class="text-2xl font-bold text-blue-600" x-text="userData.adsWatched + 145">152</div> <div class="text-sm text-gray-600">Total Ads Watched</div> </div> <div class="text-center p-4 bg-green-50 rounded-lg"> <div class="text-2xl font-bold text-green-600">23</div> <div class="text-sm text-gray-600">Days Active</div> </div> <div class="text-center p-4 bg-purple-50 rounded-lg"> <div class="text-2xl font-bold text-purple-600" x-text="userData.totalReferrals">3</div> <div class="text-sm text-gray-600">Referrals</div> </div> <div class="text-center p-4 bg-yellow-50 rounded-lg"> <div class="text-2xl font-bold text-yellow-600">2</div> <div class="text-sm text-gray-600">Withdrawals</div> </div> </div> </div> </section> </main> <!-- Bottom Navigation --> <nav class="fixed bottom-0 left-0 right-0 bg-white border-t border-gray-200 z-40"> <div class="flex justify-around items-center py-2 max-w-md mx-auto"> <button @click="navigateTo('dashboard')" class="flex flex-col items-center p-2 min-w-0 flex-1" :class="currentPage === 'dashboard' ? 'text-indigo-600' : 'text-gray-600'"> <svg class="w-6 h-6 mb-1" fill="currentColor" viewBox="0 0 20 20"> <path d="M10.707 2.293a1 1 0 00-1.414 0l-7 7a1 1 0 001.414 1.414L4 10.414V17a1 1 0 001 1h2a1 1 0 001-1v-2a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 001 1h2a1 1 0 001-1v-6.586l.293.293a1 1 0 001.414-1.414l-7-7z"></path> </svg> <span class="text-xs font-medium">Home</span> </button> <button @click="navigateTo('ads')" class="flex flex-col items-center p-2 min-w-0 flex-1" :class="currentPage === 'ads' ? 'text-indigo-600' : 'text-gray-600'"> <svg class="w-6 h-6 mb-1" fill="currentColor" viewBox="0 0 20 20"> <path d="M2 6a2 2 0 012-2h6a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V6zM14.553 7.106A1 1 0 0014 8v4a1 1 0 00.553.894l2 1A1 1 0 0018 13V7a1 1 0 00-1.447-.894l-2 1z"></path> </svg> <span class="text-xs font-medium">Watch</span> </button> <button @click="navigateTo('refer')" class="flex flex-col items-center p-2 min-w-0 flex-1" :class="currentPage === 'refer' ? 'text-indigo-600' : 'text-gray-600'"> <svg class="w-6 h-6 mb-1" fill="currentColor" viewBox="0 0 20 20"> <path d="M13 6a3 3 0 11-6 0 3 3 0 016 0zM18 8a2 2 0 11-4 0 2 2 0 014 0zM14 15a4 4 0 00-8 0v3h8v-3z"></path> </svg> <span class="text-xs font-medium">Refer</span> </button> <button @click="navigateTo('wallet')" class="flex flex-col items-center p-2 min-w-0 flex-1" :class="currentPage === 'wallet' ? 'text-indigo-600' : 'text-gray-600'"> <svg class="w-6 h-6 mb-1" fill="currentColor" viewBox="0 0 20 20"> <path d="M4 4a2 2 0 00-2 2v1h16V6a2 2 0 00-2-2H4zM18 9H2v5a2 2 0 002 2h12a2 2 0 002-2V9z"></path> </svg> <span class="text-xs font-medium">Wallet</span> </button> <button @click="navigateTo('profile')" class="flex flex-col items-center p-2 min-w-0 flex-1" :class="currentPage === 'profile' ? 'text-indigo-600' : 'text-gray-600'"> <svg class="w-6 h-6 mb-1" fill="currentColor" viewBox="0 0 20 20"> <path d="M10 9a3 3 0 100-6 3 3 0 000 6zm-7 9a7 7 0 1114 0H3z"></path> </svg> <span class="text-xs font-medium">Profile</span> </button> </div> </nav> <!-- Ad Player Modal --> <div x-show="showAdModal" x-transition class="fixed inset-0 bg-black bg-opacity-75 z-50 flex items-center justify-center p-4" style="display: none;"> <div class="bg-white rounded-2xl max-w-md w-full overflow-hidden"> <div class="p-6 border-b"> <h3 class="text-xl font-semibold" x-text="currentAd.title">Watching Ad...</h3> <p class="text-sm text-gray-600">Please watch the complete ad to earn your reward</p> </div> <div class="relative"> <div class="aspect-video bg-black flex items-center justify-center text-white"> <div class="text-center"> <div class="text-6xl mb-4">🎬</div> <p class="text-lg font-medium">Ad Playing...</p> </div> </div> <div class="absolute top-4 right-4 bg-black bg-opacity-75 text-white px-3 py-1 rounded-full text-sm font-medium"> <span x-text="formatTime(timeLeft)">00:30</span> </div> </div> <div class="p-6"> <div class="text-center mb-4"> <div class="text-3xl font-bold text-green-600 mb-2" x-text="formatCurrency(currentAd.reward)">$0.05</div> <p class="text-sm text-gray-600" x-text="adMessage">Please wait for the ad to complete...</p> </div> <button @click="closeAd()" :disabled="timeLeft > 0" :class="timeLeft > 0 ? 'bg-gray-300 cursor-not-allowed' : 'bg-gradient-to-r from-green-600 to-green-700 hover:from-green-700 hover:to-green-800'" class="w-full text-white rounded-xl py-3 font-medium transition-all"> <span x-show="timeLeft > 0">Wait <span x-text="timeLeft"></span>s...</span> <span x-show="timeLeft <= 0">Collect Reward! 🎉</span> </button> </div> </div> </div> <!-- Withdraw Modal --> <div x-show="showWithdrawModal" x-transition class="fixed inset-0 bg-black bg-opacity-75 z-50 flex items-center justify-center p-4" style="display: none;"> <div class="bg-white rounded-2xl max-w-md w-full overflow-hidden"> <div class="p-6 border-b"> <div class="flex items-center justify-between"> <h3 class="text-xl font-semibold">Withdraw Funds</h3> <button @click="showWithdrawModal = false" class="text-gray-400 hover:text-gray-600"> <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path> </svg> </button> </div> </div> <div class="p-6"> <div class="mb-4"> <label class="block text-sm font-medium text-gray-700 mb-2">Withdrawal Amount</label> <div class="relative"> <span class="absolute left-3 top-3 text-gray-500">$</span> <input type="number" x-model="withdrawAmount" min="2.30" :max="userData.balance" step="0.01" class="w-full pl-8 pr-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-green-500 focus:border-transparent"> </div> <p class="text-xs text-gray-500 mt-1">Minimum: $2.30 (650 PKR) | Available: <span x-text="formatCurrency(userData.balance)"></span></p> </div> <div class="mb-4"> <label class="block text-sm font-medium text-gray-700 mb-2">Payment Method</label> <div class="space-y-2"> <label class="flex items-center p-3 border rounded-lg cursor-pointer hover:bg-gray-50"> <input type="radio" name="payment_method" value="jazzcash" class="mr-3" checked> <div class="flex items-center space-x-3"> <div class="w-8 h-8 bg-orange-100 rounded-full flex items-center justify-center"> <span class="text-orange-600 font-bold text-sm">J</span> </div> <div> <p class="font-medium">JazzCash</p> <p class="text-sm text-gray-500">03XX-XXXXXXX</p> </div> </div> </label> <label class="flex items-center p-3 border rounded-lg cursor-pointer hover:bg-gray-50"> <input type="radio" name="payment_method" value="easypaisa" class="mr-3"> <div class="flex items-center space-x-3"> <div class="w-8 h-8 bg-blue-100 rounded-full flex items-center justify-center"> <span class="text-blue-600 font-bold text-sm">E</span> </div> <div> <p class="font-medium">EasyPaisa</p> <p class="text-sm text-gray-500">03XX-XXXXXXX</p> </div> </div> </label> </div> </div> <div class="bg-yellow-50 border border-yellow-200 rounded-lg p-3 mb-4"> <p class="text-sm text-yellow-800"> <strong>Note:</strong> Withdrawals are processed manually within 24 hours. Processing fee: $0.10 </p> </div> <div class="flex space-x-3"> <button @click="showWithdrawModal = false" class="flex-1 bg-gray-100 hover:bg-gray-200 text-gray-700 rounded-xl py-3 font-medium transition-all"> Cancel </button> <button @click="processWithdraw()" class="flex-1 bg-gradient-to-r from-green-600 to-green-700 text-white rounded-xl py-3 font-medium hover:from-green-700 hover:to-green-800 transition-all"> Request Withdrawal </button> </div> </div> </div> </div> <!-- Plan Purchase Modal --> <div x-show="showPlanModal" x-transition class="fixed inset-0 bg-black bg-opacity-75 z-50 flex items-center justify-center p-4" style="display: none;"> <div class="bg-white rounded-2xl max-w-md w-full overflow-hidden"> <div class="p-6 border-b"> <div class="flex items-center justify-between"> <h3 class="text-xl font-semibold">Premium Plan</h3> <button @click="showPlanModal = false" class="text-gray-400 hover:text-gray-600"> <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path> </svg> </button> </div> </div> <div class="p-6"> <div class="text-center mb-6"> <div class="w-16 h-16 bg-gradient-to-r from-blue-500 to-purple-600 rounded-full flex items-center justify-center mx-auto mb-4"> <span class="text-2xl">📈</span> </div> <h4 class="text-2xl font-bold text-gray-900 mb-2">$2.30</h4> <p class="text-gray-600">650 PKR - One time payment</p> </div> <div class="space-y-3 mb-6"> <div class="flex items-center"> <svg class="w-5 h-5 text-green-500 mr-3" fill="currentColor" viewBox="0 0 20 20"> <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> <span class="text-gray-700">+50% earnings bonus on all ads</span> </div> <div class="flex items-center"> <svg class="w-5 h-5 text-green-500 mr-3" fill="currentColor" viewBox="0 0 20 20"> <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> <span class="text-gray-700">Access to premium ads (higher rewards)</span> </div> <div class="flex items-center"> <svg class="w-5 h-5 text-green-500 mr-3" fill="currentColor" viewBox="0 0 20 20"> <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> <span class="text-gray-700">Priority customer support</span> </div> <div class="flex items-center"> <svg class="w-5 h-5 text-green-500 mr-3" fill="currentColor" viewBox="0 0 20 20"> <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> <span class="text-gray-700">30 days validity</span> </div> </div> <div class="bg-blue-50 border border-blue-200 rounded-lg p-3 mb-4"> <p class="text-sm text-blue-800"> <strong>Special Offer:</strong> First 100 users get lifetime plan for $2.30! </p> </div> <div class="flex space-x-3"> <button @click="showPlanModal = false" class="flex-1 bg-gray-100 hover:bg-gray-200 text-gray-700 rounded-xl py-3 font-medium transition-all"> Maybe Later </button> <button @click="purchasePlan()" class="flex-1 bg-gradient-to-r from-blue-600 to-blue-700 text-white rounded-xl py-3 font-medium hover:from-blue-700 hover:to-blue-800 transition-all"> Purchase Now </button> </div> </div> </div> </div> <!-- Notifications --> <div id="notifications" class="fixed top-4 right-4 z-50 space-y-2"></div> <script> function appData() { return { currentPage: 'dashboard', showAdModal: false, showWithdrawModal: false, showPlanModal: false, currentAd: {}, timeLeft: 0, adMessage: 'Please wait for the ad to complete...', timer: null, userData: { balance: 2.45, todayEarnings: 0.35, totalEarnings: 15.80, adsWatched: 7, adsRemaining: 3, totalReferrals: 3, referralEarnings: 0.85 }, withdrawAmount: 2.30, availableAds: [ { id: 1, title: 'Product Demo Video', duration: 30, reward: 0.05, category: 'Technology', bgColor: 'bg-gradient-to-br from-blue-500 to-blue-600' }, { id: 2, title: 'Fashion Brand Commercial', duration: 45, reward: 0.08, category: 'Fashion', bgColor: 'bg-gradient-to-br from-purple-500 to-purple-600' }, { id: 3, title: 'Gaming App Trailer', duration: 60, reward: 0.12, category: 'Gaming', bgColor: 'bg-gradient-to-br from-red-500 to-red-600' } ], init() { // Initialize app }, navigateTo(page) { this.currentPage = page; }, watchAd(ad) { this.currentAd = ad; this.timeLeft = ad.duration; this.showAdModal = true; this.adMessage = 'Please wait for the ad to complete...'; this.timer = setInterval(() => { this.timeLeft--; if (this.timeLeft <= 0) { this.completeAd(); } }, 1000); }, completeAd() { clearInterval(this.timer); this.adMessage = 'Congratulations! Reward earned successfully! 🎉'; this.userData.balance += this.currentAd.reward; this.userData.todayEarnings += this.currentAd.reward; this.userData.adsWatched++; this.userData.adsRemaining--; this.showNotification(`🎉 Earned ${this.formatCurrency(this.currentAd.reward)}!`); }, closeAd() { if (this.timeLeft <= 0) { this.showAdModal = false; clearInterval(this.timer); } }, copyReferralLink() { const link = 'https://fastearnads.com/signup?ref=JOHN123'; navigator.clipboard.writeText(link).then(() => { this.showNotification('📋 Referral link copied!'); }); }, shareWhatsApp() { const text = '🎉 Join FastEarnAds and start earning money by watching ads!'; window.open(`https://wa.me/?text=${encodeURIComponent(text)}`); }, shareFacebook() { window.open('https://www.facebook.com/sharer/sharer.php?u=https://fastearnads.com'); }, copyReferralCode() { const code = 'JOHN123'; navigator.clipboard.writeText(code).then(() => { this.showNotification('📋 Referral code copied!'); }); }, processWithdraw() { if (this.withdrawAmount >= 2.30 && this.withdrawAmount <= this.userData.balance) { this.showWithdrawModal = false; this.showNotification('💸 Withdrawal request submitted! Processing within 24 hours.'); // In real app, this would make an API call } else { this.showNotification('Invalid withdrawal amount!', 'error'); } }, purchasePlan() { this.showPlanModal = false; this.showNotification('🎉 Premium plan activated! Enjoy 50% bonus earnings!'); // In real app, this would integrate with payment gateway }, formatCurrency(amount) { return new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD', minimumFractionDigits: 2 }).format(amount); }, formatTime(seconds) { const mins = Math.floor(seconds / 60); const secs = seconds % 60; return `${mins.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`; }, showNotification(message, type = 'success') { const notification = document.createElement('div'); const bgColor = type === 'success' ? 'bg-green-50 text-green-800 border-green-200' : 'bg-red-50 text-red-800 border-red-200'; notification.className = `${bgColor} border p-4 rounded-lg shadow-lg transform translate-x-full transition-transform duration-300`; notification.innerHTML = `<div class="flex items-center"><div class="flex-1">${message}</div></div>`; document.getElementById('notifications').appendChild(notification); setTimeout(() => notification.classList.remove('translate-x-full'), 100); setTimeout(() => { notification.classList.add('translate-x-full'); setTimeout(() => notification.remove(), 300); }, 3000); } } } </script> </body> </html>