]>
git.p6c8.net - jirafeau_project.git/blob - lib/settings.php
3 * Jirafeau, your web file repository
4 * Copyright (C) 2008 Julien "axolotl" BERNARD <axolotl@magieeternelle.org>
5 * Copyright (C) 2015 Jerome Jutteau <jerome@jutteau.fr>
6 * Copyright (C) 2024 Jirafeau project <https://gitlab.com/jirafeau> (see AUTHORS.md)
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Affero General Public License as
10 * published by the Free Software Foundation, either version 3 of the
11 * License, or (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU Affero General Public License for more details.
18 * You should have received a copy of the GNU Affero General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
25 require(JIRAFEAU_ROOT
. 'lib/config.original.php');
26 if (file_exists(JIRAFEAU_ROOT
. 'lib/config.local.php')) {
27 // read local copy and merge with original values
29 require(JIRAFEAU_ROOT
. 'lib/config.local.php');
30 $cfg = array_merge($cfgOriginal, $cfg);
35 if ($cfg['debug'] === true) {
36 @error_reporting
(E_ALL
);
44 /* Jirafeau package */
45 define('JIRAFEAU_PACKAGE', 'Jirafeau');
46 define('JIRAFEAU_VERSION', '4.6.1');
48 define('JIRAFEAU_WEBSITE', 'https://gitlab.com/jirafeau/Jirafeau');
51 define('VAR_FILES', $cfg['var_root'] . 'files/');
52 define('VAR_LINKS', $cfg['var_root'] . 'links/');
53 define('VAR_ASYNC', $cfg['var_root'] . 'async/');
55 // helping variable to build absolute link to
56 // root of the domain without handling the URL scheme
57 $absPrefix = parse_url($cfg['web_root'], PHP_URL_PATH
);
58 if (true === empty($absPrefix)) {
59 // fallback if installation isn't done yet: relative links to same level on the current page
62 define('JIRAFEAU_ABSPREFIX', $absPrefix);
64 /* Useful constants. */
68 if (!defined('QUOTE')) {
72 define('JIRAFEAU_INFINITY', -1);
73 define('JIRAFEAU_MINUTE', 60); // 60
74 define('JIRAFEAU_HOUR', 3600); // JIRAFEAU_MINUTE * 60
75 define('JIRAFEAU_DAY', 86400); // JIRAFEAU_HOUR * 24
76 define('JIRAFEAU_WEEK', 604800); // JIRAFEAU_DAY * 7
77 define('JIRAFEAU_FORTNIGHT', 1209600); // JIRAFEAU_WEEK * 2
78 define('JIRAFEAU_MONTH', 2592000); // JIRAFEAU_DAY * 30
79 define('JIRAFEAU_QUARTER', 7776000); // JIRAFEAU_DAY * 90
80 define('JIRAFEAU_YEAR', 31536000); // JIRAFEAU_DAY * 365
82 define('JIRAFEAU_USER_AUTH_BY_IP_NO_PASSWORD', 1);
83 define('JIRAFEAU_USER_AUTH_BY_PASSWORD', 2);
85 define('JIRAFEAU_SODIUM_CHUNKSIZE', 1024);
87 // Define some Sodium constants from newer PHP versions if they are not available
89 if (extension_loaded('sodium')) {
90 if (!defined('SODIUM_CRYPTO_STREAM_XCHACHA20_KEYBYTES')) {
91 define('SODIUM_CRYPTO_STREAM_XCHACHA20_KEYBYTES', 32);
94 if (!defined('SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_HEADERBYTES')) {
95 define('SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_HEADERBYTES', 24);
98 if (!defined('SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_ABYTES')) {
99 define('SODIUM_CRYPTO_SECRETSTREAM_XCHACHA20POLY1305_ABYTES', 17);
103 // set UTC as default timezone for all date/time functions
104 date_default_timezone_set('UTC');
patrick-canterino.de