2019-06-24 19:34:44 +02:00
< ? php
if ( ! isset ( $_GET [ 'chemin' ])) {
header ( 'Location: index.php?chemin=' );
}
function creerMiniature ( $cheminComplet , $adresseImage , $nomImage ) {
if ( ! file_exists ( $cheminComplet . " /400/ " . $nomImage )) {
$image = imagecreatefromjpeg ( $adresseImage );
$dimensions = getimagesize ( $adresseImage );
$nouvHauteur = (( 400 * $dimensions [ 1 ]) / $dimensions [ 0 ]);
$imageSrt = imagecreatetruecolor ( 400 , $nouvHauteur );
imagecopyresampled ( $imageSrt , $image , 0 , 0 , 0 , 0 , 400 , $nouvHauteur , $dimensions [ 0 ], $dimensions [ 1 ]);
imagejpeg ( $imageSrt , $cheminComplet . " /400/ " . $nomImage );
imagedestroy ( $imageSrt );
imagedestroy ( $image );
}
if ( ! file_exists ( $cheminComplet . " /800/ " . $nomImage )) {
$image = imagecreatefromjpeg ( $adresseImage );
$dimensions = getimagesize ( $adresseImage );
$nouvHauteur = (( 800 * $dimensions [ 1 ]) / $dimensions [ 0 ]);
$imageSrt = imagecreatetruecolor ( 800 , $nouvHauteur );
imagecopyresampled ( $imageSrt , $image , 0 , 0 , 0 , 0 , 800 , $nouvHauteur , $dimensions [ 0 ], $dimensions [ 1 ]);
imagejpeg ( $imageSrt , $cheminComplet . " /800/ " . $nomImage );
imagedestroy ( $imageSrt );
imagedestroy ( $image );
}
}
if ( ! function_exists ( 'array_key_last' )) {
function array_key_last ( $array ) {
$key = NULL ;
if ( is_array ( $array )) {
end ( $array );
$key = key ( $array );
}
return $key ;
}
} ?>
<! DOCTYPE HTML >
< html lang = " fr " >
< head >
< meta charset = " UTF-8 " />
< title > Super·F·lux < ? php
$nomDossiers = preg_split ( " #/# " , $_GET [ 'chemin' ]); // Sépare le chemin en une liste de dossiers qui le composent
foreach ( $nomDossiers as $niveauDossier => $nomDossier ) {
if ( isset ( $nomDossier )) {
if ( ! is_null ( $nomDossier )) {
echo " > " . $nomDossier ;
}
}
}
?> </title>
< meta name = " author " content = " Cécile Chevallier " >
< meta name = " publisher " content = " Miraty " >
< meta name = " distribution " content = " global " >
< meta name = " robots " content = " index, follow " >
< meta name = " keywords " lang = " fr " content = " superflux " >
< meta name = " description " content = " Super·F·lux, photographies de Cécile Chevallier sous CC BY-SA 4.0 " >
< meta name = " viewport " content = " width=device-width, initial-scale=1 " >
< style >
2019-10-15 15:26:58 +02:00
< ? php
2019-10-15 15:48:12 +02:00
$env = " prod " ;
2019-10-15 15:26:58 +02:00
require " lessphp/lessc.inc.php " ;
$less = new lessc ;
if ( $env == " prod " ) { // En production : minimise et met en cache style.less dans style.css
$less -> setFormatter ( " compressed " );
$less -> checkedCompile ( " style.less " , " style.css " );
echo file_get_contents ( " ubuntu/ubuntu.min.css " ) . file_get_contents ( " style.css " ); // Inclus toutes les CSS dans le document HTML (= moins de requêtes HTTP)
} else if ( $env == " dev " ) { // En développement : compile style.less à chaque chargement de page
echo file_get_contents ( " ubuntu/ubuntu.min.css " ) . $less -> compileFile ( " style.less " );
} else {
echo " Erreur : $env doit valoir prod ou dev " ;
} ?>
2019-06-24 19:34:44 +02:00
</ style >
<!-- Lightbox https :// lokeshdhakar . com / projects / lightbox2 / -->
< link href = " lightbox/dist/css/lightbox.min.css " rel = " stylesheet " >
< script src = " lightbox/dist/js/lightbox-plus-jquery.min.js " ></ script >
< script >
lightbox . option ({
'resizeDuration' : 0 ,
'fadeDuration' : 200
})
</ script >
</ head >
< body >
< header >
< h1 >< a href = " index.php " title = " Retour à la page d'accueil " > Super·F·lux </ a ></ h1 >
< ? php
$nomDossiers = preg_split ( " #/# " , $_GET [ 'chemin' ]); // Sépare le chemin en une liste de dossiers qui le composent
foreach ( $nomDossiers as $niveauDossier => $nomDossier ) { ?>
< h < ? php echo $niveauDossier + 2 ; ?> ><a href="index.php?chemin=<?php
if ( array_key_last ( $nomDossiers ) == $niveauDossier ) {
echo $_GET [ 'chemin' ];
} else {
echo rtrim ( stristr ( $_GET [ 'chemin' ], $nomDossiers [ $niveauDossier + 1 ], TRUE ), " / " );
}
?> "><?php echo $nomDossier; ?></a></h<?php echo $niveauDossier + 2; ?>>
2019-10-15 15:17:54 +02:00
< section class = " presentation " >
2019-06-24 19:34:44 +02:00
< ? php
2019-10-15 15:17:54 +02:00
switch ( $nomDossier ) {
case " Escape games " : ?>
De ces instants qui échappent aux lois de la gravité , sortent du cadre ou des sentiers battus , changent de cap , là où on aperçoit enfin le bout du tunnel , là où on peut enfin prend l ' air…
< br >
Ouverture des possibles .
< ? php break ;
case " Le chant du Petit " : ?>
Les petites choses chantent aussi .
< ? php break ;
case " Landscape games " : ?>
Lieux d’ émergence des Escape games . Composés des mille et un chants du Petit .
< ? php break ;
case " Créatures fantastiques " : ?>
Je vais mieux quand d’ un arbre émerge une grand - mère prenant soin d 'une jeune touffe d' herbe , un oiseau dans une fleur , un visage sur un arbre , un dragon dans les nuages .
< br >
2019-10-15 15:48:12 +02:00
Je me sens vivante quand j 'aperçois un coq émergeant d' une crotte de chien sur un trottoir , quand la fée des neiges apparaît à mon balcon , quand les ombres suggèrent peut - être des oiseaux végétaux , quand un visage apparaît dans une feuille de chou .
2019-10-15 15:17:54 +02:00
< ? php break ;
case " s-Faire-s " : ?>
Au contraire du croisement de fer , ce qui croît quand on l ' s Faire ( s ) les sphères .
< ? php break ;
case " Super-Positions et autres Super-Cheries " : ?>
Montages et collages sous logiciel dédié ( Photoshop , peintures ) …
< ? php break ;
case " Traits de lumière " : ?>
Light - Painting , peindre avec la lumière , ou plutôt avec l’ appareil - pinceau , puisque peindre avec la lumière est déjà l’ objet de la photographie . Ces traits révèlent parfois des créatures fantastiques .
< ? php break ;
case " Aqua bon " : ?>
Lieu et source de vie par essence , mouvante , calme ou soulevée par la brise , l’ eau est souvent le lieu de naissance de créatures fantastiques .
< ? php break ;
case " Forts Traits " : ?>
Portraits studio , cours municipaux pour adultes , 2015
< ? php break ;
case " " : ?>
< div class = " contPremiereImage " >< img class = " premiereImage " src = " index.jpg " alt = " Vive la lenteur " /></ div >
Super·F·lux est une collection de perceptions lumineuses ( lux ) du monde tel que je ( une ·F· Femme ) l ' aime ( Super ) .
< br >< br >
Des instants , des phénomènes , des êtres , des petites choses qui peuvent sembler superflues , anodines , banales , pas originales , à côté desquelles il est tout à fait possible de passer sans les voir . Et qui sont pourtant essentielles .
< blockquote >
2019-06-24 19:34:44 +02:00
2019-10-15 15:17:54 +02:00
« Je préfère vivre dans un monde animé . Je crois que nos chances de créer une culture plus saine , dynamique , libre et équilibrée sont meilleures si nous nous percevons nous - mêmes comme des cellules vivantes appartenant à un corps vivant , imprégné d’ une conscience sous - jacente , plutôt que de percevoir le monde comme de la matière inanimée et exploitable . »
< br >
< div class = " source " >< cite >< small > Starhawk , « Quel monde voulons - nous ? » , éditions Cambourakis , collection Sorcières , 2019 </ small ></ cite ></ div >
</ blockquote >
2019-06-24 19:34:44 +02:00
2019-10-15 15:17:54 +02:00
< ? php break ;
} ?>
</ section >
< ? php } ?>
2019-06-24 19:34:44 +02:00
</ header >
< main >
< ? php if ( preg_match ( " # \ . \ .# " , $_GET [ 'chemin' ])) {
exit ( " Par sécurité, .. ne peut être utilisé dans un chemin " );
} else {
$cheminComplet = " catalogue/ " . $_GET [ 'chemin' ] . " " ;
if ( ! file_exists ( $cheminComplet . " /400 " )) {
mkdir ( $cheminComplet . " /400 " );
}
if ( ! file_exists ( $cheminComplet . " /800 " )) {
mkdir ( $cheminComplet . " /800 " );
}
$listeElements = new DirectoryIterator ( $cheminComplet );
$nbElementsAffiches = 0 ;
foreach ( $listeElements as $listeElements ) {
if (( ! $listeElements -> isDot ()) AND ( $listeElements -> getFilename () !== " 400 " ) AND ( $listeElements -> getFilename () !== " 800 " )) { // Ignore les éléments "." et ".." ainsi que les dossiers d'images redimensionnées
$adresseImage = $cheminComplet . " / " . $listeElements -> getFilename ();
if ( is_dir ( $adresseImage )) { ?>
< div class = " element dossier " >
< a href = " index.php?chemin=<?php if (!empty( $_GET['chemin'] )) {
echo $_GET [ 'chemin' ] . " / " . $listeElements -> getFilename ();
} else {
echo $listeElements -> getFilename ();
}
?> ">
< img src = " <?php echo $cheminComplet . " / " . $listeElements->getFilename () . " / 400 / index . jpg " ; ?> " >
< div class = " nomElementDossier " >< ? php echo $listeElements -> getFilename (); ?> </div>
</ a >
</ div >
< ? php
} else if ( is_file ( $adresseImage )) {
creerMiniature ( $cheminComplet , $adresseImage , $listeElements -> getFilename ())
?>
< div class = " element image<?php
$dimensions = getimagesize ( $adresseImage );
if ( $dimensions [ 0 ] > $dimensions [ 1 ]) {
echo " paysage " ;
} else {
echo " portrait " ;
}
?> ">
< a href = " <?php echo $cheminComplet . " / " . $listeElements->getFilename (); ?> " data - title = " Image créée par Cécile Chevallier et diffusée sous CC BY-SA 4.0. " data - lightbox = " <?php echo $listeElements->getFilename (); ?> " >
< img src = " <?php
if ( $dimensions [ 0 ] > $dimensions [ 1 ]) {
echo $cheminComplet . " /800/ " . $listeElements -> getFilename ();
} else {
echo $cheminComplet . " /400/ " . $listeElements -> getFilename ();
}
?> " alt=""/>
</ a >
</ div >
< ? php
} else {
echo $cheminComplet . $listeElements -> getFilename ();
echo " ERREUR PHP : L'élément n'est ni un fichier ni un dossier ! " ;
}
?>
< ? php
$nbElementsAffiches ++ ;
} } } ?>
</ main >
< footer >
< br >
Images créées par Cécile Chevallier et diffusées sous CC BY - SA 4.0 .
< br >
2019-06-24 19:41:52 +02:00
< a href = " https://code.antopie.org/miraty/superflux " > Site Web </ a > créé par < a href = " https://www.antopie.org " > Miraty </ a > sous < a href = " LICENSE.html " > AGPLv3 +</ a >.
2019-06-24 19:34:44 +02:00
</ footer >
</ body >
</ html >