prepare( "SELECT cl.clientCode FROM client cl WHERE cl.clientCode = :cc AND ($rbacClause)" ); $clStmt->execute(array_merge([':cc' => $clientCode], $rbacParams)); if (!$clStmt->fetch()) { qdb_discard($tmpDb, $lockFp); json_error('NOT_FOUND', 'Client not found or not authorized', 404); } require_once __DIR__ . '/../lib/session_schedule.php'; qdb_upsert_client_session_schedule( $pdo, $clientCode, $scheduledDate, $programCycleNumber, $programSessionNumber, $programSessionID ); qdb_save($tmpDb, $lockFp); json_success([ 'scheduled' => true, 'schedule' => qdb_get_client_session_schedule($pdo, $clientCode), ]); } catch (Throwable $e) { qdb_handler_fail($e, 'Save session schedule', null, $tmpDb ?? null, $lockFp ?? null); }