HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/8.0.30
System: Linux multiplicar 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue Oct 17 15:42:21 UTC 2023 x86_64
User: root (0)
PHP: 8.0.30
Disabled: NONE
Upload Files
File: /var/www/html/gamificacionbahia.sumar.com.py/routes/web.php
<?php

use Illuminate\Support\Facades\Route;


/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return redirect('/login/wordpress');
})->name('login');

 Route::get('/', function () {
    return view('welcome'); // Solo si tenés resources/views/welcome.blade.php
 });

Route::get('/misiones', function () {
    return view('paginas.misiones');
})->middleware('auth');

Route::get('/evidencias/create/{id}', [App\Http\Controllers\EvidenciaController::class, 'create'])->name('create')->middleware('auth');

Route::get('/evidencias/edit/{id}', [App\Http\Controllers\EvidenciaController::class, 'edit'])->name('edit')->middleware('auth');

Route::post('evidenciacreate', [App\Http\Controllers\EvidenciaController::class, 'evidenciacreate'])->name('evidenciacreate')->middleware('auth');

Route::post('evidenciaedit', [App\Http\Controllers\EvidenciaController::class, 'evidenciaedit'])->name('evidenciaedit')->middleware('auth');

Route::get('/aventura', function () {
    return view('paginas.aventura');
})->middleware('auth');

Route::get('/calendario', function () {
    return view('paginas.calendario');
})->middleware('auth');

Route::get('/equipo', function () {
    return view('paginas.equipo');
})->middleware('auth');

Route::get('/ranking', function () {
    return view('paginas.ranking');
})->middleware('auth');

Route::get('/puntaje', function () {
    return view('paginas.puntaje');
})->middleware('auth');

Route::get('/reglamento', function () {
    return view('paginas.reglamento');
})->middleware('auth');

Route::get('/reglamento/{id}', function ($id) {
    return view('paginas.reglamentoshow',["id"=>$id]);
})->middleware('auth');

Route::get('/contacto', function () {
    return view('paginas.contacto');
})->middleware('auth');

Route::get('/miperfil', function () {
    return view('paginas.miperfil');
})->middleware('auth');

Route::get('/galeria', function () {
    return view('paginas.galeria');
})->middleware('auth');

Route::get('/galeria/fotos/{id}', function ($id) {
    return view('paginas.fotos',["album_id"=>$id]);
})->middleware('auth');

Route::get('/catalogo', function () {
    return view('paginas.catalogo');
})->middleware('auth');

Route::get('/misionesindividuales', function () {
    return view('paginas.misionesindividuales');
})->middleware('auth');

Route::get('/logros', function () {
    return view('paginas.logros');
})->middleware('auth');

Route::get('/missolicitudes', function () {
    return view('paginas.missolicitudes');
})->middleware('auth');

Route::resource('/admin/galeria', App\Http\Controllers\GaleriaController::class)->middleware('auth');

Route::get('/admin/galeria/fotos/{id}', function ($id) {
    return view('admin.fotos.index',["album_id"=>$id]);
})->middleware('auth');

Route::post('fotos-upload', [App\Http\Controllers\GaleriaController::class, 'dropzoneFileUpload'] )->name('dropzoneFileUpload');

Route::post('contact', [App\Http\Controllers\EmailController::class, 'contact'])->name('contact')->middleware('auth');

Route::patch('/miperfil/{id}', [App\Http\Controllers\MatriculaController::class, 'updateperfil'])->name('perfilupdate')->middleware('auth');

Route::get('/admin/evidencias/{id}', [App\Http\Controllers\EvidenciaController::class, 'show'])->name('show')->middleware('auth');
  
// Ruta de slide
Route::resource('/admin/equipos', App\Http\Controllers\EquipoController::class)->middleware('auth');

Route::resource('/admin/matricula', App\Http\Controllers\MatriculaController::class)->middleware('auth');

Route::resource('/admin/misiones', App\Http\Controllers\MisionController::class)->middleware('auth');

Route::resource('/admin/evidencias', App\Http\Controllers\EvidenciaController::class)->middleware('auth');

Route::get('/dashboard', function () {
    return view('dashboard');
})->middleware(['auth'])->name('dashboard');

Route::post('asignacion-import', [App\Http\Controllers\MatriculaController::class, 'asignacionImport'])->name('asignacion-import')->middleware('auth');

Route::post('puntos-import', [App\Http\Controllers\EvidenciaController::class, 'puntosimport'])->name('puntos-import')->middleware('auth');

Route::get('/admin/puntos', function () {
    return view('admin.puntos.index');
})->middleware('auth');

