1 | <?php |
2 | |
3 | require_once __DIR__ . "/../const/ROL_CLIENTE.php"; |
4 | require_once __DIR__ . "/../const/ROL_ADMINISTRADOR.php"; |
5 | require_once __DIR__ . "/../modelo/Rol.php"; |
6 | require_once __DIR__ . "/../modelo/Usuario.php"; |
7 | require_once __DIR__ . "/bdCrea.php"; |
8 | require_once __DIR__ . "/usuarioBuscaCue.php"; |
9 | require_once __DIR__ . "/usuarioAgrega.php"; |
10 | require_once __DIR__ . "/rolConsulta.php"; |
11 | require_once __DIR__ . "/rolAgrega.php"; |
12 | require_once __DIR__ . "/rolBusca.php"; |
13 | |
14 | class Bd |
15 | { |
16 | |
17 | private static ?PDO $conexion = null; |
18 | |
19 | static function getConexion(): PDO |
20 | { |
21 | if (self::$conexion === null) { |
22 | |
23 | self::$conexion = new PDO( |
24 | |
25 | "sqlite:srvaut.db", |
26 | |
27 | null, |
28 | |
29 | null, |
30 | |
31 | [PDO::ATTR_PERSISTENT => true, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION] |
32 | ); |
33 | |
34 | bdCrea(self::$conexion); |
35 | |
36 | if (rolBusca(ROL_ADMINISTRADOR) === false) { |
37 | $administrador = new Rol( |
38 | id: ROL_ADMINISTRADOR, |
39 | descripcion: "Administra el sistema." |
40 | ); |
41 | rolAgrega($administrador); |
42 | } |
43 | |
44 | if (rolBusca("Cliente") === false) { |
45 | $cliente = new Rol( |
46 | id: "Cliente", |
47 | descripcion: "Realiza compras." |
48 | ); |
49 | rolAgrega($cliente); |
50 | } |
51 | |
52 | if (usuarioBuscaCue("pepito") === false) { |
53 | $usuario = new Usuario( |
54 | cue: "pepito", |
55 | match: "cuentos", |
56 | roles: [$cliente] |
57 | ); |
58 | usuarioAgrega($usuario); |
59 | } |
60 | |
61 | if (usuarioBuscaCue("susana") === false) { |
62 | $usuario = new Usuario( |
63 | cue: "susana", |
64 | match: "alegria", |
65 | roles: [$administrador] |
66 | ); |
67 | usuarioAgrega($usuario); |
68 | } |
69 | |
70 | if (usuarioBuscaCue("bebe") === false) { |
71 | $usuario = new Usuario( |
72 | cue: "bebe", |
73 | match: "saurio", |
74 | roles: [$administrador, $cliente] |
75 | ); |
76 | usuarioAgrega($usuario); |
77 | } |
78 | } |
79 | |
80 | return self::$conexion; |
81 | } |
82 | } |
83 | |