2019-03-17 16:03:43 +01:00
< ? php
2019-03-28 22:44:06 +01:00
2019-08-13 21:17:08 +02:00
// ----- Paramètres -----
2019-03-28 22:44:06 +01:00
2020-03-06 21:34:31 +01:00
deleteOldQR ( 60 * 60 * 24 * 7 ); // Temps en secondes après lequel le code QR sera supprimé lors du chargement d'un page
2019-03-28 22:44:06 +01:00
2020-03-06 21:34:31 +01:00
$theme = " parinux " ; // dark, light ou parinux
2019-08-13 21:17:08 +02:00
2020-03-06 21:34:31 +01:00
$fileNameLenght = 32 ; // Longueur du nom du fichier du code QR
2019-03-17 16:03:43 +01:00
2020-03-06 21:34:31 +01:00
// ----- Trucs nécessaires partout -----
2019-08-13 21:17:08 +02:00
2020-03-06 21:34:31 +01:00
// Définit l'URL racine
if ( ! empty ( $_SERVER [ 'HTTPS' ]) && $_SERVER [ 'HTTPS' ] != 'off' )
$protocol = " https " ;
else
$protocol = " http " ;
$instPath = $protocol . " :// " . $_SERVER [ 'HTTP_HOST' ] . $_SERVER [ 'REQUEST_URI' ];
$instPath = preg_replace ( '#\?.*$#' , '' , $instPath );
$instPath = preg_replace ( '#(manifest|opensearch|index).php$#i' , '' , $instPath );
2019-03-17 16:03:43 +01:00
2019-08-13 21:17:08 +02:00
require " themes/ " . $theme . " /theme.php " ; // Charge le thème graphique
2019-03-17 16:03:43 +01:00
function generateRandomString ( $length ) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' ;
$charactersLength = strlen ( $characters );
$randomString = '' ;
for ( $i = 0 ; $i < $length ; $i ++ ) {
$randomString .= $characters [ rand ( 0 , $charactersLength - 1 )];
}
return $randomString ;
}
2020-03-06 21:34:31 +01:00
function deleteOldQR ( $tempsDeSuppression ) {
2019-08-13 21:17:08 +02:00
/*
2020-03-06 21:34:31 +01:00
Cette fonction supprime les fichiers ( normalement des images de codes QR )
dans temp / plus vieux que le temps en seconde passé en argument
2019-08-13 21:17:08 +02:00
*/
2019-03-17 16:03:43 +01:00
$listeCodesQR = new DirectoryIterator ( " temp " );
foreach ( $listeCodesQR as $listeCodesQR ) {
2020-03-06 21:34:31 +01:00
if ( $listeCodesQR -> getFilename () != " . " AND $listeCodesQR -> getFilename () != " .. " AND $listeCodesQR -> getFilename () != " .gitkeep " ) {
2019-03-17 16:03:43 +01:00
if (( time () - filemtime ( " temp/ " . $listeCodesQR -> getFilename ())) > $tempsDeSuppression ) { // Si le temps actuel (en heure Posix) moins la date de dernière modification de l'image est supérieur à la durée de vie demandée de l'image
unlink ( " temp/ " . $listeCodesQR -> getFilename ()); // Alors supprimer cette image
}
}
}
}