Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
CRAP | |
100.00% |
1 / 1 |
Application | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
2 | |
100.00% |
1 / 1 |
getNow | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
2 |
1 | <?php |
2 | |
3 | /** |
4 | * @package 115Mandant |
5 | * @copyright BerlinOnline Stadtportal GmbH & Co. KG |
6 | **/ |
7 | |
8 | namespace BO\Zmsapi; |
9 | |
10 | if (($token = getenv('ZMS_CONFIG_SECURE_TOKEN')) === false || $token === '') { |
11 | throw new \RuntimeException('ZMS_CONFIG_SECURE_TOKEN environment variable must be set'); |
12 | } |
13 | |
14 | define('ZMS_CONFIG_SECURE_TOKEN', getenv('ZMS_CONFIG_SECURE_TOKEN')); |
15 | |
16 | if (!defined('ZMS_API_TWIG_CACHE')) { |
17 | $value = getenv('ZMS_API_TWIG_CACHE'); |
18 | define('ZMS_API_TWIG_CACHE', ($value === 'false') ? false : ($value ?: '/cache/')); |
19 | } |
20 | |
21 | class Application extends \BO\Slim\Application |
22 | { |
23 | /** |
24 | * Name of the application |
25 | */ |
26 | const IDENTIFIER = 'zms'; |
27 | |
28 | const MODULE_NAME = 'zmsapi'; |
29 | |
30 | /** |
31 | * @var Bool DEBUG |
32 | */ |
33 | const DEBUG = false; |
34 | const TWIG_CACHE = ZMS_API_TWIG_CACHE; |
35 | |
36 | /** |
37 | * @var Bool DB_ENABLE_WSREPSYNCWAIT |
38 | */ |
39 | const DB_ENABLE_WSREPSYNCWAIT = false; |
40 | |
41 | /** |
42 | * @var Bool RIGHTSCHECK_ENABLED |
43 | */ |
44 | const RIGHTSCHECK_ENABLED = true; |
45 | |
46 | /** |
47 | * @var String DB_DSN_READONLY |
48 | */ |
49 | const DB_DSN_READONLY = 'mysql:dbname=zmsbo;host=127.0.0.1'; |
50 | |
51 | /** |
52 | * @var String DB_DSN_READWRITE |
53 | */ |
54 | const DB_DSN_READWRITE = 'mysql:dbname=zmsbo;host=127.0.0.1'; |
55 | |
56 | /** |
57 | * temporary db name for using dldb data |
58 | * @var String DB_STARTINFO |
59 | */ |
60 | const DB_STARTINFO = 'startinfo'; |
61 | |
62 | /** |
63 | * @var String DB_USERNAME |
64 | */ |
65 | const DB_USERNAME = 'server'; |
66 | |
67 | /** |
68 | * @var String DB_PASSWORD |
69 | */ |
70 | const DB_PASSWORD = 'internet'; |
71 | |
72 | /** |
73 | * @var String DB_IS_GALERA |
74 | */ |
75 | const DB_IS_GALERA = true; |
76 | |
77 | /** |
78 | * @var String Security Token for Api Access -> get config for example |
79 | */ |
80 | const SECURE_TOKEN = ZMS_CONFIG_SECURE_TOKEN; |
81 | |
82 | /** |
83 | * language preferences |
84 | */ |
85 | |
86 | public static $locale = 'de'; |
87 | |
88 | public static $supportedLanguages = array( |
89 | // Default language |
90 | 'de' => array( |
91 | 'name' => 'Deutsch', |
92 | 'locale' => 'de_DE.utf-8', |
93 | 'default' => true, |
94 | ) |
95 | ); |
96 | |
97 | /** |
98 | * dldb data path |
99 | */ |
100 | public static $data = '/data'; |
101 | |
102 | /** |
103 | * @var \DateTimeInterface $now time to use for today (testing) |
104 | */ |
105 | public static $now = null; |
106 | |
107 | public static function getNow() |
108 | { |
109 | if (self::$now instanceof \DateTimeInterface) { |
110 | return self::$now; |
111 | } |
112 | return new \DateTimeImmutable(); |
113 | } |
114 | } |