Bläddra i källkod

More emojis, displayIndex, descriptions in pages.php

Miraty 3 år sedan
förälder
incheckning
90d8e2fce7
9 ändrade filer med 91 tillägg och 153 borttagningar
  1. 9 8
      common/html.php
  2. 54 13
      common/pages.php
  3. 15 0
      fn/common.php
  4. 1 18
      public/auth/index.php
  5. 1 1
      public/css/main.css
  6. 1 22
      public/ht/index.php
  7. 8 8
      public/index.php
  8. 1 61
      public/ns/index.php
  9. 1 22
      public/reg/index.php

+ 9 - 8
common/html.php

@@ -32,11 +32,12 @@ if (
 	<head>
 	<head>
 		<meta charset="utf-8">
 		<meta charset="utf-8">
 		<title><?php
 		<title><?php
-if (isset($page['title']) AND $page['title'] != "Accueil")
-	echo $page['title'] . " < ";
+if (isset($page['title']))
+	echo strip_tags($page['title']) . " < ";
 if (isset($page['service']))
 if (isset($page['service']))
-	echo $page['service'] . " < ";
-?>Niver</title>
+	echo strip_tags($page['service']) . " < ";
+echo strip_tags(TITLES['index']);
+?></title>
 <?php
 <?php
 foreach (array_diff(scandir(CONF['common']['root_path'] . "/public/css"), array('..', '.')) as $cssPath)
 foreach (array_diff(scandir(CONF['common']['root_path'] . "/public/css"), array('..', '.')) as $cssPath)
 	echo '		<link type="text/css" rel="stylesheet" media="screen" href="' . CONF['common']['prefix'] . '/css/' . $cssPath . '">' . "\n";
 	echo '		<link type="text/css" rel="stylesheet" media="screen" href="' . CONF['common']['prefix'] . '/css/' . $cssPath . '">' . "\n";
@@ -49,14 +50,14 @@ foreach (array_diff(scandir(CONF['common']['root_path'] . "/public/css"), array(
 <?php if (isset($_SESSION['username'])) { ?>
 <?php if (isset($_SESSION['username'])) { ?>
 				🆔 <strong><?= $_SESSION['username'] ?></strong> <a class='auth' href='<?= CONF['common']['prefix'] ?>/auth/logout'>Se déconnecter</a>
 				🆔 <strong><?= $_SESSION['username'] ?></strong> <a class='auth' href='<?= CONF['common']['prefix'] ?>/auth/logout'>Se déconnecter</a>
 <?php } else { ?>
 <?php } else { ?>
-				👻 <em>Anonyme</em> <a class="auth" href="<?= CONF['common']['prefix'] ?>/auth/login?redir=<?php if (SERVICE !== "") echo SERVICE . "/"; ?><?= PAGE ?>">Se connecter</a>
+				<span aria-hidden="true">👻 </span><em>Anonyme</em> <a class="auth" href="<?= CONF['common']['prefix'] ?>/auth/login?redir=<?php if (SERVICE !== "") echo SERVICE . "/"; ?><?= PAGE ?>">Se connecter</a>
 <?php } ?>
 <?php } ?>
 			</p>
 			</p>
 			<nav>
 			<nav>
 				<ul><li><?php
 				<ul><li><?php
-echo (!isset($page['service'])) ? '<h1><a class="niver" href="..">Niver</a></h1>' : "";
-echo (isset($page['service']) AND PAGE == "index") ? '<a class="niver" href="..">Niver</a><ul><li> <a href="."><h1>' . $page['service'] . '</h1></a></li></ul>' : "";
-echo (PAGE != "index") ? '<a class="niver" href="..">Niver</a><ul><li> <a href=".">' . $page['service'] . '</a><ul><li> <a href="' . PAGE . '"><h1>' . $page['title'] . "</h1></a></li></ul></li></ul>" : "";
+echo (!isset($page['service'])) ? '<h1><a class="niver" href="..">' . TITLES['index'] . '</a></h1>' : "";
+echo (isset($page['service']) AND PAGE == "index") ? '<a class="niver" href="..">' . TITLES['index'] . '</a><ul><li> <a href="."><h1>' . $page['service'] . '</h1></a></li></ul>' : "";
+echo (PAGE != "index") ? '<a class="niver" href="..">' . TITLES['index'] . '</a><ul><li> <a href=".">' . $page['service'] . '</a><ul><li> <a href="' . PAGE . '"><h1>' . $page['title'] . "</h1></a></li></ul></li></ul>" : "";
 ?></li></ul>
 ?></li></ul>
 
 
 			</nav>
 			</nav>

+ 54 - 13
common/pages.php

@@ -1,38 +1,38 @@
 <?php
 <?php
 
 
 define('TITLES', [
 define('TITLES', [
-		'index' => 'niver',
+		'index' => '<span aria-hidden="true">🪐 </span>Niver',
 		'auth' => [
 		'auth' => [
-			'index' => 'Authentification',
+			'index' => '<span aria-hidden="true">🔐 </span>Authentification',
 			'login' => 'Se connecter',
 			'login' => 'Se connecter',
 			'register' => 'Créer un compte',
 			'register' => 'Créer un compte',
 			'password' => 'Changer la clé de passe',
 			'password' => 'Changer la clé de passe',
 			'logout' => 'Déconnexion',
 			'logout' => 'Déconnexion',
 		],
 		],
 		'reg' => [
 		'reg' => [
-			'index' => 'Registre',
+			'index' => '<span aria-hidden="true">🏷️ </span>Registre <code>' . CONF['reg']['registry'] . '</code>',
 			'register' => 'Enregistrer un nouveau domaine',
 			'register' => 'Enregistrer un nouveau domaine',
 			'unregister' => 'Effacer un domaine',
 			'unregister' => 'Effacer un domaine',
-			'ns' => 'Ajouter un enregistrement NS',
-			'ds' => 'Ajouter un enregistrement DS',
+			'ns' => 'Ajouter un enregistrement <abbr title="Name Server">NS</abbr>',
+			'ds' => 'Ajouter un enregistrement <abbr title="Delegation Signer">DS</abbr>',
 			'glue' => 'Créer un Glue Record',
 			'glue' => 'Créer un Glue Record',
 		],
 		],
 		'ns' => [
 		'ns' => [
-			'index' => 'Serveurs de noms',
+			'index' => '<span aria-hidden="true">📖 </span>Serveurs de noms',
 			'zone-add' => 'Ajouter une zone',
 			'zone-add' => 'Ajouter une zone',
 			'zone-del' => 'Effacer une zone',
 			'zone-del' => 'Effacer une zone',
-			'dnssec' => 'Afficher les enregistrements DS',
+			'dnssec' => 'Afficher les enregistrements <abbr title="Delegation Signer">DS</abbr>',
 			'ip' => 'Enregistrements A et AAAA',
 			'ip' => 'Enregistrements A et AAAA',
-			'ns' => 'Enregistrement NS',
+			'ns' => 'Enregistrement <abbr title="Name Server">NS</abbr>',
 			'txt' => 'Enregistrement TXT',
 			'txt' => 'Enregistrement TXT',
-			'caa' => 'Enregistrement CAA',
+			'caa' => 'Enregistrement <abbr title="Certification Authority Authorization">CAA</abbr>',
 			'srv' => 'Enregistrement SRV',
 			'srv' => 'Enregistrement SRV',
-			'mx' => 'Enregistrement MX',
-			'sshfp' => 'Enregistrement SSHFP',
-			'tlsa' => 'Enregistrement TLSA',
+			'mx' => 'Enregistrement <abbr title="Mail eXchanger">MX</abbr>',
+			'sshfp' => 'Enregistrement <abbr title="Secure SHell FingerPrint">SSHFP</abbr>',
+			'tlsa' => 'Enregistrement <abbr title="Transport Layer Security Association">TLSA</abbr>',
 		],
 		],
 		'ht' => [
 		'ht' => [
-			'index' => 'Hypertexte',
+			'index' => '<span aria-hidden="true">🕸️ </span>Hypertexte',
 			'add-http-onion' => 'Ajouter un accès HTTP par Onion',
 			'add-http-onion' => 'Ajouter un accès HTTP par Onion',
 			'add-http-dns' => 'Ajouter un accès HTTP par DNS+TLS',
 			'add-http-dns' => 'Ajouter un accès HTTP par DNS+TLS',
 			'del-http-onion' => 'Retirer un accès HTTP par Onion',
 			'del-http-onion' => 'Retirer un accès HTTP par Onion',
@@ -42,6 +42,47 @@ define('TITLES', [
 	]
 	]
 );
 );
 
 
+define('DESCRIPTIONS', [
+		'auth' => [
+			'index' => 'Gérer son compte',
+			'login' => 'Démarrer une nouvelle session avec un compte existant',
+			'register' => 'Créer un nouveau compte Niver',
+			'password' => 'Changer la chaîne de caractères permettant de vous authentifier.',
+			'logout' => 'Terminer la session et effacer ses cookies',
+		],
+		'reg' => [
+			'index' => 'Demander l\'attribution d\'un sous-domaine',
+			'register' => 'Prendre possession d\'un sous-domaine de <code>' . CONF['reg']['registry'] . '</code>',
+			'unregister' => 'Effacer toutes les données d\'un domaine',
+			'ns' => 'Indiquer les serveurs de noms de son sous-domaine de <code>' . CONF['reg']['registry'] . '</code>',
+			'ds' => 'Déléguer la confiance <abbr title="Domain Name System Security Extensions">DNSSEC</abbr>',
+			'glue' => 'Indiquer les IP de ses serveurs de noms de son sous-domaine de <code>' . CONF['reg']['registry'] . '</code> dont les adresses se trouvent sur ce même sous-domaine',
+		],
+		'ns' => [
+			'index' => 'Gérer les données enregistrées dans ses domaines',
+			'zone-add' => 'Pour qu\'elle soit gérée par le serveur de noms de Niver',
+			'zone-del' => 'Effacer toutes les données d\'une zone',
+			'dnssec' => 'À indiquer à la zone parente pour activer <abbr title="Domain Name System Security Extensions">DNSSEC</abbr>',
+			'ip' => 'Indiquer l\'adresse IP d\'un domaine',
+			'ns' => 'Indiquer le serveur de noms d\'une zone',
+			'txt' => 'Associer du texte à un domaine',
+			'caa' => 'Enregistrement <abbr title="Certificate Authority Authorization">CAA</abbr>',
+			'srv' => 'Indiquer l\'adresse pour un service spécifique',
+			'mx' => 'Indiquer le serveur mail pour un domaine',
+			'sshfp' => 'Indiquer les empreintes de clés <abbr title="Secure SHell">SSH</abbr> d\'un domaine',
+			'tlsa' => 'Indiquer les seules autorités de certifications autorisée à signer les domaines',
+		],
+		'ht' => [
+			'index' => 'Mettre en ligne son site statique sur un espace <abbr title="SSH File Transfert Protocol">SFTP</abbr>, et le faire répondre en <abbr title="HyperText Transfert Protocol">HTTP</abbr> par DNS ou Tor',
+			'add-http-onion' => 'Ajouter un accès HTTP par service Onion sur un sous-dossier de l\'espace SFTP',
+			'add-http-dns' => 'Ajouter un accès HTTP par DNS et TLS sur un sous-dossier de l\'espace SFTP',
+			'del-http-onion' => 'Retirer un accès HTTP par service Onion d\'un sous-dossier de l\'espace SFTP',
+			'del-http-dns' => 'Retirer un accès HTTP par DNS et TLS d\'un sous-dossier de l\'espace SFTP',
+			'le' => 'Installer un certificat Let\'s Encrypt sur un domaine',
+		],
+	]
+);
+
 if (SERVICE !== '') {
 if (SERVICE !== '') {
 	$page['service'] = TITLES[SERVICE]['index'];
 	$page['service'] = TITLES[SERVICE]['index'];
 	if (PAGE !== 'index')
 	if (PAGE !== 'index')

+ 15 - 0
fn/common.php

@@ -52,3 +52,18 @@ function query($action, $table, $conditions = [], $column = NULL) {
 		return array_column($op->fetchAll(PDO::FETCH_ASSOC), $column);
 		return array_column($op->fetchAll(PDO::FETCH_ASSOC), $column);
 	return $op->fetchAll(PDO::FETCH_ASSOC);
 	return $op->fetchAll(PDO::FETCH_ASSOC);
 }
 }
+
+function displayIndex() { ?>
+<dl>
+<?php foreach (DESCRIPTIONS[SERVICE] as $pageId => $pageDesc) {
+	if ($pageId === 'index') continue;
+?>
+	<dt><a href="<?= $pageId ?>"><?= TITLES[SERVICE][$pageId] ?></a></dt>
+	<dd>
+	<?= $pageDesc ?>
+
+	</dd>
+	<?php } ?>
+</dl>
+<?php
+}

+ 1 - 18
public/auth/index.php

@@ -1,22 +1,5 @@
 <?php require "../../common/html.php"; ?>
 <?php require "../../common/html.php"; ?>
 
 
-<dl>
-	<dt><a href="register">Créer un compte</a></dt>
-	<dd>
-		Créer un nouveau compte Niver
-	</dd>
-	<dt><a href="login">Se connecter</a></dt>
-	<dd>
-		Démarrer une nouvelle session avec un compte existant
-	</dd>
-	<dt><a href="logout">Se déconnecter</a></dt>
-	<dd>
-		Terminer la session et effacer ses cookies
-	</dd>
-	<dt><a href="password">Changer la clé de passe</a></dt>
-	<dd>
-		Changer la chaîne de caractères permettant de vous authentifier.
-	</dd>
-</dl>
+<?php displayIndex(); ?>
 
 
 <?php closeHTML(); ?>
 <?php closeHTML(); ?>

+ 1 - 1
public/css/main.css

@@ -4,8 +4,8 @@ body {
 	background-color: var(--background-color);
 	background-color: var(--background-color);
 	color: var(--foreground-color);
 	color: var(--foreground-color);
 	font-family: system-ui, sans-serif;
 	font-family: system-ui, sans-serif;
-	line-height: 1rem + 6%;
 	font-size: 1rem;
 	font-size: 1rem;
+	line-height: 1.5em;
 }
 }
 
 
 nav ul {
 nav ul {

+ 1 - 22
public/ht/index.php

@@ -52,27 +52,6 @@
 	</dd>
 	</dd>
 </dl>
 </dl>
 
 
-<dl>
-	<dt><a href="add-http-onion">Ajouter un accès HTTP par Onion</a></dt>
-	<dd>
-		Ajouter un accès HTTP par service Onion sur un sous-dossier de l'espace SFTP
-	</dd>
-	<dt><a href="add-http-dns">Ajouter un accès HTTP par DNS+TLS</a></dt>
-	<dd>
-		Ajouter un accès HTTP par DNS et TLS sur un sous-dossier de l'espace SFTP
-	</dd>
-	<dt><a href="del-http-onion">Retirer un accès HTTP par Onion</a></dt>
-	<dd>
-		Retirer un accès HTTP par service Onion d'un sous-dossier de l'espace SFTP
-	</dd>
-	<dt><a href="del-http-dns">Retirer un accès HTTP par DNS+TLS</a></dt>
-	<dd>
-		Retirer un accès HTTP par DNS et TLS d'un sous-dossier de l'espace SFTP
-	</dd>
-	<dt><a href="le">Let's Encrypt</a></dt>
-	<dd>
-		Installer un certificat Let's Encrypt sur un domaine
-	</dd>
-</dl>
+<?php displayIndex(); ?>
 
 
 <?php closeHTML(); ?>
 <?php closeHTML(); ?>

+ 8 - 8
public/index.php

@@ -1,26 +1,26 @@
 <?php require "../common/html.php"; ?>
 <?php require "../common/html.php"; ?>
 
 
 <dl>
 <dl>
-	<dt><a class="auth" href="auth/">Authentification</a></dt>
+	<dt><a class="auth" href="auth/"><?= TITLES['auth']['index'] ?></a></dt>
 	<dd>
 	<dd>
-		Gérer son compte Niver
+		<?= DESCRIPTIONS['auth']['index'] ?>
 	</dd>
 	</dd>
 <?php if(CONF['reg']['enabled'] === true) { ?>
 <?php if(CONF['reg']['enabled'] === true) { ?>
-	<dt><a class="reg" href="reg/">Registre</code></a></dt>
+	<dt><a class="reg" href="reg/"><?= TITLES['reg']['index'] ?></code></a></dt>
 	<dd>
 	<dd>
-		Demander l'attribution d'un sous-domaine</code>
+		<?= DESCRIPTIONS['reg']['index'] ?>
 	</dd>
 	</dd>
 <?php } ?>
 <?php } ?>
 <?php if(CONF['ns']['enabled'] === true) { ?>
 <?php if(CONF['ns']['enabled'] === true) { ?>
-	<dt><a class="ns" href="ns/">Serveurs de noms</a></dt>
+	<dt><a class="ns" href="ns/"><?= TITLES['ns']['index'] ?></a></dt>
 	<dd>
 	<dd>
-		Utiliser le serveur de noms de Niver pour héberger ses zones
+		<?= DESCRIPTIONS['ns']['index'] ?>
 	</dd>
 	</dd>
 <?php } ?>
 <?php } ?>
 <?php if(CONF['ht']['enabled'] === true) { ?>
 <?php if(CONF['ht']['enabled'] === true) { ?>
-	<dt><a class="ht" href="ht/">Hypertexte</a></dt>
+	<dt><a class="ht" href="ht/"><?= TITLES['ht']['index'] ?></a></dt>
 	<dd>
 	<dd>
-		Mettre en ligne son site statique sur un espace <abbr title="SSH File Transfert Protocol">SFTP</abbr>, et le faire répondre en <abbr title="HyperText Transfert Protocol">HTTP</abbr> par DNS ou Tor
+		<?= DESCRIPTIONS['ht']['index'] ?>
 	</dd>
 	</dd>
 <?php } ?>
 <?php } ?>
 </dl>
 </dl>

+ 1 - 61
public/ns/index.php

@@ -1,65 +1,5 @@
 <?php require "../../common/html.php"; ?>
 <?php require "../../common/html.php"; ?>
 
 
-<dl>
-	<dt><a href="zone-add">Ajouter une zone</a></dt>
-	<dd>
-		Pour qu'elle soit gérée par le serveur de noms de Niver
-	</dd>
-	<dt><a href="zone-del">Effacer une zone</a></dt>
-	<dd>
-		Effacer toutes les données d'une zone
-	</dd>
-	<dt><a href="dnssec">Obtenir les enregistrements <abbr title="Delegation Signer">DS</abbr></a></dt>
-	<dd>
-		À indiquer à la zone parente pour activer <abbr title="Domain Name System Security Extensions">DNSSEC</abbr>
-	</dd>
-	<dt><a href="ns">Enregistrement <abbr title="Name Server">NS</abbr></a></dt>
-	<dd>
-		Indiquer le serveur de noms d'une zone
-	</dd>
-	<dt><a href="ip">Enregistrements A et AAAA</a></dt>
-	<dd>
-		Indiquer l'adresse IP d'un domaine
-	</dd>
-	<dt><a href="txt">Enregistrement TXT</a></dt>
-	<dd>
-		Associer du texte à un domaine
-	</dd>
-
-	<dt><a href="srv">Enregistrement SRV</a></dt>
-	<dd>
-		Indiquer un serveur pour un domaine
-	</dd>
-	<dt><a href="mx">Enregistrement <abbr title="Mail eXchanger">MX</abbr></a></dt>
-	<dd>
-		Indiquer le serveur mail pour un domaine
-	</dd>
-	<dt><a href="caa">Enregistrement <abbr title="Certification Authority Authorization">CAA</abbr></a></dt>
-	<dd>
-		Indiquer les seules autorités de certifications autorisée à signer les domaines
-	</dd>
-	<dt><a href="tlsa">Enregistrement <abbr title="Transport Layer Security Association">TLSA</abbr></a></dt>
-	<dd>
-		Mettre en place <abbr title="DNS-based Authentication of Named Entities">DANE</abbr> en indiquant l'empreinte d'un certificat <abbr title="Transport Layer Security">TLS</abbr>
-	</dd>
-	<dt><a href="sshfp">Enregistrement <abbr title="Secure SHell FingerPrint">SSHFP</abbr></a></dt>
-	<dd>
-		Indiquer les empreintes de clés <abbr title="Secure SHell">SSH</abbr> d'un domaine
-	</dd>
-
-	<!--
-	<dt><a href="loc">Enregistrement LOC</a></dt>
-	<dd>
-		Indiquer des coordonnées géographiques
-	</dd>
-	<dt><a href="cname">Enregistrement <abbr title="Canonical NAME">CNAME</abbr></a></dt>
-	<dd>
-		Définir un domaine comme étant l'alias d'un autre
-	</dd>
-	<dt><a href="dname">Enregistrement <abbr title="Delegation NAME">DNAME</abbr></a></dt>
-	<dd>
-		Définir les sous-domaines d'un domaine comme étant les alias des sous-domaines d'un autre domaine
-	</dd>-->
-</dl>
+<?php displayIndex(); ?>
 
 
 <?php closeHTML(); ?>
 <?php closeHTML(); ?>

+ 1 - 22
public/reg/index.php

@@ -1,26 +1,5 @@
 <?php require "../../common/html.php"; ?>
 <?php require "../../common/html.php"; ?>
 
 
-<dl>
-	<dt><a href="register">Enregistrer un nouveau domaine</a></dt>
-	<dd>
-		Prendre possession d'un sous-domaine de <code><?= CONF['reg']['registry'] ?></code>
-	</dd>
-	<dt><a href="ns">Enregistrement <abbr title="Name Server">NS</abbr></a></dt>
-	<dd>
-		Indiquer les serveurs de noms de son sous-domaine de <code><?= CONF['reg']['registry'] ?></code>
-	</dd>
-	<dt><a href="ds">Enregistrement <abbr title="Delegation Signer">DS</abbr></a></dt>
-	<dd>
-		Déléguer la confiance <abbr title="Domain Name System Security Extensions">DNSSEC</abbr>
-	</dd>
-	<dt><a href="glue">Glue Record</a></dt>
-	<dd>
-		Indiquer les IP de ses serveurs de noms de son sous-domaine de <code><?= CONF['reg']['registry'] ?></code> dont les adresses se trouvent sur ce même sous-domaine
-	</dd>
-	<dt><a href="unregister">Effacer un nom de domaine</a></dt>
-	<dd>
-		Effacer toutes les données d'un domaine
-	</dd>
-</dl>
+<?php displayIndex(); ?>
 
 
 <?php closeHTML(); ?>
 <?php closeHTML(); ?>