diff options
Diffstat (limited to 'src/view')
| -rw-r--r-- | src/view/FooterBuilder.php | 13 | ||||
| -rw-r--r-- | src/view/MaintenanceBuilder.php | 19 | ||||
| -rw-r--r-- | src/view/MenuBuilder.php | 6 | ||||
| -rw-r--r-- | src/view/templates/form_admin.php | 7 | ||||
| -rw-r--r-- | src/view/templates/maintenance.php | 51 | ||||
| -rw-r--r-- | src/view/templates/show_emails.php | 5 |
6 files changed, 60 insertions, 41 deletions
diff --git a/src/view/FooterBuilder.php b/src/view/FooterBuilder.php index f1623e7..da16758 100644 --- a/src/view/FooterBuilder.php +++ b/src/view/FooterBuilder.php | |||
| @@ -58,8 +58,6 @@ class FooterBuilder extends AbstractBuilder | |||
| 58 | $mode = 'administrateur'; | 58 | $mode = 'administrateur'; |
| 59 | $div_admin = 'logged_in'; | 59 | $div_admin = 'logged_in'; |
| 60 | } | 60 | } |
| 61 | $link_new_page = new URL(['page' => 'new_page']); | ||
| 62 | $link_change_paths = new URL(['page' => 'menu_paths']); | ||
| 63 | 61 | ||
| 64 | $link_change_password = new URL(['page' => 'user_edit', 'from' => CURRENT_PAGE]); | 62 | $link_change_password = new URL(['page' => 'user_edit', 'from' => CURRENT_PAGE]); |
| 65 | isset($_GET['id']) ? $link_change_password->addParams(['id' => $_GET['id']]) : ''; | 63 | isset($_GET['id']) ? $link_change_password->addParams(['id' => $_GET['id']]) : ''; |
| @@ -69,10 +67,11 @@ class FooterBuilder extends AbstractBuilder | |||
| 69 | 67 | ||
| 70 | $zone_admin = '<div class="admin_buttons_zone"> | 68 | $zone_admin = '<div class="admin_buttons_zone"> |
| 71 | <p>Vous êtes en mode ' . $mode . ".</p>\n" . | 69 | <p>Vous êtes en mode ' . $mode . ".</p>\n" . |
| 72 | '<div><a href="' . $link_new_page . '"><button>Nouvelle page</button></a></div>' . "\n"; | 70 | '<div><a href="' . new URL(['page' => 'new_page']) . '"><button>Nouvelle page</button></a></div>' . "\n" . |
| 73 | $zone_admin .= $this->makePageModifModeButton(); | 71 | $this->makePageModifModeButton() . "\n" . |
| 74 | $zone_admin .= '<div><a href="' . $link_change_paths . '"><button>Menu et chemins</button></a></div>' . "\n" . | 72 | '<div><a href="' . new URL(['page' => 'menu_paths']) . '"><button>Menu et chemins</button></a></div>' . "\n" . |
| 75 | '<div><a href="' . $link_change_password . '"><button>Mon compte</button></a></div>' . "\n" . | 73 | '<div><a href="' . $link_change_password . '"><button>Mon compte</button></a></div>' . "\n" . |
| 74 | '<div><a href="' . new URL(['page' => 'maintenance']) . '"><button>Maintenance</button></a></div>' . "\n" . | ||
| 76 | '<div><a href="' . $link_logout . '"><button>Déconnexion</button></a></div>' . "\n" . | 75 | '<div><a href="' . $link_logout . '"><button>Déconnexion</button></a></div>' . "\n" . |
| 77 | '</div>' . "\n"; | 76 | '</div>' . "\n"; |
| 78 | } | 77 | } |
| @@ -100,7 +99,7 @@ class FooterBuilder extends AbstractBuilder | |||
| 100 | private function makePageModifModeButton(): string | 99 | private function makePageModifModeButton(): string |
| 101 | { | 100 | { |
| 102 | $link_edit_page = new URL(['page' => CURRENT_PAGE]); | 101 | $link_edit_page = new URL(['page' => CURRENT_PAGE]); |
| 103 | if(!in_array(CURRENT_PAGE, ['article', 'new_page', 'menu_paths'])) // ajouter 'user_edit' et 'connection' le jour où ces pages auront un footer | 102 | if(!in_array(CURRENT_PAGE, ['article', 'new_page', 'menu_paths', 'maintenance'])) // ajouter 'user_edit' et 'connection' le jour où ces pages auront un footer |
| 104 | { | 103 | { |
| 105 | if(MainBuilder::$modif_mode){ | 104 | if(MainBuilder::$modif_mode){ |
| 106 | $link_edit_label = 'Sortir du mode modification'; | 105 | $link_edit_label = 'Sortir du mode modification'; |
| @@ -109,7 +108,7 @@ class FooterBuilder extends AbstractBuilder | |||
| 109 | $link_edit_page->addParams(['mode' => 'page_modif']); | 108 | $link_edit_page->addParams(['mode' => 'page_modif']); |
| 110 | $link_edit_label = 'Modifier la page'; | 109 | $link_edit_label = 'Modifier la page'; |
| 111 | } | 110 | } |
| 112 | return '<div><a href="' . $link_edit_page . '"><button>' . $link_edit_label . '</button></a></div>' . "\n"; | 111 | return '<div><a href="' . $link_edit_page . '"><button>' . $link_edit_label . '</button></a></div>'; |
| 113 | } | 112 | } |
| 114 | else{ | 113 | else{ |
| 115 | return ''; | 114 | return ''; |
diff --git a/src/view/MaintenanceBuilder.php b/src/view/MaintenanceBuilder.php new file mode 100644 index 0000000..f5c60ed --- /dev/null +++ b/src/view/MaintenanceBuilder.php | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | <?php | ||
| 2 | // src/view/MaintenanceBuilder.php | ||
| 3 | |||
| 4 | declare(strict_types=1); | ||
| 5 | |||
| 6 | use App\Entity\Node; | ||
| 7 | |||
| 8 | class MaintenanceBuilder extends AbstractBuilder | ||
| 9 | { | ||
| 10 | public function __construct(Node $node){ | ||
| 11 | $viewFile = self::VIEWS_PATH . $node->getName() . '.php'; | ||
| 12 | |||
| 13 | if(file_exists($viewFile)){ | ||
| 14 | ob_start(); | ||
| 15 | require $viewFile; | ||
| 16 | $this->html = ob_get_clean(); | ||
| 17 | } | ||
| 18 | } | ||
| 19 | } \ No newline at end of file | ||
diff --git a/src/view/MenuBuilder.php b/src/view/MenuBuilder.php index 41ee189..85335df 100644 --- a/src/view/MenuBuilder.php +++ b/src/view/MenuBuilder.php | |||
| @@ -13,10 +13,10 @@ class MenuBuilder extends AbstractBuilder | |||
| 13 | //private int $margin_left_multiplier = 29; | 13 | //private int $margin_left_multiplier = 29; |
| 14 | private string $options = ''; | 14 | private string $options = ''; |
| 15 | 15 | ||
| 16 | public function __construct(?Node $node, bool $template = true) | 16 | public function __construct(Node $node, bool $template = true) |
| 17 | { | 17 | { |
| 18 | // impossible de me rappeler pourquoi j'ai écrit ce test sur $node, pourquoi $node serait null? | 18 | // dans une ancienne version $node pouvait être null mais je ne sais plus pourquoi |
| 19 | $viewFile = $node === null ? self::VIEWS_PATH . 'menu.php' : self::VIEWS_PATH . $node->getName() . '.php'; | 19 | $viewFile = self::VIEWS_PATH . $node->getName() . '.php'; |
| 20 | 20 | ||
| 21 | if(file_exists($viewFile)) | 21 | if(file_exists($viewFile)) |
| 22 | { | 22 | { |
diff --git a/src/view/templates/form_admin.php b/src/view/templates/form_admin.php index 7156374..d745656 100644 --- a/src/view/templates/form_admin.php +++ b/src/view/templates/form_admin.php | |||
| @@ -49,7 +49,12 @@ declare(strict_types=1); | |||
| 49 | <input type="hidden" id="smtp_password_hidden_<?= $node->getNodeData()->getId() ?>" value=""> | 49 | <input type="hidden" id="smtp_password_hidden_<?= $node->getNodeData()->getId() ?>" value=""> |
| 50 | <button onclick="setEmailParam('smtp_password', <?= $node->getNodeData()->getId() ?>)">Valider</button> | 50 | <button onclick="setEmailParam('smtp_password', <?= $node->getNodeData()->getId() ?>)">Valider</button> |
| 51 | </p> | 51 | </p> |
| 52 | <p><i>Il s'agit du service qui acheminera les messages envoyés par ce formulaire. Les services d'envoi de courriels nécéssitent généralement de s'y connecter avec un identifiant et un mot de passe. Les adresses d'envoi et de réception peuvent être identiques. Le site web peut ne pas réussir à se connecter à certains fournisseurs.</i></p> | 52 | <p><i>Il s'agit du service qui acheminera les messages envoyés par ce formulaire.<br> |
| 53 | Site web => serveur d'envoi => serveur de réception => votre application "mail"</i></p> | ||
| 54 | <p><i> | ||
| 55 | Ce formulaire utilise les paramètres dans le fichier config.ini sur le serveur à mois que vous n'en renseignez d'autres ci-dessus. Les adresses d'envoi et de réception peuvent être identiques. | ||
| 56 | </i></p> | ||
| 57 | <p><i>Le site web peut ne pas réussir à se connecter à certains fournisseurs.</i></p> | ||
| 53 | </div> | 58 | </div> |
| 54 | <div class="admin_form"> | 59 | <div class="admin_form"> |
| 55 | <h3>Paramètres de réception</h3> | 60 | <h3>Paramètres de réception</h3> |
diff --git a/src/view/templates/maintenance.php b/src/view/templates/maintenance.php index 9a2434f..426831f 100644 --- a/src/view/templates/maintenance.php +++ b/src/view/templates/maintenance.php | |||
| @@ -1,29 +1,24 @@ | |||
| 1 | <?php declare(strict_types=1); ?> | 1 | <?php declare(strict_types=1); ?> |
| 2 | <!DOCTYPE html> | 2 | <section> |
| 3 | <html lang="fr"> | 3 | <h3>Maintenance du site</h3> |
| 4 | <head> | 4 | <div class="basic_div"> |
| 5 | <meta charset="utf-8"> | 5 | <p> |
| 6 | <title>Site en maintenance</title> | 6 | <button onclick="displayLogs()">Consulter les journaux de connexion</button><br> |
| 7 | <link rel="icon" type="" href=""> | 7 | <i>Qui a essayé de se connecter, quand et a-t'il réussi?</i> |
| 8 | <meta name="description" content="site en maintenance"> | 8 | </p> |
| 9 | <meta name="viewport" content="width=device-width"> | 9 | <p> |
| 10 | <link rel="stylesheet" href="css/head.css"> | 10 | <button onclick="cleanLogs()">Effacer les journaux de connexion</button> |
| 11 | <link rel="stylesheet" href="css/body.css"> | 11 | </p> |
| 12 | <link rel="stylesheet" href="css/foot.css"> | 12 | <div id="log_table"></div> |
| 13 | <meta http-equiv="refresh" content="60" /> <!-- rafraîchissement automatique toutes les minutes --> | 13 | </div> |
| 14 | </head> | 14 | <div class="basic_div"> |
| 15 | <body> | 15 | <p> |
| 16 | <main> | 16 | <a href="http://nageurs.localhost/index.php?page=emails"><button>Consulter les emails</button></a><br> |
| 17 | <p>Le site est en cours de maintenance.</p> | 17 | <i>Emails reçus depuis tous les formulaires de contact</i> |
| 18 | <p>Il devrait être de nouveau accessible rapidement.</p> | 18 | </p> |
| 19 | <?= !empty(Config::$email_dest) ? '<p>Contact: ' . Config::$email_dest . '</p>' : '' ?> | 19 | </div> |
| 20 | </main> | 20 | |
| 21 | <footer> | 21 | <div class="basic_div"> |
| 22 | <div class="logged_out"> | 22 | <a href="http://nageurs.localhost/index.php"><button>Retour au site</button></a> |
| 23 | <button> | 23 | </div> |
| 24 | <a href="<?= new URL(['page' => 'connection']) ?>">Mode admin</a> | 24 | </section> \ No newline at end of file |
| 25 | </button> | ||
| 26 | </div> | ||
| 27 | </footer> | ||
| 28 | </body> | ||
| 29 | </html> \ No newline at end of file | ||
diff --git a/src/view/templates/show_emails.php b/src/view/templates/show_emails.php index 2cb102e..f561dc7 100644 --- a/src/view/templates/show_emails.php +++ b/src/view/templates/show_emails.php | |||
| @@ -2,14 +2,15 @@ | |||
| 2 | <section class="show_emails"> | 2 | <section class="show_emails"> |
| 3 | <h3>Table "<?= TABLE_PREFIX ?>email" de la base de données</h3> | 3 | <h3>Table "<?= TABLE_PREFIX ?>email" de la base de données</h3> |
| 4 | <p><i> | 4 | <p><i> |
| 5 | Les e-mails ci-dessous sont des copies de ceux arrivés dans votre boite de messagerie (qui en théorie sont également concernés par le RGPD) depuis tous les formulaires existant sur le site. Ils sont conservés dans un but pratique et éventuellement dans un but de prospection, ou dans tout autre but justifiant leur conservation. | 5 | Les e-mails ci-dessous sont des copies de ceux arrivés dans votre boite de messagerie depuis tous les formulaires existant sur le site. Ils sont conservés dans un but pratique (historique, prospection) ou dans tout autre but justifiant leur conservation. Cette conservation est optionnelle et règlementée par la loi européenne RGPD.<br> |
| 6 | <b>Notez qu'utiliser cette application ne vous garantit pas d'être en conformité avec la loi, c'est un outil vous permettant de faire les choses comme vous l'entendez. Si tout ceci vous gêne, désactivez le stockage des e-mails et supprimez ceux déjà enregistrés (ci-dessous).</b> | ||
| 6 | </i></p> | 7 | </i></p> |
| 7 | <h4>Durées de conservation</h4> | 8 | <h4>Durées de conservation</h4> |
| 8 | <p><i> | 9 | <p><i> |
| 9 | Ce sont des durées maximales, les données peuvent être supprimées plus tôt ou même immédiatement. Le faire est d'ailleurs une obligation dans le cas où les personnes concernées le demandent.<br> | 10 | Ce sont des durées maximales, les données peuvent être supprimées plus tôt ou même immédiatement. Le faire est d'ailleurs une obligation dans le cas où les personnes concernées le demandent.<br> |
| 10 | </i></p> | 11 | </i></p> |
| 11 | <p><i> | 12 | <p><i> |
| 12 | Les e-mails ordinaires d'un même expéditeur (même adresse e-mail) sont tous supprimés simultanément lorsque le plus récent d'entre eux atteint les 3 ans (utilisateur "inactif").<br> | 13 | Les e-mails ordinaires d'un même expéditeur (même adresse e-mail) sont tous supprimés simultanément lorsque le plus récent d'entre eux atteint les 3 ans (utilisateur est considéré inactif).<br> |
| 13 | Les e-mails sensibles quand à eux sont supprimés 5 ans après être devenus sensibles (durée juridique d'une preuve). | 14 | Les e-mails sensibles quand à eux sont supprimés 5 ans après être devenus sensibles (durée juridique d'une preuve). |
| 14 | </i></p> | 15 | </i></p> |
| 15 | <p><i> | 16 | <p><i> |
