![]() 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/-30f4112d/ |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Fixes Verification Test - SoundStudioPro</title>
<style>
body {
background: #0a0a0a;
color: white;
font-family: Arial, sans-serif;
padding: 2rem;
}
.test-section {
background: rgba(255,255,255,0.1);
padding: 2rem;
border-radius: 8px;
margin: 2rem 0;
}
.test-btn {
padding: 1rem 2rem;
margin: 0.5rem;
background: #667eea;
color: white;
border: none;
border-radius: 8px;
cursor: pointer;
}
.status {
padding: 1rem;
margin: 1rem 0;
border-radius: 8px;
font-family: monospace;
}
.status.success { background: rgba(34, 197, 94, 0.2); border: 1px solid #22c55e; }
.status.error { background: rgba(245, 101, 101, 0.2); border: 1px solid #f56565; }
.status.info { background: rgba(59, 130, 246, 0.2); border: 1px solid #3b82f6; }
</style>
</head>
<body>
<h1>🔧 Fixes Verification Test</h1>
<div class="test-section">
<h2>🎵 Global Player Test</h2>
<button onclick="testGlobalPlayer()" class="test-btn">Test Global Player</button>
<button onclick="testPlayTrack()" class="test-btn">Test Play Track</button>
<div id="globalPlayerStatus" class="status info">Click to test global player...</div>
</div>
<div class="test-section">
<h2>🔄 AJAX Navigation Test</h2>
<button onclick="testAjaxNavigation()" class="test-btn">Test AJAX Navigation</button>
<button onclick="testPageContainer()" class="test-btn">Test Page Container</button>
<div id="ajaxStatus" class="status info">Click to test AJAX navigation...</div>
</div>
<div class="test-section">
<h2>📄 Page Loading Test</h2>
<button onclick="testPageLoad()" class="test-btn">Test Community Page Load</button>
<button onclick="testLibraryPageLoad()" class="test-btn">Test Library Page Load</button>
<div id="pageLoadStatus" class="status info">Click to test page loading...</div>
</div>
<div class="test-section">
<h2>🔍 Debug Information</h2>
<div id="debugInfo" class="status info">Loading debug information...</div>
</div>
<script>
function updateStatus(elementId, message, type = 'info') {
const element = document.getElementById(elementId);
if (element) {
element.textContent = message;
element.className = `status ${type}`;
}
}
function testGlobalPlayer() {
console.log('🎵 Testing global player...');
const status = {
'enhancedGlobalPlayer exists': !!window.enhancedGlobalPlayer,
'globalPlayerReady': !!window.globalPlayerReady,
'playTrack function': !!(window.enhancedGlobalPlayer && window.enhancedGlobalPlayer.playTrack),
'initialize function': !!(window.enhancedGlobalPlayer && window.enhancedGlobalPlayer.initialize),
'Player element exists': !!document.getElementById('enhancedGlobalPlayer'),
'Audio element exists': !!document.getElementById('globalAudioElement')
};
const successCount = Object.values(status).filter(Boolean).length;
const totalCount = Object.keys(status).length;
if (successCount === totalCount) {
updateStatus('globalPlayerStatus', `✅ All global player checks passed! (${successCount}/${totalCount})`, 'success');
} else {
updateStatus('globalPlayerStatus', `❌ Some global player checks failed (${successCount}/${totalCount})`, 'error');
}
console.log('🎵 Global player status:', status);
}
function testPlayTrack() {
console.log('🎵 Testing playTrack function...');
if (window.enhancedGlobalPlayer && typeof window.enhancedGlobalPlayer.playTrack === 'function') {
try {
window.enhancedGlobalPlayer.playTrack(
'https://apiboxfiles.erweima.ai/MjE4OGJiZWMtNDRkMi00OTYwLTkyZGYtNWExMjQ1OTlkMGQx.mp3',
'Test Track',
'Test Artist',
120
);
updateStatus('globalPlayerStatus', '✅ PlayTrack function working!', 'success');
} catch (error) {
updateStatus('globalPlayerStatus', '❌ PlayTrack failed: ' + error.message, 'error');
}
} else {
updateStatus('globalPlayerStatus', '❌ PlayTrack function not available', 'error');
}
}
function testAjaxNavigation() {
console.log('🔄 Testing AJAX navigation...');
const status = {
'ajaxNavigation object exists': !!window.ajaxNavigation,
'navigateToPage function': !!(window.ajaxNavigation && window.ajaxNavigation.navigateToPage),
'getCurrentPage function': !!(window.ajaxNavigation && window.ajaxNavigation.getCurrentPage),
'isNavigating function': !!(window.ajaxNavigation && window.ajaxNavigation.isNavigating)
};
const successCount = Object.values(status).filter(Boolean).length;
const totalCount = Object.keys(status).length;
if (successCount === totalCount) {
updateStatus('ajaxStatus', `✅ AJAX navigation working! (${successCount}/${totalCount})`, 'success');
} else {
updateStatus('ajaxStatus', `❌ AJAX navigation issues (${successCount}/${totalCount})`, 'error');
}
console.log('🔄 AJAX navigation status:', status);
}
function testPageContainer() {
console.log('📄 Testing page container...');
const pageContainer = document.getElementById('pageContainer');
const mainContent = document.querySelector('.main-content');
const mainTag = document.querySelector('main');
if (pageContainer || mainContent || mainTag) {
updateStatus('ajaxStatus', '✅ Page container structure found', 'success');
} else {
updateStatus('ajaxStatus', '❌ Page container structure missing', 'error');
}
}
async function testPageLoad() {
console.log('📄 Testing community page load...');
updateStatus('pageLoadStatus', '⏳ Loading community page...', 'info');
try {
const response = await fetch('/ajax_load_page.php?page=community&ajax=1');
const data = await response.json();
if (data.success) {
updateStatus('pageLoadStatus', '✅ Community page loaded successfully!', 'success');
console.log('📄 Page content length:', data.content.length);
} else {
updateStatus('pageLoadStatus', '❌ Page load failed: ' + data.error, 'error');
}
} catch (error) {
updateStatus('pageLoadStatus', '❌ Page load error: ' + error.message, 'error');
}
}
async function testLibraryPageLoad() {
console.log('📄 Testing library page load...');
updateStatus('pageLoadStatus', '⏳ Loading library page...', 'info');
try {
const response = await fetch('/ajax_load_page.php?page=library&ajax=1');
const data = await response.json();
if (data.success) {
updateStatus('pageLoadStatus', '✅ Library page loaded successfully!', 'success');
console.log('📄 Page content length:', data.content.length);
} else {
updateStatus('pageLoadStatus', '❌ Page load failed: ' + data.error, 'error');
}
} catch (error) {
updateStatus('pageLoadStatus', '❌ Page load error: ' + error.message, 'error');
}
}
function updateDebugInfo() {
const debugInfo = {
'Current URL': window.location.href,
'Page Title': document.title,
'Document Ready State': document.readyState,
'Global Player Ready': !!window.globalPlayerReady,
'AJAX Navigation Ready': !!window.ajaxNavigation,
'Console Available': typeof console !== 'undefined',
'Fetch Available': typeof fetch !== 'undefined'
};
const debugDiv = document.getElementById('debugInfo');
debugDiv.innerHTML = Object.entries(debugInfo)
.map(([key, value]) => `${key}: ${value}`)
.join('\n');
}
// Initialize debug info
document.addEventListener('DOMContentLoaded', () => {
updateDebugInfo();
// Auto-test global player after page load
setTimeout(testGlobalPlayer, 1000);
});
// Update debug info periodically
setInterval(updateDebugInfo, 5000);
</script>
</body>
</html>