feat: Add complete Docker deployment with web-based setup wizard
Major additions: - Web-based setup wizard (setup.php, setup_wizard.php, setup-wizard.js) - Production Docker configuration (docker-compose.prod.yml, .env.production) - Database initialization SQL files (deploy/init_settings.sql) - Template builder system with drag-and-drop UI - Advanced features (OAuth, CDN, enhanced analytics, monetization) - Comprehensive documentation (deployment guides, quick start, feature docs) - Design system with accessibility and responsive layout - Deployment automation scripts (deploy.ps1, generate-secrets.ps1) Setup wizard allows customization of: - Platform name and branding - Domain configuration - Membership tiers and pricing - Admin credentials - Feature toggles Database includes 270+ tables for complete video streaming platform with advanced features for analytics, moderation, template building, and monetization. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -18,7 +18,7 @@ defined('_ISVALID') or header('Location: /error');
|
||||
class VPayment extends VSignup
|
||||
{
|
||||
/* check for expired subscription */
|
||||
public function checkSubscription($user_id)
|
||||
public static function checkSubscription($user_id)
|
||||
{
|
||||
global $class_database, $class_redirect, $cfg;
|
||||
|
||||
@@ -34,7 +34,7 @@ class VPayment extends VSignup
|
||||
}
|
||||
}
|
||||
/* get and assign membership types */
|
||||
public function getPackTypes($paid = '0')
|
||||
public static function getPackTypes($paid = '0')
|
||||
{
|
||||
global $db, $smarty;
|
||||
switch ($paid) {
|
||||
@@ -46,7 +46,7 @@ class VPayment extends VSignup
|
||||
$smarty->assign('memberships', $q->getrows());
|
||||
}
|
||||
/* check if membership db entry is active */
|
||||
public function checkActivePack($pack_id)
|
||||
public static function checkActivePack($pack_id)
|
||||
{
|
||||
global $class_database;
|
||||
$active = $class_database->singleFieldValue('db_packtypes', 'pk_active', 'pk_id', intval($pack_id));
|
||||
@@ -58,14 +58,14 @@ class VPayment extends VSignup
|
||||
|
||||
}
|
||||
/* get membership id */
|
||||
public function getPackID($user_id)
|
||||
public static function getPackID($user_id)
|
||||
{
|
||||
global $db;
|
||||
$q = $db->execute(sprintf("SELECT `pk_id` FROM `db_packusers` WHERE `usr_id`='%s' LIMIT 1;", intval($user_id)));
|
||||
return $q->fields['pk_id'];
|
||||
}
|
||||
/* get membership name */
|
||||
public function getUserPack($user = '')
|
||||
public static function getUserPack($user = '')
|
||||
{
|
||||
global $db, $smarty;
|
||||
switch ($user) {
|
||||
@@ -77,13 +77,13 @@ class VPayment extends VSignup
|
||||
return $q->fields['pk_name'];
|
||||
}
|
||||
/* update free account usage */
|
||||
public function updateFreeUsage($user_id)
|
||||
public static function updateFreeUsage($user_id)
|
||||
{
|
||||
global $db;
|
||||
$q = $db->execute(sprintf("UPDATE `db_accountuser` SET `usr_free_sub`='1', `usr_active`='1', `usr_status`='1' WHERE `usr_id`='%s' LIMIT 1;", intval($user_id)));
|
||||
}
|
||||
/* update free account membership after registration */
|
||||
public function updateFreeAccount($pk_id, $expire_time, $user_id)
|
||||
public static function updateFreeAccount($pk_id, $expire_time, $user_id)
|
||||
{
|
||||
global $db, $class_database;
|
||||
|
||||
@@ -99,7 +99,7 @@ class VPayment extends VSignup
|
||||
}
|
||||
}
|
||||
/* updating free membership registration */
|
||||
public function updateFreeEntry()
|
||||
public static function updateFreeEntry()
|
||||
{
|
||||
global $db, $class_database, $language, $cfg;
|
||||
$user_id = intval(base64_decode($_POST['usr_id']));
|
||||
@@ -126,7 +126,7 @@ class VPayment extends VSignup
|
||||
}
|
||||
}
|
||||
/* payment setup */
|
||||
public function preparePayment()
|
||||
public static function preparePayment()
|
||||
{
|
||||
global $db, $cfg, $class_smarty, $language, $smarty;
|
||||
|
||||
@@ -165,7 +165,7 @@ class VPayment extends VSignup
|
||||
die;
|
||||
}
|
||||
/* confirm before submitting payment */
|
||||
public function continuePayment()
|
||||
public static function continuePayment()
|
||||
{
|
||||
global $db, $smarty, $language, $cfg;
|
||||
$q = $db->execute(sprintf("SELECT * FROM `db_packtypes` WHERE `pk_id`='%s';", intval(base64_decode($_POST['pk_id']))));
|
||||
@@ -194,7 +194,7 @@ class VPayment extends VSignup
|
||||
$smarty->display('tpl_frontend/tpl_auth/tpl_payment_confirm.tpl');
|
||||
}
|
||||
/* process payment */
|
||||
public function doPayment($action)
|
||||
public static function doPayment($action)
|
||||
{
|
||||
global $db, $cfg, $language, $class_smarty, $smarty, $class_database;
|
||||
|
||||
@@ -362,7 +362,7 @@ class VPayment extends VSignup
|
||||
}
|
||||
}
|
||||
/* check discount code */
|
||||
public function discountCheck()
|
||||
public static function discountCheck()
|
||||
{
|
||||
global $class_filter, $db;
|
||||
|
||||
@@ -378,7 +378,7 @@ class VPayment extends VSignup
|
||||
}
|
||||
}
|
||||
/* text for membership durations */
|
||||
public function packWords($pk_period)
|
||||
public static function packWords($pk_period)
|
||||
{
|
||||
global $language, $smarty;
|
||||
|
||||
@@ -389,7 +389,7 @@ class VPayment extends VSignup
|
||||
return $words_array[$words_key[0]];
|
||||
}
|
||||
/* membership select list options */
|
||||
public function buildSelectOptions($pk_period)
|
||||
public static function buildSelectOptions($pk_period)
|
||||
{
|
||||
global $cfg, $smarty, $language;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user