update du projet, xml collection enlevé et méthode fait maison ajouter
This commit is contained in:
144
index.php
Executable file → Normal file
144
index.php
Executable file → Normal file
@@ -1,95 +1,75 @@
|
||||
<?php
|
||||
// chargement du dossier custom
|
||||
// si il n'existe pas, c'est que la première installation n'a pas eu lieu
|
||||
// donc renommer config-custom en config
|
||||
if (!is_dir("config")) {
|
||||
if (is_dir("config-sample")) {
|
||||
rename("config-sample","config");
|
||||
// on dirait une première installation, créer le directory "content" au besoin
|
||||
if(!is_dir("contenus")){
|
||||
mkdir("contenus", 0775, true);
|
||||
mkdir("contenus/cache", 0775, true);
|
||||
mkdir("contenus/fichiers", 0775, true);
|
||||
mkdir("contenus/xmls", 0775, true);
|
||||
}
|
||||
} else {
|
||||
die("Problème : pas de dossier config-sample ni config. Il doit y avoir un problème");
|
||||
}
|
||||
ini_set('display_errors', 0);
|
||||
ini_set('log_errors', 1);
|
||||
ini_set('error_log', 'error.log');
|
||||
|
||||
require_once 'vendor/autoload.php';
|
||||
|
||||
use Symfony\Component\Yaml\Yaml;
|
||||
|
||||
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
|
||||
$itemsPerPage = 10;
|
||||
|
||||
$dir = "data/yaml/*.yaml";
|
||||
$yamlFiles = glob($dir);
|
||||
$data = [];
|
||||
|
||||
foreach ($yamlFiles as $yamlFile) {
|
||||
$data[] = Yaml::parseFile($yamlFile);
|
||||
}
|
||||
include("config/config.php");
|
||||
require("inc/inc-functions.php");
|
||||
require("inc/inc-display-functions.php");
|
||||
require("inc/classe_xml.php");
|
||||
|
||||
// charger la structure pour le menu
|
||||
$xml=new classe_xml(MODELE);
|
||||
$structure=$xml->get_contenu();
|
||||
usort($data, function ($a, $b) {
|
||||
return $a['année'] <=> $b['année'];
|
||||
});
|
||||
|
||||
include("inc/inc-head.php");
|
||||
?>
|
||||
$offset = ($page - 1) * $itemsPerPage;
|
||||
$itemsToLoad = array_slice($data, $offset, $itemsPerPage);
|
||||
|
||||
include 'inc/header.php'; ?>
|
||||
|
||||
<section class="section">
|
||||
<div class="container">
|
||||
<div class="columns is-multiline">
|
||||
|
||||
<?php foreach ($itemsToLoad as $key => $item): ?>
|
||||
<div class="column is-one-fifth">
|
||||
<a href="memoire.php?file=<?= urlencode($yamlFiles[$key]); ?>" class="card-link">
|
||||
<div class="card">
|
||||
<?php if (isset($item['couverture'])): ?>
|
||||
<div class="card-image">
|
||||
<figure class="image ">
|
||||
<img src="<?= $item['couverture']; ?>" alt="Image preview">
|
||||
</figure>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<div class="card-content">
|
||||
<h4 class="title is-4">
|
||||
<?= $item['titre']; ?>
|
||||
</h4>
|
||||
<h2 class="subtitle">
|
||||
<?= $item['auteurice']; ?>
|
||||
</p>
|
||||
<h3 class="tag title is-6 is-link is-light">
|
||||
<?= $item['année']; ?>
|
||||
</h3>
|
||||
<p class="block content">
|
||||
<?php
|
||||
$excerpt_length = 150;
|
||||
$description_excerpt = substr($item['description'], 0, $excerpt_length) . '...';
|
||||
?>
|
||||
<?= $description_excerpt; ?>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<section class="container-fluid mb-3">
|
||||
<div id="tools-multi" style="display:none">
|
||||
<div class='mb-3 mx-3 pb-2 border-bottom'>
|
||||
<div class='mt-1 d-inline-block mr-4 fat' >
|
||||
Ajouter des éléments par simple clic
|
||||
</div>
|
||||
<div class='mt-1 d-inline-block mr-4 pointer' onclick='collection_items_filtre("cochertout")'>
|
||||
Tout cocher
|
||||
</div>
|
||||
<div class='mt-1 d-inline-block mr-4 pointer' onclick='collection_items_filtre("cocherrien")'>
|
||||
Tout décocher
|
||||
</div>
|
||||
<div class='mt-1 d-inline-block mr-4 pointer' onclick='collection_items_filtre("showselect")'>
|
||||
Ne montrer que la sélection
|
||||
</div>
|
||||
<div class='mt-1 d-inline-block mr-4 pointer' onclick='collection_items_filtre("showall")'>
|
||||
Montrer tout
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
|
||||
</div>
|
||||
|
||||
<div data-affichage="mosaique" id="big-container">
|
||||
<div class="row mt-2" id="items-container" data-cle="<?php echo $xml->cle; ?>">
|
||||
<?php
|
||||
// charger le cache s'il existe
|
||||
// sinon le fabriquer
|
||||
if(file_exists(CHEMIN.DOSSIER_CACHE."cache.html")){
|
||||
echo file_get_contents(CHEMIN.DOSSIER_CACHE."cache.html");
|
||||
} else {
|
||||
$page="";
|
||||
// afficher les éléments
|
||||
//$xml=new classe_xml(MODELE);
|
||||
$liste=glob(CHEMIN.DOSSIER_XML."*.xml",GLOB_BRACE);
|
||||
foreach($liste as $item){
|
||||
$xml->lire_xml($item);
|
||||
$page.=display_mosaique_item($xml,true);
|
||||
}
|
||||
file_put_contents(CHEMIN.DOSSIER_CACHE."cache.html", $page);
|
||||
echo $page;
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div id="side-container">
|
||||
<div class='mover'></div>
|
||||
<div class="container-inner"></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="fullpage-container" class="fullframe">
|
||||
<div class="container-inner"></div>
|
||||
</section>
|
||||
<section id="gal-container" class="fullframe">
|
||||
<div class="container-inner"></div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<?php
|
||||
// insert du pipeline en bottom
|
||||
if(file_exists(CHEMIN.DOSSIER_CUSTOM."insert-post-mosaique.php")){
|
||||
include(CHEMIN.DOSSIER_CUSTOM."insert-post-mosaique.php");
|
||||
}
|
||||
|
||||
include("inc/inc-footer.php");
|
||||
include 'inc/footer.php';
|
||||
?>
|
||||
Reference in New Issue
Block a user