CryptoMiner - Cloud Mining Platform

Main Features:
- Faucet-based cloud mining system, single-currency support (only one currency can be active at a time)
- Registration and login with FaucetPay Gmail address (FaucetPay API validation)
- User dashboard: balance, active GHZ, referral system, payout history, collectable rewards
- Faucet claim system: timed GHZ mining, custom captcha, adblock/popup detection
- Withdrawals to FaucetPay via API (automatic)
- Referral system: 10% reward after referred users' withdrawals
- Admin panel: settings, user management, ban/unban, manual ad sending, duplicate IPs, currency selection
- Separate banned users management (unban possible from admin)
- Rate limiting: login and faucet claim limits per IP/user
- Statistics: registered users, total withdrawn, last 10 payouts
- Responsive, modern UI (Bootstrap 3, Orbitron font)
- Security: CSRF token, session fixation protection, input validation, admin password hash

Currency and FaucetPay API System:
- Only one currency is supported at a time (configurable in admin panel)
- Two FaucetPay API keys can be set
- Withdrawals use API key #1 by default; if balance is insufficient, the system automatically switches to API key #2 for payouts

User Pages:
- / (home): statistics, last payouts, login/registration
- /dashboard: balance, GHZ, referral, payout history, collect function
- /faucet: faucet claim, captcha, cooldown, adblock/popup protection
- /logout: logout

Admin Pages:
- /admin: dashboard
- /admin/login: admin login
- /admin/user-list: user list, search, delete, ban/unban
- /admin/banned-users: banned users list, unban option
- /admin/faucet-settings: faucet settings (GHZ, duration, cooldown, banners)
- /admin/general-settings: general settings (site title, mining rate, API keys, rate limit)
- /admin/currency-settings: select supported currency (only one active)
- /admin/manual-reklam: manual FaucetPay ad sending
- /admin/duplicate-ip-users: users with duplicate IPs
- /admin/password: admin password change

Main Database Tables:
- users: users, balance, GHZ, referral, ban, etc.
- faucet_claims: active faucet mining periods
- payout_history: payout history
- referral_earnings: referral rewards
- settings: system settings

Security Features:
- CSRF token for all important POST actions
- Session fixation protection (session_regenerate_id)
- Rate limiting for login and faucet claim
- Admin password stored as hash
- Banned users cannot log in or withdraw

Technical Requirements:
- PHP 7.4+ (not tested on PHP 8.x)
- MySQL/MariaDB
- Apache (recommended, .htaccess rewrite support)
- Internet access for FaucetPay API

Installation:
1. Import database.sql into your database.
2. Configure config/database.php.
3. Set up .htaccess (public or root folder).
4. Set the admin password (default: admin / 123456).
5. Set FaucetPay API keys in the admin panel.

