![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/soundstudiopro.com/private_html/ |
<?php
session_start();
// Check if user is logged in and is admin
if (!isset($_SESSION['user_id']) || !isset($_SESSION['is_admin']) || !$_SESSION['is_admin']) {
header('Location: /auth/login.php');
exit;
}
require_once 'config/database.php';
$pdo = getDBConnection();
echo "<h1>🔍 Track Ownership Verification</h1>";
// Get all tracks with their owners
$stmt = $pdo->prepare("
SELECT
mt.id,
mt.title,
mt.status,
mt.created_at,
u.name as owner_name,
u.id as owner_id,
u.email as owner_email
FROM music_tracks mt
LEFT JOIN users u ON mt.user_id = u.id
ORDER BY mt.created_at DESC
LIMIT 50
");
$stmt->execute();
$tracks = $stmt->fetchAll();
echo "<h2>📊 Recent Tracks (Last 50):</h2>";
echo "<table border='1' style='border-collapse: collapse; width: 100%; font-family: Arial, sans-serif;'>";
echo "<tr style='background: #667eea; color: white;'>";
echo "<th>Track ID</th><th>Title</th><th>Status</th><th>Created</th><th>Owner</th><th>Owner ID</th><th>Owner Email</th>";
echo "</tr>";
foreach ($tracks as $track) {
$owner_name = $track['owner_name'] ? htmlspecialchars($track['owner_name']) : 'Orphaned';
$owner_id = $track['owner_id'] ? $track['owner_id'] : 'NULL';
$owner_email = $track['owner_email'] ? htmlspecialchars($track['owner_email']) : 'N/A';
$row_color = '';
if ($track['owner_id'] == $_SESSION['user_id']) {
$row_color = 'background: rgba(34, 197, 94, 0.1);'; // Green for current user
} elseif (!$track['owner_id']) {
$row_color = 'background: rgba(239, 68, 68, 0.1);'; // Red for orphaned
}
echo "<tr style='$row_color'>";
echo "<td>" . $track['id'] . "</td>";
echo "<td>" . htmlspecialchars($track['title']) . "</td>";
echo "<td>" . $track['status'] . "</td>";
echo "<td>" . $track['created_at'] . "</td>";
echo "<td>" . $owner_name . "</td>";
echo "<td>" . $owner_id . "</td>";
echo "<td>" . $owner_email . "</td>";
echo "</tr>";
}
echo "</table>";
// Get summary statistics
$stmt = $pdo->prepare("
SELECT
COUNT(*) as total_tracks,
COUNT(CASE WHEN user_id IS NULL OR user_id = 0 THEN 1 END) as orphaned_tracks,
COUNT(CASE WHEN user_id = ? THEN 1 END) as your_tracks
FROM music_tracks
");
$stmt->execute([$_SESSION['user_id']]);
$stats = $stmt->fetch();
echo "<h2>📈 Summary:</h2>";
echo "<p><strong>Total tracks in database:</strong> " . $stats['total_tracks'] . "</p>";
echo "<p><strong>Orphaned tracks:</strong> " . $stats['orphaned_tracks'] . "</p>";
echo "<p><strong>Your tracks:</strong> " . $stats['your_tracks'] . "</p>";
// Get user list
$stmt = $pdo->prepare("
SELECT
u.id,
u.name,
u.email,
u.is_admin,
COUNT(mt.id) as track_count
FROM users u
LEFT JOIN music_tracks mt ON u.id = mt.user_id
GROUP BY u.id, u.name, u.email, u.is_admin
ORDER BY track_count DESC
");
$stmt->execute();
$users = $stmt->fetchAll();
echo "<h2>👥 Users and Their Track Counts:</h2>";
echo "<table border='1' style='border-collapse: collapse; width: 100%; font-family: Arial, sans-serif;'>";
echo "<tr style='background: #667eea; color: white;'>";
echo "<th>User ID</th><th>Name</th><th>Email</th><th>Admin</th><th>Track Count</th>";
echo "</tr>";
foreach ($users as $user) {
$row_color = $user['id'] == $_SESSION['user_id'] ? 'background: rgba(34, 197, 94, 0.1);' : '';
echo "<tr style='$row_color'>";
echo "<td>" . $user['id'] . "</td>";
echo "<td>" . htmlspecialchars($user['name']) . "</td>";
echo "<td>" . htmlspecialchars($user['email']) . "</td>";
echo "<td>" . ($user['is_admin'] ? 'Yes' : 'No') . "</td>";
echo "<td>" . $user['track_count'] . "</td>";
echo "</tr>";
}
echo "</table>";
echo "<h2>🛠️ Actions:</h2>";
echo "<p><a href='/admin.php?tab=tracks' style='background: #667eea; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px;'>Admin Track Management</a></p>";
echo "<p><a href='/library.php' style='background: #22c55e; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px;'>View My Library</a></p>";
echo "<p><a href='/fix_track_display.php' style='background: #f59e0b; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px;'>Track Display Fix</a></p>";
?>