Przeglądaj źródła

Debugging wordpress_import

svalavuo 4 dni temu
rodzic
commit
abd116fcd8
3 zmienionych plików z 98 dodań i 2 usunięć
  1. 0 2
      .gitignore
  2. 44 0
      test_direct_language.php
  3. 54 0
      test_language_switching_complete.php

+ 0 - 2
.gitignore

@@ -1,3 +1 @@
-test_*
-debug_*
 includes/config.php

+ 44 - 0
test_direct_language.php

@@ -0,0 +1,44 @@
+<?php
+// Direct test of language switching without redirects
+session_start();
+
+echo "=== Direct Language Test ===\n\n";
+
+require_once 'includes/config.php';
+require_once 'includes/translation.php';
+
+// Clear everything first
+$_GET = array();
+$_SESSION = array();
+
+echo "Test 1 - Fresh start (should default to English):\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Translation: " . $translation->translate('nav_home') . "\n\n";
+
+// Test 2 - Direct language setting
+echo "Test 2 - Direct language setting to Finnish:\n";
+$translation->setLanguage('fi');
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 3 - New instance with session
+echo "Test 3 - New Translation instance (should use session):\n";
+$translation2 = Translation::getInstance();
+echo "Current language: " . $translation2->getCurrentLanguage() . "\n";
+echo "Translation: " . $translation2->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 4 - Clear session and test URL parameter simulation
+$_SESSION = array();
+$_GET['lang'] = 'fi';
+
+echo "Test 4 - URL parameter simulation:\n";
+$translation3 = Translation::getInstance();
+echo "Current language: " . $translation3->getCurrentLanguage() . "\n";
+echo "Translation: " . $translation3->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+echo "=== Test Complete ===\n";
+?>

+ 54 - 0
test_language_switching_complete.php

@@ -0,0 +1,54 @@
+<?php
+// Complete test of language switching functionality
+session_start();
+
+echo "=== Complete Language Switching Test ===\n\n";
+
+require_once 'includes/config.php';
+require_once 'includes/translation.php';
+
+// Test 1: Default language (no session, no GET)
+$_GET = array();
+$_SESSION = array();
+
+echo "Test 1 - Default language:\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Test translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 2: Language parameter in URL
+$_GET['lang'] = 'fi';
+echo "Test 2 - With lang=fi parameter:\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Test translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 3: Session persistence (clear GET, keep session)
+$_GET = array();
+echo "Test 3 - Session persistence (after Finnish set):\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Test translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 4: Switch back to English
+$_GET['lang'] = 'en';
+echo "Test 4 - Switch back to English:\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Test translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+// Test 5: Session persistence after English
+$_GET = array();
+echo "Test 5 - Session persistence (after English set):\n";
+$translation = Translation::getInstance();
+echo "Current language: " . $translation->getCurrentLanguage() . "\n";
+echo "Test translation: " . $translation->translate('nav_home') . "\n";
+echo "Session language: " . ($_SESSION['language'] ?? 'not set') . "\n\n";
+
+echo "=== All Tests Completed ===\n";
+echo "Language switching is working correctly!\n";
+?>