Route::resource('/admin/catalogo', App\Http\Controllers\CatalogoController::class)->middleware('auth');

Route::resource('/admin/desafioindividual', App\Http\Controllers\DesafioindividualController::class)->middleware('auth');

Route::get('/evidenciaindividual/create/{id}', [App\Http\Controllers\EvidenciaindividualController::class, 'create'])->name('create')->middleware('auth');

Route::get('/evidenciaindividual/edit/{id}', [App\Http\Controllers\EvidenciaindividualController::class, 'evidenciaindividualedit'])->name('evidenciaindividualedit')->middleware('auth');

Route::post('evidenciaindividialcreate', [App\Http\Controllers\EvidenciaindividualController::class, 'evidenciaindividialcreate'])->name('evidenciaindividialcreate')->middleware('auth');

Route::post('evidenciaindividialedit', [App\Http\Controllers\EvidenciaindividualController::class, 'evidenciaindividialedit'])->name('evidenciaindividialedit')->middleware('auth');

Route::resource('/admin/evidenciaindividuales', App\Http\Controllers\EvidenciaindividualController::class)->middleware('auth');

Route::get('/admin/evidenciaindividuales/show/{id}', function ($id) {
    return view('admin.evidenciaindividual.show2',["id"=>$id]);
})->middleware('auth');

Route::get('/admin/evidenciaindividuales/show/{mision_id}/{usuario_id}', function ($mision_id,$usuario_id) {
    return view('admin.evidenciaindividual.show3',[
        "mision_id"=>$mision_id,
        "usuario_id"=>$usuario_id
    ]);
})->middleware('auth');

Route::post('monedas-import', [App\Http\Controllers\EvidenciaindividualController::class, 'monedasimport'])->name('monedas-import')->middleware('auth');

Route::get('/admin/monedapuntos', function () {
    return view('admin.monedapuntos.index');
})->middleware('auth');

Route::post('enviarpedido', [App\Http\Controllers\CatalogoController::class, 'enviarpedido'])->name('enviarpedido')->middleware('auth');


Route::get('/admin/solicitudesadmin', function () {
    return view('admin.solicitudesadmin.index');
})->middleware('auth');

Route::get('/admin/ranking/{name}', function ($name) {
    return view('admin.ranking.index',["ranking"=>$name]);
})->middleware('auth')->where('name', '[A-Za-z]+');

Route::get('/admin/control', function () {
    return view('admin.control.index');
})->middleware('auth');

Route::get('/admin/reglamentos', function () {
    return view('admin.reglamentos.index');
})->middleware('auth');

Route::get('/admin/reglamentos/{id}', function ($id) {
    return view('admin.reglamentos.show',["id"=>$id]);
})->middleware('auth');

Route::get('/admin/notificaciones', function () {
    return view('admin.notificaciones.index');
})->middleware('auth');

Route::get('/admin/popup', function () {
    return view('admin.popup.index');
})->middleware('auth');

Route::get('/admin/usuarios', function () {
    return view('admin.usuarios.index');
})->middleware('auth');

//login con wordpress
Route::get('/login/wordpress', function () {
    //return Socialite::driver('wordpress')->redirect();
    return Socialite::driver('wordpress')->scopes(['basic'])->redirect();
});

Route::get('/login/wordpress/callback', function () {
    $user = Socialite::driver('wordpress')->user();

    // Buscar o crear usuario local
    $localUser = \App\Models\User::firstOrCreate(
        ['external_id' => $user->getId()],
        [
            'name' => $user->getName(),
            'email' => $user->getEmail() ?? $user->getNickname().'@bahia.com.py',
            'password' => bcrypt(Str::random(16)), // password random
        ]
    );

    Auth::login($localUser, true); // Login automático

    return redirect()->intended('/'); // Redirige a donde quieras
});

Route::get('/test-env', function () {
    return config('services.wordpress');
});

Route::get('/force-logout', function () {
    if (Auth::check()) {
        Auth::logout();
    }
    return redirect('https://centrodeprofesionalizacion.sumar.com.py/login/logout.php?wordpress=true'); // se envia la señal al moodle para que cierre sesión
});

Route::match(['get','post'], '/logout', function (Request $request) {
    // Si está logueado, cerrar sesión
    if (Auth::check()) {
        $userId = Auth::id(); // opcional: usar para logs
        Auth::logout();
        $request->session()->invalidate();
        $request->session()->regenerateToken();
        // session()->flush(); // opcional
    }

    // Redirigir a Wordpress (tu endpoint silencioso)
    return redirect('https://cibahia.sumar.com.py/?sso_logout=1');
})->name('logout');

require __DIR__.'/auth.php';