<?php
// Fetch extras for dropdown
$result $dbc->query('SELECT pk_Extra, name, defaultTime FROM CINE_Extra');
$extras = [];
while (
$row $result->fetch_assoc()) {
    
$extras[] = $row;
}

// Fetch movies for assignment
$movieResult $dbc->query('SELECT pk_Film, name, kdmStart, kdmEnd FROM CINE_Film ORDER BY name');
$movies = [];
while (
$row $movieResult->fetch_assoc()) {
    
$movies[] = $row;
}

// Fetch existing plages with movie information
$plageResult $dbc->query('SELECT p.pk_Plage, p.date, p.fromTime, p.toTime, p.extraTime, 
                           e.name as extraName, f.name as movieName, f.pk_Film as movieId
                           FROM CINE_Plage p 
                           LEFT JOIN CINE_Extra e ON p.fk_Extra = e.pk_Extra
                           LEFT JOIN CINE_Film f ON p.fk_Film = f.pk_Film
                           ORDER BY p.date, p.fromTime'
);
$plages = [];
while (
$row $plageResult->fetch_assoc()) {
    
// datetime strings
    
$startDt $row['date'] . 'T' substr($row['fromTime'],0,5);
    
$endDt   $row['date'] . 'T' substr($row['toTime'],0,5);
    
$title $row['extraName'] ? $row['extraName'] : 'Schedule Entry';
    
$title .= ': ' substr($row['fromTime'],0,5) . '-' substr($row['toTime'],0,5);
    if (
$row['extraTime'] > 0) {
        
$title .= ' +' $row['extraTime'] . 'm';
    }
    if (
$row['movieName']) {
        
$title .= ' | ' $row['movieName'];
    }
    
$plages[] = [
        
'id' => $row['pk_Plage'],
        
'title' => $title,
        
'start' => $startDt,
        
'end' => $endDt,
        
'extendedProps' => [
            
'extraTime' => $row['extraTime'],
            
'extraName' => $row['extraName'],
            
'movieName' => $row['movieName'],
            
'movieId' => $row['movieId']
        ]
    ];
}
?>