aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--public/index.php9
-rw-r--r--src/service/session.php20
2 files changed, 17 insertions, 12 deletions
diff --git a/public/index.php b/public/index.php
index a12bc47..db8808e 100644
--- a/public/index.php
+++ b/public/index.php
@@ -37,11 +37,15 @@ URL::setHost($_SERVER['HTTP_HOST'] . Config::$index_path);
37// $entityManager 37// $entityManager
38require '../src/model/doctrine-bootstrap.php'; // isDevMode est sur "true", DSN à adapter 38require '../src/model/doctrine-bootstrap.php'; // isDevMode est sur "true", DSN à adapter
39 39
40// session
41require('../src/service/session.php');
42startSession($entityManager);
43
40// mode de fonctionnement 44// mode de fonctionnement
41AppMode::load($entityManager); 45AppMode::load($entityManager);
42 46
43// tests de bon fonctionnement 47// tests de bon fonctionnement
44if(AppMode::is('maintenance')){ 48if(IS_ADMIN && AppMode::is('maintenance')){
45 Installation::phpDependancies(); 49 Installation::phpDependancies();
46 Installation::checkFilesAndFoldersRights(); 50 Installation::checkFilesAndFoldersRights();
47 51
@@ -51,9 +55,6 @@ if(AppMode::is('maintenance')){
51 55
52$request = Request::createFromGlobals(); 56$request = Request::createFromGlobals();
53 57
54// session
55require('../src/service/session.php');
56
57// en mode maintenance laisser la possibilité de se logger, bloquer le reste du site aux visiteurs 58// en mode maintenance laisser la possibilité de se logger, bloquer le reste du site aux visiteurs
58if(AppMode::is('maintenance') && !IS_ADMIN 59if(AppMode::is('maintenance') && !IS_ADMIN
59 && !($request->query->has('page') && $request->query->get('page') === 'connection') 60 && !($request->query->has('page') && $request->query->get('page') === 'connection')
diff --git a/src/service/session.php b/src/service/session.php
index 57f2143..24023e9 100644
--- a/src/service/session.php
+++ b/src/service/session.php
@@ -4,17 +4,21 @@
4// à voir si c'est mieux avec: 4// à voir si c'est mieux avec:
5//use Symfony\Component\HttpFoundation\Session\Session; 5//use Symfony\Component\HttpFoundation\Session\Session;
6 6
7// note: session_regenerate_id(true) se trouve dans UserController::connect
7 8
8ini_set('session.cookie_samesite', 'Strict'); 9use Doctrine\ORM\EntityManager;
9ini_set('session.cookie_httponly', 'On');
10ini_set('session.use_strict_mode', 'On');
11ini_set('session.cookie_secure', 'On');
12session_start();
13validateSession($entityManager);
14 10
15// note: session_regenerate_id(true) se trouve dans UserController::connect 11function startSession(EntityManager $entityManager): void
12{
13 ini_set('session.cookie_samesite', 'Strict');
14 ini_set('session.cookie_httponly', 'On');
15 ini_set('session.use_strict_mode', 'On');
16 ini_set('session.cookie_secure', 'On');
17 session_start();
18 validateSession($entityManager);
19}
16 20
17function validateSession($entityManager): void 21function validateSession(EntityManager $entityManager): void
18{ 22{
19 if(defined('IS_ADMIN')){ 23 if(defined('IS_ADMIN')){
20 return; 24 return;