GIVEAWAY CONTROL STUDIO — V4 PACKAGE
====================================

এই ZIP-এ আগের V3 project-এর সব source file রাখা হয়েছে এবং V4 database upgrade ও mobile bottom navigation যোগ করা হয়েছে। এটি বিদ্যমান V3 installation-এর উপর incremental upgrade।

ফাইলসমূহ
--------
- install.php: প্রথমবার installation; config.php তৈরি করে।
- index.php: Telegram bot webhook ও poll/vote workflow (legacy V3 single-channel/admin workflow)।
- admin.php: website admin dashboard, poll management, winner/prize delivery।
- app_common.php: shared website layout, DB/session/CSRF helper; ছোট স্ক্রিনে bottom navigation।
- settings.php, wallet.php, ads.php, referral.php, analytics.php, winner.php: V3 control-center modules।
- upgrade_v3.php: পুরোনো V3 add-on database migration।
- upgrade_v4.php: নতুন channel registry, broadcast queue, dynamic ad campaign, user preferences ও referral event schema migration।

নতুন V4 schema
--------------
upgrade_v4.php চালালে user_channels, required_channels, broadcast_jobs, broadcast_targets, ad_campaigns, ad_step_events, user_preferences ও referral_reward_events টেবিল তৈরি হবে। বিদ্যমান users/polls/votes/deliveries ডাটা delete বা overwrite করা হয় না।

ইনস্টল / আপগ্রেড
----------------
নতুন ইনস্টল:
1. Hosting-এ PHP 8.1+ (প্রস্তাবিত 8.2+), MySQL/MariaDB, PDO MySQL, cURL চালু রাখুন।
2. ZIP extract করে public web directory-তে upload করুন।
3. HTTPS domain-এ install.php খুলে DB credentials, Telegram Bot Token, Admin Telegram ID, default channel এবং admin password দিন।
4. config.php তৈরি হলে install.php সরিয়ে রাখুন/নাম পরিবর্তন করুন। config.php কখনো public-এ শেয়ার করবেন না।
5. admin.php-তে login করে webhook সেট করুন। index.php-কে Telegram webhook হিসেবে ব্যবহার করুন।

V3 থেকে V4:
1. সম্পূর্ণ ফাইল ও database backup নিন।
2. ZIP-এর ফাইল upload/replace করুন; config.php কখনো replace করবেন না।
3. admin.php-তে login করুন।
4. /upgrade_v3.php আগে চালান যদি V3 add-on tables এখনো তৈরি না হয়ে থাকে।
5. এরপর /upgrade_v4.php একবার চালান। সফল হলে migration PHP ফাইল দুটি web root থেকে delete/rename করুন।
6. webhook ও cron পুনরায় পরীক্ষা করুন।

গুরুত্বপূর্ণ বাস্তব সীমাবদ্ধতা
----------------------------
এই প্যাকেজটি V3 single-admin/single-configured-channel application-এর উপর V4 schema/layout upgrade; এটি সম্পূর্ণ multi-tenant SaaS release নয়। নিচের বিষয়গুলো database structure বা UI-ready schema পর্যায়ে আছে, কিন্তু এই ZIP-এ end-to-end production workflow হিসেবে সম্পূর্ণভাবে wired/verified নয়:
- সাধারণ Telegram user-এর নিজস্ব channel-এ poll wizard থেকে publish এবং owner-only poll management।
- Bot getChatMember দিয়ে user channel admin permission যাচাই করে channel mapping সংরক্ষণ।
- Admin bot command থেকে media/text broadcast queue তৈরি, cron worker দিয়ে সব user ও unique user-owned channel-এ copyMessage পাঠানো।
- Unlimited ad_campaigns থেকে ধারাবাহিক ad-step completion এবং atomic wallet reward settlement।
- Multiple required-channel membership gate, self-service referral attribution/reward, secure one-time prize claim deep-link redemption।

V4 migration-এর broadcast queue ও channel tables তৈরি হওয়া মানে broadcast বা multi-channel poll flow স্বয়ংক্রিয়ভাবে চালু হয়েছে—এমন নয়। পুরোনো index.php এখনো config.php-এর একক channel এবং admin-only poll creation ব্যবহার করে। তাই এই ZIP-কে সম্পূর্ণভাবে আপনার চাওয়া multi-user system বলে production-এ deploy করবেন না।

বিজ্ঞাপন নোট
------------
কোনো countdown/timer প্রকৃত ad impression বা বিজ্ঞাপন দেখা প্রমাণ করে না। কেবল incentivized traffic অনুমোদন করে এমন ad provider ব্যবহার করুন। iframe embedding provider-এর CSP/X-Frame-Options-এ নিষিদ্ধ থাকলে তা bypass করার চেষ্টা করবেন না।

বিজয়ীকে Telegram-এ private message পাঠাতে হলে তাকে আগে bot Start করতে হবে। Bot আগে Start না করা user-কে Telegram Bot API সরাসরি DM করতে পারে না।

নিরাপত্তা
---------
- config.php ও database backup private রাখুন।
- HTTPS ব্যবহার করুন।
- migration চালানোর পর upgrade_v*.php delete/rename করুন।
- webhook secret, bot token বা admin password কাউকে দেবেন না।
- Production deployment-এর আগে test bot ও test database-এ পরীক্ষা করুন।

পরীক্ষা
------
এই ZIP তৈরির সময় PHP syntax validation এবং archive integrity validation করা হয়েছে। এখানে live Telegram token, hosting MySQL, cron, ad provider বা production webhook দিয়ে end-to-end test করা হয়নি।
