This commit is contained in:
dilgenfritz 2025-11-30 11:37:49 -06:00
parent b5856b21ae
commit d2c8c7206d
2 changed files with 71 additions and 11 deletions

View File

@ -555,29 +555,66 @@ class AcademyUI {
console.log('🎬 Media requirements:', mediaRequirements);
// Get filtered media from library
const mediaItems = window.libraryManager.getMediaForPreferences(
let mediaItems = window.libraryManager.getMediaForPreferences(
mediaRequirements.videoFilter,
mediaRequirements.videoCount
);
// Fallback to all videos if no matches
if (mediaItems.length === 0) {
console.warn('⚠️ No media items matched preferences. Using all available videos.');
mediaItems = window.libraryManager.getAllVideosWithMetadata();
}
console.log('🎬 Loaded media for session:', mediaItems.length, 'items');
console.log('🎯 Preference filter:', preferenceFilter);
console.log('⏱️ Session duration:', detailedConfig.session.duration);
console.log('📋 Tasks:', detailedConfig.tasks.length);
console.log('🎯 Objectives:', detailedConfig.objectives);
// If we have media items, log their details
if (mediaItems.length > 0) {
console.log('📹 Sample media item:', mediaItems[0]);
} else {
console.warn('⚠️ No media items matched preferences. Will use all available videos.');
// Fallback to all videos if no matches
const allVideos = window.libraryManager.getAllVideosWithMetadata();
console.log('📹 Using all videos as fallback:', allVideos.length);
// Sync videos to videoPlayerManager for video playback
if (window.videoPlayerManager && mediaItems.length > 0) {
const videoPaths = mediaItems.map(item => item.path || item.fullPath);
window.videoPlayerManager.videoLibrary.background = videoPaths;
window.videoPlayerManager.videoLibrary.task = videoPaths;
window.videoPlayerManager.videoLibrary.reward = videoPaths;
window.videoPlayerManager.videoLibrary.punishment = videoPaths;
console.log(`🔄 Synced ${videoPaths.length} videos to videoPlayerManager for Level ${levelConfig.levelNumber}`);
}
// TODO: Integrate with existing startTrainingSession() in training-academy.html
// For now, just call the existing function if available
// Update trainingVideoLibrary global for training-academy.html
if (mediaItems.length > 0) {
window.trainingVideoLibrary = mediaItems;
console.log(`📹 Set trainingVideoLibrary with ${mediaItems.length} videos`);
}
// Enable video if this level requires it (has video media requirements)
if (detailedConfig.media && detailedConfig.media.videos && detailedConfig.media.videos.required > 0) {
// Load and update settings to enable video
const settings = typeof window.loadAcademySettings === 'function'
? window.loadAcademySettings()
: { enableVideo: false };
if (!settings.enableVideo) {
console.log('🎬 Level requires video - enabling video in settings');
settings.enableVideo = true;
if (typeof window.saveAcademySettings === 'function') {
window.saveAcademySettings(settings);
}
}
}
// Set the selected training mode to trigger proper training flow
window.selectedTrainingMode = 'training-academy';
// Store current level info globally for access during session
window.currentAcademyLevel = {
levelNumber: levelConfig.levelNumber,
config: detailedConfig,
mediaRequirements: mediaRequirements
};
// Call the existing training session starter
if (typeof window.startTrainingSession === 'function') {
window.startTrainingSession();
} else {

View File

@ -2969,9 +2969,32 @@
// Get settings for TTS and video
const settings = loadAcademySettings();
// Debug: Check video library status
console.log('🎬 Video library check:');
console.log(' - trainingVideoLibrary length:', trainingVideoLibrary?.length || 0);
console.log(' - settings.enableVideo:', settings.enableVideo);
console.log(' - window.libraryManager exists:', !!window.libraryManager);
// Ensure trainingVideoLibrary is populated
if ((!trainingVideoLibrary || trainingVideoLibrary.length === 0) && window.libraryManager) {
console.log('📹 trainingVideoLibrary empty, loading from libraryManager...');
const allVideos = window.libraryManager.getAllVideosWithMetadata();
if (allVideos && allVideos.length > 0) {
trainingVideoLibrary = allVideos;
console.log(`✅ Loaded ${trainingVideoLibrary.length} videos from libraryManager`);
}
}
// Start background video if enabled
if (settings.enableVideo && trainingVideoLibrary.length > 0) {
console.log(`🎬 Starting video playback (${trainingVideoLibrary.length} videos available)`);
startBackgroundVideo();
} else {
if (!settings.enableVideo) {
console.log('⏸️ Video disabled in settings');
} else {
console.warn('⚠️ No videos available for playback');
}
}
// TTS announcement