Passed
Push — master ( 2955c9...ee5866 )
by Fran
05:26
created

RouteController::getRouting()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 0
dl 0
loc 5
rs 9.4285
c 0
b 0
f 0
ccs 0
cts 3
cp 0
crap 2
1
<?php
2
namespace PSFS\controller;
3
4
use PSFS\base\Logger;
5
use PSFS\base\Router;
6
use PSFS\base\Security;
7
use PSFS\controller\base\Admin;
8
9
/**
10
 * Class RouteController
11
 * @package PSFS\controller
12
 */
13
class RouteController extends Admin {
14
    /**
15
     * Método que pinta por pantalla todas las rutas del sistema
16
     * @GET
17
     * @route /admin/routes
18
     */
19
    public function printRoutes()
20
    {
21
        return $this->render('routing.html.twig', array(
22
            'slugs' => Router::getInstance()->getAllRoutes(),
23
        ));
24
    }
25
26
    /**
27
     * Servicio que devuelve los parámetros disponibles
28
     * @GET
29
     * @route /admin/routes/show
30
     * @visible false
31
     * @return mixed
0 ignored issues
show
Documentation introduced by
Consider making the return type a bit more specific; maybe use string|null.

This check looks for the generic type array as a return type and suggests a more specific type. This type is inferred from the actual code.

Loading history...
32
     */
33
    public function getRouting()
34
    {
35
        $response = Router::getInstance()->getSlugs();
36
        return $this->json($response);
37
    }
38
39
    /**
40
     * Service to regenerate routes
41
     * @GET
42
     * @route /admin/routes/gen
43
     * @visible false
44
     * @return string HTML
45
     */
46
    public function regenerateUrls()
47
    {
48
        $router = Router::getInstance();
49
        try {
50
            $router->hydrateRouting();
51
            $router->simpatize();
52
            Security::getInstance()->setFlash("callback_message", _("Rutas generadas correctamente"));
53
            Security::getInstance()->setFlash("callback_route", $this->getRoute("admin-routes", true));
54
        } catch(\Exception $e) {
55
            Logger::log($e->getMessage(), LOG_ERR);
56
            Security::getInstance()->setFlash("callback_message", _("Algo no ha salido bien, revisa los logs"));
57
            Security::getInstance()->setFlash("callback_route", $this->getRoute("admin-routes", true));
58
        }
59
        return $this->redirect('admin-routes');
60
    }
61
}