blob: 086bf58ae1df071db92c969837c850f07aed74fd [file] [log] [blame]
Copybara botbe50d492023-11-30 00:16:42 +01001<?php
Adrià Vilanova Martínez5af86512023-12-02 20:44:16 +01002/*
3 * hores
4 * Copyright (c) 2023 Adrià Vilanova Martínez
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU Affero General Public License as
8 * published by the Free Software Foundation, either version 3 of the
9 * License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU Affero General Public License for more details.
15 *
16 * You should have received a copy of the GNU Affero General Public
17 * License along with this program.
18 * If not, see http://www.gnu.org/licenses/.
19 */
20
Copybara botbe50d492023-11-30 00:16:42 +010021// Core of the application
22
Copybara botbe50d492023-11-30 00:16:42 +010023
24// Classes autoload
25spl_autoload_register(function($className) {
26 if ($className == "lbuchs\WebAuthn\Binary\ByteBuffer") {
27 include_once(__DIR__."/lib/WebAuthn/Binary/ByteBuffer.php");
28 return;
29 }
30
31
32 include_once(__DIR__."/inc/".$className.".php");
33});
34
35// Getting configuration
36require_once(__DIR__."/config.php");
37
38// Setting timezone and locale accordingly
39date_default_timezone_set("Europe/Madrid");
40setlocale(LC_TIME, 'es_ES.UTF-8', 'es_ES', 'es');
41
42// Database settings
43$con = @mysqli_connect($conf["db"]["server"], $conf["db"]["user"], $conf["db"]["password"], $conf["db"]["database"]) or die("There was an error connecting to the database.\n");
44mysqli_set_charset($con, "utf8mb4");
45
46// Session settings
47session_set_cookie_params([
48 "lifetime" => 0,
49 "path" => $conf["path"],
50 "httponly" => true
51]);
52session_start();
53
54// Check if app has been installed
55if (db::needsSetUp()) {
56 security::logout();
57 die("Please, run install.php from the command line to install the app before using it.");
58}