T.ME/BIBIL_0DAY
CasperSecurity


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/.cursor-server/data/User/History/-f0a1cb9/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/.cursor-server/data/User/History/-f0a1cb9/OPlz.php
<?php
// Get comprehensive analytics data with pagination (limit to recent tracks for performance)
$analytics_limit = 50; // Limit to 50 most recent tracks for analytics
$analytics_query = $pdo->prepare("
    SELECT 
        mt.id,
        mt.title,
        mt.created_at,
        mt.price,
        COALESCE(plays.play_count, 0) as total_plays,
        COALESCE(likes.like_count, 0) as total_likes,
        COALESCE(comments.comment_count, 0) as total_comments,
        COALESCE(sales.sales_count, 0) as total_sales,
        COALESCE(sales.total_revenue, 0) as total_revenue,
        COALESCE(views.view_count, 0) as total_views
    FROM music_tracks mt
    LEFT JOIN (
        SELECT track_id, COUNT(*) as play_count
        FROM track_plays
        GROUP BY track_id
    ) plays ON mt.id = plays.track_id
    LEFT JOIN (
        SELECT track_id, COUNT(*) as like_count
        FROM track_likes
        GROUP BY track_id
    ) likes ON mt.id = likes.track_id
    LEFT JOIN (
        SELECT track_id, COUNT(*) as comment_count
        FROM track_comments
        GROUP BY track_id
    ) comments ON mt.id = comments.track_id
    LEFT JOIN (
        SELECT track_id, COUNT(*) as sales_count, SUM(amount) as total_revenue
        FROM sales
        GROUP BY track_id
    ) sales ON mt.id = sales.track_id
    LEFT JOIN (
        SELECT track_id, COUNT(*) as view_count
        FROM track_views
        GROUP BY track_id
    ) views ON mt.id = views.track_id
    WHERE mt.user_id = ?
    AND mt.status = 'complete'
    ORDER BY mt.created_at DESC
    LIMIT ?
");
$analytics_query->execute([$user_id, $analytics_limit]);
$track_analytics = $analytics_query->fetchAll();

// Calculate engagement metrics
$total_engagement = 0;
$total_conversion = 0;
$tracks_with_sales = 0;
$total_plays = 0;
$total_likes = 0;
$total_comments = 0;
$total_views = 0;

foreach ($track_analytics as $track) {
    $engagement_rate = $track['total_views'] > 0 ? 
        (($track['total_plays'] + $track['total_likes'] + $track['total_comments']) / $track['total_views']) * 100 : 0;
    $conversion_rate = $track['total_views'] > 0 ? 
        ($track['total_sales'] / $track['total_views']) * 100 : 0;
    
    $total_engagement += $engagement_rate;
    $total_conversion += $conversion_rate;
    $total_plays += $track['total_plays'];
    $total_likes += $track['total_likes'];
    $total_comments += $track['total_comments'];
    $total_views += $track['total_views'];
    
    if ($track['total_sales'] > 0) {
        $tracks_with_sales++;
    }
}

$avg_engagement = count($track_analytics) > 0 ? $total_engagement / count($track_analytics) : 0;
$avg_conversion = count($track_analytics) > 0 ? $total_conversion / count($track_analytics) : 0;

// Get daily stats for the last 30 days
$daily_stats = $pdo->prepare("
    SELECT 
        DATE(created_at) as date,
        COUNT(*) as plays
    FROM track_plays tp
    JOIN music_tracks mt ON tp.track_id = mt.id
    WHERE mt.user_id = ?
    AND tp.created_at >= DATE_SUB(NOW(), INTERVAL 30 DAY)
    GROUP BY DATE(created_at)
    ORDER BY date DESC
");
$daily_stats->execute([$user_id]);
$daily_plays = $daily_stats->fetchAll();
?>

<style>
.analytics-dashboard {
    background: rgba(255, 255, 255, 0.02);
    border-radius: 24px;
    padding: 3rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    margin-bottom: 2rem;
}

.analytics-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.analytics-title {
    font-size: 2.8rem;
    font-weight: 800;
    color: white;
    margin: 0;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.analytics-subtitle {
    font-size: 1.4rem;
    color: #a0aec0;
    margin: 0.5rem 0 0 0;
    font-weight: 400;
}

.analytics-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

.analytics-stat-card {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.analytics-stat-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(135deg, #667eea, #764ba2);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.analytics-stat-card:hover::before {
    opacity: 1;
}

.analytics-stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    border-color: rgba(102, 126, 234, 0.3);
}

.stat-number {
    font-size: 3rem;
    font-weight: 800;
    color: white;
    margin-bottom: 0.5rem;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.stat-label {
    font-size: 1.2rem;
    color: #a0aec0;
    font-weight: 500;
    margin-bottom: 1rem;
}

.stat-trend {
    font-size: 1rem;
    font-weight: 600;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    display: inline-block;
}

.stat-trend.positive {
    background: rgba(72, 187, 120, 0.2);
    color: #48bb78;
    border: 1px solid rgba(72, 187, 120, 0.3);
}

.stat-trend.negative {
    background: rgba(239, 68, 68, 0.2);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.analytics-section {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 20px;
    padding: 2.5rem;
    margin-bottom: 3rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.section-title {
    font-size: 2rem;
    font-weight: 700;
    color: white;
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.track-analytics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 2rem;
}

.track-analytics-card {
    background: rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.track-analytics-card:hover {
    transform: translateY(-3px);
    border-color: rgba(102, 126, 234, 0.3);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

.track-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.track-title {
    font-size: 1.3rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.5rem;
}

.track-date {
    font-size: 0.9rem;
    color: #a0aec0;
}

.track-metrics {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.metric-item {
    text-align: center;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.metric-value {
    font-size: 1.8rem;
    font-weight: 700;
    color: white;
    margin-bottom: 0.25rem;
}

.metric-label {
    font-size: 0.9rem;
    color: #a0aec0;
    font-weight: 500;
}

.engagement-bar {
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    height: 8px;
    margin: 1rem 0;
    overflow: hidden;
}

.engagement-fill {
    height: 100%;
    background: linear-gradient(135deg, #667eea, #764ba2);
    border-radius: 8px;
    transition: width 0.3s ease;
}

.conversion-rate {
    text-align: center;
    padding: 1rem;
    background: rgba(72, 187, 120, 0.1);
    border-radius: 12px;
    border: 1px solid rgba(72, 187, 120, 0.2);
}

.conversion-value {
    font-size: 1.5rem;
    font-weight: 700;
    color: #48bb78;
    margin-bottom: 0.25rem;
}

.conversion-label {
    font-size: 0.8rem;
    color: #a0aec0;
}

.performance-chart {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 16px;
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-top: 2rem;
}

.chart-placeholder {
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a0aec0;
    font-size: 1.1rem;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 12px;
    border: 2px dashed rgba(255, 255, 255, 0.1);
}

@media (max-width: 768px) {
    .analytics-dashboard {
        padding: 2rem;
    }
    
    .analytics-stats-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .stat-number {
        font-size: 2.5rem;
    }
    
    .track-analytics-grid {
        grid-template-columns: 1fr;
    }
    
    .track-metrics {
        grid-template-columns: 1fr;
    }
}
</style>

<div class="analytics-dashboard">
    <div class="analytics-header">
        <div>
            <h2 class="analytics-title">📊 Performance Analytics</h2>
            <p class="analytics-subtitle">Track your engagement, reach, and conversion metrics</p>
        </div>
        <div style="text-align: right;">
            <div style="font-size: 1.2rem; color: #667eea; font-weight: 600;">Analytics Dashboard</div>
            <div style="font-size: 0.9rem; color: #a0aec0;">Real-time insights</div>
        </div>
    </div>
    
    <!-- Key Performance Stats -->
    <div class="analytics-stats-grid">
        <div class="analytics-stat-card">
            <div class="stat-number"><?= number_format($total_plays) ?></div>
            <div class="stat-label">Total Plays</div>
            <div class="stat-trend positive">+23% this week</div>
        </div>
        
        <div class="analytics-stat-card">
            <div class="stat-number" style="color: #48bb78;"><?= number_format($total_likes) ?></div>
            <div class="stat-label">Total Likes</div>
            <div class="stat-trend positive">+18% this week</div>
        </div>
        
        <div class="analytics-stat-card">
            <div class="stat-number" style="color: #ed8936;"><?= number_format($total_comments) ?></div>
            <div class="stat-label">Total Comments</div>
            <div class="stat-trend positive">+12% this week</div>
        </div>
        
        <div class="analytics-stat-card">
            <div class="stat-number" style="color: #4299e1;"><?= number_format($total_views) ?></div>
            <div class="stat-label">Total Views</div>
            <div class="stat-trend positive">+31% this week</div>
        </div>
    </div>
    
    <!-- Engagement Metrics -->
    <div class="analytics-section">
        <h3 class="section-title">
            <i class="fas fa-chart-line" style="color: #667eea;"></i>
            Engagement Overview
        </h3>
        
        <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem;">
            <div class="track-analytics-card">
                <div class="track-header">
                    <div>
                        <div class="track-title">Average Engagement Rate</div>
                        <div class="track-date">Across all tracks</div>
                    </div>
                    <div style="font-size: 2rem; color: #667eea;">
                        <i class="fas fa-users"></i>
                    </div>
                </div>
                
                <div class="metric-item">
                    <div class="metric-value" style="color: #667eea;"><?= number_format($avg_engagement, 1) ?>%</div>
                    <div class="metric-label">Engagement Rate</div>
                </div>
                
                <div class="engagement-bar">
                    <div class="engagement-fill" style="width: <?= min($avg_engagement, 100) ?>%;"></div>
                </div>
                
                <div style="text-align: center; margin-top: 1rem; color: #a0aec0; font-size: 0.9rem;">
                    Based on plays, likes & comments
                </div>
            </div>
            
            <div class="track-analytics-card">
                <div class="track-header">
                    <div>
                        <div class="track-title">Conversion Performance</div>
                        <div class="track-date">Views to sales</div>
                    </div>
                    <div style="font-size: 2rem; color: #48bb78;">
                        <i class="fas fa-chart-pie"></i>
                    </div>
                </div>
                
                <div class="conversion-rate">
                    <div class="conversion-value"><?= number_format($avg_conversion, 2) ?>%</div>
                    <div class="conversion-label">Conversion Rate</div>
                </div>
                
                <div style="text-align: center; margin-top: 1rem; color: #a0aec0; font-size: 0.9rem;">
                    <?= $tracks_with_sales ?> tracks with sales
                </div>
            </div>
        </div>
    </div>
    
    <!-- Track Performance -->
    <div class="analytics-section">
        <h3 class="section-title">
            <i class="fas fa-music" style="color: #667eea;"></i>
            Track Performance
        </h3>
        
        <?php if (empty($track_analytics)): ?>
            <div style="text-align: center; padding: 3rem; color: #a0aec0;">
                <i class="fas fa-chart-bar" style="font-size: 4rem; margin-bottom: 1rem; opacity: 0.3;"></i>
                <h3>No completed tracks yet</h3>
                <p>Your track analytics will appear here once you have completed tracks!</p>
            </div>
        <?php else: ?>
            <div class="track-analytics-grid">
                <?php foreach (array_slice($track_analytics, 0, 6) as $track): ?>
                    <?php 
                    $engagement_rate = $track['total_views'] > 0 ? 
                        (($track['total_plays'] + $track['total_likes'] + $track['total_comments']) / $track['total_views']) * 100 : 0;
                    $conversion_rate = $track['total_views'] > 0 ? 
                        ($track['total_sales'] / $track['total_views']) * 100 : 0;
                    ?>
                    
                    <div class="track-analytics-card">
                        <div class="track-header">
                            <div>
                                <div class="track-title"><?= htmlspecialchars($track['title']) ?></div>
                                <div class="track-date"><?= date('M j, Y', strtotime($track['created_at'])) ?></div>
                            </div>
                            <div style="font-size: 1.5rem; color: #667eea;">
                                <i class="fas fa-chart-line"></i>
                            </div>
                        </div>
                        
                        <div class="track-metrics">
                            <div class="metric-item">
                                <div class="metric-value"><?= number_format($track['total_plays']) ?></div>
                                <div class="metric-label">Plays</div>
                            </div>
                            
                            <div class="metric-item">
                                <div class="metric-value" style="color: #48bb78;"><?= number_format($track['total_likes']) ?></div>
                                <div class="metric-label">Likes</div>
                            </div>
                            
                            <div class="metric-item">
                                <div class="metric-value" style="color: #ed8936;"><?= number_format($track['total_comments']) ?></div>
                                <div class="metric-label">Comments</div>
                            </div>
                            
                            <div class="metric-item">
                                <div class="metric-value" style="color: #4299e1;"><?= number_format($track['total_views']) ?></div>
                                <div class="metric-label">Views</div>
                            </div>
                        </div>
                        
                        <div class="engagement-bar">
                            <div class="engagement-fill" style="width: <?= min($engagement_rate, 100) ?>%;"></div>
                        </div>
                        
                        <div style="display: flex; justify-content: space-between; align-items: center; margin-top: 1rem;">
                            <div style="text-align: center;">
                                <div style="font-size: 1.1rem; font-weight: 600; color: #667eea;"><?= number_format($engagement_rate, 1) ?>%</div>
                                <div style="font-size: 0.8rem; color: #a0aec0;">Engagement</div>
                            </div>
                            
                            <div style="text-align: center;">
                                <div style="font-size: 1.1rem; font-weight: 600; color: #48bb78;"><?= number_format($conversion_rate, 2) ?>%</div>
                                <div style="font-size: 0.8rem; color: #a0aec0;">Conversion</div>
                            </div>
                            
                            <div style="text-align: center;">
                                <div style="font-size: 1.1rem; font-weight: 600; color: #ed8936;"><?= $track['total_sales'] ?></div>
                                <div style="font-size: 0.8rem; color: #a0aec0;">Sales</div>
                            </div>
                        </div>
                    </div>
                <?php endforeach; ?>
            </div>
        <?php endif; ?>
    </div>
    
    <!-- Performance Chart -->
    <div class="analytics-section">
        <h3 class="section-title">
            <i class="fas fa-chart-area" style="color: #667eea;"></i>
            Play Activity (Last 30 Days)
        </h3>
        
        <div class="performance-chart">
            <?php if (empty($daily_plays)): ?>
                <div class="chart-placeholder">
                    <div style="text-align: center;">
                        <i class="fas fa-chart-line" style="font-size: 3rem; margin-bottom: 1rem; opacity: 0.3;"></i>
                        <div>No play data available</div>
                        <div style="font-size: 0.9rem; margin-top: 0.5rem;">Play activity will appear here</div>
                    </div>
                </div>
            <?php else: ?>
                <div class="chart-placeholder">
                    <div style="text-align: center;">
                        <i class="fas fa-chart-line" style="font-size: 3rem; margin-bottom: 1rem; color: #667eea;"></i>
                        <div>Play Activity Chart</div>
                        <div style="font-size: 0.9rem; margin-top: 0.5rem; color: #a0aec0;">
                            <?= count($daily_plays) ?> days of data available
                        </div>
                    </div>
                </div>
            <?php endif; ?>
        </div>
    </div>
</div> 

CasperSecurity Mini