<?php require "debut.inc.php"; ?>


<?php


 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);
  }
}
 ?>

<main>

  <section class="gallerie">

    <?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");
      }

      if (!file_exists($cheminComplet . "/comms")) {
        mkdir($cheminComplet . "/comms");
      }

      $listeElements = new DirectoryIterator($cheminComplet);

      $nbElementsAffiches = 0;
      foreach($listeElements as $listeElements) {




	if ((!$listeElements->isDot()) AND ($listeElements->getFilename() !== "400") AND ($listeElements->getFilename() !== "800") AND ($listeElements->getFilename() !== "comms")) { // 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 loading="lazy" 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 loading="lazy" src="<?php

          if ($dimensions[0] > $dimensions[1]) {
            echo $cheminComplet . "/800/" . $listeElements->getFilename();
          } else {
            echo $cheminComplet . "/400/" . $listeElements->getFilename();
          }
            ?>" alt=""/>

        </a>
      </div>
          <?php
    } else {
      echo $adresseImage;
      echo "ERREUR PHP : L'élément n'est ni un fichier ni un dossier !";
    }

		?>

		<?php
    $nbElementsAffiches++;


	} } } ?>


  </section>

</main>

<?php require "fin.inc.php"; ?>
