Route::get('/educacion/{name}/{id}', 'Frontend\CourseController@show')->name('course.show'); /* |-------------------------------------------------------------------------- | Certificados |-------------------------------------------------------------------------- */ Route::get('/certificados', 'Frontend\CertificateController@index')->name('certificate.index'); Route::post('/certificados', 'Frontend\CertificateController@search')->name('certificate.search'); /* |-------------------------------------------------------------------------- | Polls |-------------------------------------------------------------------------- */ Route::get('/riesgo/{tag}/{id}', 'Frontend\PollController@show')->name('poll.show'); Route::post('/store/{cant_questions}/{poll}', 'Frontend\PollController@store')->name('polls.store'); /* |-------------------------------------------------------------------------- | Queries Json |-------------------------------------------------------------------------- */ Route::post('/news', 'Frontend\BlogController@getBlogByCategoryJson')->name('blog.bycategory'); /* |-------------------------------------------------------------------------- | Política tratamiento de datos |-------------------------------------------------------------------------- */ Route::view('/politica-de-tratamiento-de-datos', 'frontend.privacy-policy')->name('privacy.policy'); /* |-------------------------------------------------------------------------- | Diagnostico temporal Wompi |-------------------------------------------------------------------------- | Esta ruta es temporal. Se debe eliminar despues de la prueba. */ Route::get('/_wompi-diagnostico-webhook', function () { try { $paymentOrder = \App\Models\PaymentOrder::orderBy('id', 'desc')->first(); if (!$paymentOrder) { return response( 'ERROR: No hay ordenes de pago creadas para diagnosticar.', 404 )->header('Content-Type', 'text/plain; charset=UTF-8'); } $payload = [ 'event' => 'transaction.updated', 'data' => [ 'transaction' => [ 'id' => 'diagnostic-' . time(), 'reference' => $paymentOrder->reference, 'status' => 'APPROVED', 'payment_method_type' => 'CARD', ], ], ]; $request = \Illuminate\Http\Request::create( '/webhooks/wompi', 'POST', [], [], [], ['CONTENT_TYPE' => 'application/json'], json_encode($payload) ); $controller = app(\App\Http\Controllers\Frontend\WompiWebhookController::class); $controller->handle($request); $paymentOrder->refresh(); return response( 'OK - Diagnostico ejecutado. Orden ID: ' . $paymentOrder->id . ' | Referencia: ' . $paymentOrder->reference . ' | Estado: ' . $paymentOrder->status . ' | Aprobado en: ' . ($paymentOrder->approved_at ?: 'NULL'), 200 )->header('Content-Type', 'text/plain; charset=UTF-8'); } catch (\Throwable $e) { return response( 'ERROR - ' . $e->getMessage(), 500 )->header('Content-Type', 'text/plain; charset=UTF-8'); } }); /* |-------------------------------------------------------------------------- | Evaluaciones de formación |-------------------------------------------------------------------------- */ Route::get('/evaluacion/{cursoSlug}', 'Frontend\FormacionEvaluacionController@index')->name('formacion.evaluacion.index'); Route::post('/evaluacion/{cursoSlug}/iniciar', 'Frontend\FormacionEvaluacionController@start')->name('formacion.evaluacion.start'); Route::post('/evaluacion/{cursoSlug}/enviar', 'Frontend\FormacionEvaluacionController@submit')->name('formacion.evaluacion.submit'); Route::post('/evaluacion/{cursoSlug}/certificado', 'Frontend\FormacionEvaluacionController@downloadCertificate')->name('formacion.evaluacion.certificate.download'); /* |-------------------------------------------------------------------------- | Limpiar caché desde el navegador: https://gruporisk.co/_clear-laravel-cache-once |-------------------------------------------------------------------------- | | Descomentar solo cuando realmente se necesite. | | use Illuminate\Support\Facades\Artisan; | | Route::get('/_clear-laravel-cache-once', function () { | Artisan::call('optimize:clear'); | return nl2br(Artisan::output() ?: 'Cache limpiada correctamente.'); | }); | */
Symfony\Component\HttpKernel\Exception\NotFoundHttpException {#427
  -statusCode: 404
  -headers: []
  #message: ""
  #code: 0
  #file: "/home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php"
  #line: 179
  trace: {
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php:179 {
      Illuminate\Routing\RouteCollection->match(Request $request) …
      › 
      ›     throw new NotFoundHttpException;
      › }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Routing/Router.php:635 {
      Illuminate\Routing\Router->findRoute($request) …
      › {
      ›     $this->current = $route = $this->routes->match($request);
      › 
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Routing/Router.php:624 {
      Illuminate\Routing\Router->dispatchToRoute(Request $request) …
      › {
      ›     return $this->runRoute($request, $this->findRoute($request));
      › }
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Routing/Router.php:613 {
      Illuminate\Routing\Router->dispatch(Request $request) …
      › 
      ›     return $this->dispatchToRoute($request);
      › }
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:170 {
      Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure} …
      › 
      ›     return $this->router->dispatch($request);
      › };
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:130 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › try {
      ›     return $destination($passable);
      › } catch (Exception $e) {
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21 {
      Illuminate\Foundation\Http\Middleware\TransformsRequest->handle($request, Closure $next) …
      › 
      ›     return $next($request);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:171 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › $carry = method_exists($pipe, $this->method)
      ›                 ? $pipe->{$this->method}(...$parameters)
      ›                 : $pipe(...$parameters);
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
        $next: Closure($passable) {#418 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21 {
      Illuminate\Foundation\Http\Middleware\TransformsRequest->handle($request, Closure $next) …
      › 
      ›     return $next($request);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:171 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › $carry = method_exists($pipe, $this->method)
      ›                 ? $pipe->{$this->method}(...$parameters)
      ›                 : $pipe(...$parameters);
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
        $next: Closure($passable) {#418 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27 {
      Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle($request, Closure $next) …
      › 
      ›     return $next($request);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:171 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › $carry = method_exists($pipe, $this->method)
      ›                 ? $pipe->{$this->method}(...$parameters)
      ›                 : $pipe(...$parameters);
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
        $next: Closure($passable) {#418 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:63 {
      Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle($request, Closure $next) …
      › 
      ›     return $next($request);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:171 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › $carry = method_exists($pipe, $this->method)
      ›                 ? $pipe->{$this->method}(...$parameters)
      ›                 : $pipe(...$parameters);
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
        $next: Closure($passable) {#418 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/fideloper/proxy/src/TrustProxies.php:57 {
      Fideloper\Proxy\TrustProxies->handle(Request $request, Closure $next) …
      › 
      ›     return $next($request);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:171 {
      Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure} …
      › $carry = method_exists($pipe, $this->method)
      ›                 ? $pipe->{$this->method}(...$parameters)
      ›                 : $pipe(...$parameters);
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
        $next: Closure($passable) {#418 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:105 {
      Illuminate\Pipeline\Pipeline->then(Closure $destination) …
      › 
      ›     return $pipeline($this->passable);
      › }
      arguments: {
        Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:145 {
      Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter($request) …
      ›                 ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
      ›                 ->then($this->dispatchToRouter());
      › }
      arguments: {
        $destination: Closure($request) {#319 …}
      }
    }
    /home/gruporis/public_html/framework/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:110 {
      Illuminate\Foundation\Http\Kernel->handle($request) …
      › 
      ›     $response = $this->sendRequestThroughRouter($request);
      › } catch (Exception $e) {
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
    /home/gruporis/public_html/index.php:55 {
      › $response = $kernel->handle(
      ›     $request = Illuminate\Http\Request::capture()
      › );
      arguments: {
        $request: Illuminate\Http\Request {#51 …}
      }
    }
  }
}