107 lines
3.7 KiB
PHP
107 lines
3.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Script de prueba para la extensión Authentik
|
|
*
|
|
* Este script verifica que la extensión esté funcionando correctamente
|
|
*/
|
|
|
|
// Charger l'autoloader et initialiser l'application Laravel
|
|
require_once __DIR__ . '/../../../vendor/autoload.php';
|
|
|
|
// Initialiser l'application Laravel
|
|
$app = require_once __DIR__ . '/../../../bootstrap/app.php';
|
|
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
|
|
|
|
use App\Models\Extension;
|
|
|
|
echo "=== PRUEBA DE LA EXTENSIÓN AUTHENTIK SSO - FORCLUS.NET ===\n\n";
|
|
|
|
// 1. Verificar que la extensión existe
|
|
echo "1. Verificando que la extensión existe...\n";
|
|
$extension = Extension::where('extension', 'Authentik')->first();
|
|
|
|
if ($extension) {
|
|
echo " ✅ Extensión encontrada\n";
|
|
echo " - Nombre: " . $extension->name . "\n";
|
|
echo " - Tipo: " . $extension->type . "\n";
|
|
echo " - Habilitada: " . ($extension->enabled ? 'Sí' : 'No') . "\n";
|
|
} else {
|
|
echo " ❌ Extensión no encontrada\n";
|
|
exit(1);
|
|
}
|
|
|
|
// 2. Verificar parámetros
|
|
echo "\n2. Verificando parámetros...\n";
|
|
$settings = $extension->settings->pluck('value', 'key')->toArray();
|
|
|
|
$requiredParams = ['enabled', 'client_id', 'client_secret', 'base_url', 'auto_create_users', 'require_existing_user', 'force_authentik_only', 'button_text', 'button_image', 'button_image_alt', 'button_bg_color', 'button_text_color', 'callback_url'];
|
|
foreach ($requiredParams as $param) {
|
|
if (isset($settings[$param])) {
|
|
echo " ✅ $param: " . ($settings[$param] ? 'Configurado' : 'No configurado') . "\n";
|
|
} else {
|
|
echo " ❌ $param: No encontrado\n";
|
|
}
|
|
}
|
|
|
|
// 3. Verificar vista de login
|
|
echo "\n3. Verificando vista de login...\n";
|
|
$loginViewPath = base_path('themes/default/views/auth/login.blade.php');
|
|
|
|
if (file_exists($loginViewPath)) {
|
|
$content = file_get_contents($loginViewPath);
|
|
if (strpos($content, 'force_authentik_only') !== false) {
|
|
echo " ✅ Vista de login modificada correctamente\n";
|
|
} else {
|
|
echo " ⚠️ Vista de login no modificada (esto es normal si la extensión no está habilitada)\n";
|
|
}
|
|
} else {
|
|
echo " ❌ Vista de login no encontrada en: $loginViewPath\n";
|
|
}
|
|
|
|
// 4. Verificar archivos de backup
|
|
echo "\n4. Verificando archivos de backup...\n";
|
|
$backupFiles = glob($loginViewPath . '.backup.*');
|
|
if (!empty($backupFiles)) {
|
|
echo " ✅ " . count($backupFiles) . " archivo(s) de backup encontrado(s)\n";
|
|
foreach ($backupFiles as $backup) {
|
|
echo " - " . basename($backup) . "\n";
|
|
}
|
|
} else {
|
|
echo " ⚠️ No se encontraron archivos de backup\n";
|
|
}
|
|
|
|
// 5. Verificar traducciones
|
|
echo "\n5. Verificando traducciones...\n";
|
|
$langDirs = ['fr', 'en', 'es'];
|
|
foreach ($langDirs as $lang) {
|
|
$langFile = __DIR__ . "/resources/lang/$lang/messages.php";
|
|
if (file_exists($langFile)) {
|
|
echo " ✅ Traducciones en $lang encontradas\n";
|
|
} else {
|
|
echo " ❌ Traducciones en $lang no encontradas\n";
|
|
}
|
|
}
|
|
|
|
// 6. Verificar rutas
|
|
echo "\n6. Verificando rutas...\n";
|
|
$routesFile = __DIR__ . '/routes/web.php';
|
|
if (file_exists($routesFile)) {
|
|
echo " ✅ Archivo de rutas encontrado\n";
|
|
} else {
|
|
echo " ❌ Archivo de rutas no encontrado\n";
|
|
}
|
|
|
|
echo "\n=== RESUMEN ===\n";
|
|
echo "La extensión Authentik está " . ($extension->enabled ? 'habilitada' : 'deshabilitada') . "\n";
|
|
echo "Configuración: " . (count($settings) >= 13 ? 'Completa' : 'Incompleta') . "\n";
|
|
echo "Vista de login: " . (strpos($content ?? '', 'force_authentik_only') !== false ? 'Modificada' : 'Original') . "\n";
|
|
|
|
echo "\nPara activar la extensión:\n";
|
|
echo "1. Ve a Administración > Extensiones\n";
|
|
echo "2. Busca 'Authentik SSO - Forclus.NET'\n";
|
|
echo "3. Haz clic en 'Activar'\n";
|
|
echo "4. Configura los parámetros necesarios\n";
|
|
|
|
echo "\nPrueba completada.\n";
|