Proyectos de Subversion Moodle

Rev

Rev 1386 | Rev 1388 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1386 Rev 1387
Línea 229... Línea 229...
229
 * 1. Obtiene los datos completos del usuario
229
 * 1. Obtiene los datos completos del usuario
230
 * 2. Realiza el login si es necesario
230
 * 2. Realiza el login si es necesario
231
 * 3. Redirige al usuario a su página personal
231
 * 3. Redirige al usuario a su página personal
232
 */
232
 */
233
$user = get_complete_user_data('id', $user->id);
233
$user = get_complete_user_data('id', $user->id);
-
 
234
if (!$user) {
-
 
235
    error_log('Error: Usuario no encontrado en get_complete_user_data');
-
 
236
    echo json_encode(['success' => false, 'data' => 'ERROR_USER_NOT_FOUND']);
-
 
237
    exit;
-
 
238
}
-
 
239
 
234
if (!isloggedin()) {
240
if (!isloggedin()) {
-
 
241
    try {
235
    complete_user_login($user);
242
        $login_result = complete_user_login($user);
-
 
243
        if (!$login_result) {
-
 
244
            error_log('Error: Falló complete_user_login');
-
 
245
            echo json_encode(['success' => false, 'data' => 'ERROR_LOGIN_FAILED']);
-
 
246
            exit;
-
 
247
        }
-
 
248
    } catch (Exception $e) {
-
 
249
        error_log('Error en login: ' . $e->getMessage());
-
 
250
        echo json_encode(['success' => false, 'data' => 'ERROR_LOGIN_EXCEPTION']);
-
 
251
        exit;
-
 
252
    }
-
 
253
}
-
 
254
 
-
 
255
// Verificar que $CFG->wwwroot existe
-
 
256
if (!isset($CFG->wwwroot) || empty($CFG->wwwroot)) {
-
 
257
    error_log('Error: $CFG->wwwroot no está definido');
-
 
258
    echo json_encode(['success' => false, 'data' => 'ERROR_CONFIG_MISSING']);
-
 
259
    exit;
236
}
260
}
Línea -... Línea 261...
-
 
261
 
-
 
262
// Limpiar cualquier salida anterior
-
 
263
if (ob_get_length()) ob_clean();
-
 
264
 
-
 
265
// Intentar la redirección
237
 
266
try {
-
 
267
    header('Location: ' . $CFG->wwwroot . '/my');
-
 
268
    exit;
-
 
269
} catch (Exception $e) {
-
 
270
    error_log('Error en redirección: ' . $e->getMessage());
238
header('Location: ' . $CFG->wwwroot . '/my');
271
    echo json_encode(['success' => false, 'data' => 'ERROR_REDIRECT_FAILED']);
-
 
272
    exit;