Skip to content
Snippets Groups Projects
Select Git revision
  • 098e50597e20772c8c273c4138da3fd109aadcb1
  • main default protected
2 results

functions.php

Blame
  • functions.php 19.01 KiB
    <?php
    //Chargement des pages
    function loadPage(){
        global $localSettings, $urlPath;
        // S'il existe un paramètre on l'affecte à pageName
    
        // Ici on va vérifier le mode de récupération de l'url
        if($localSettings["urlMode"] == "parameters"){
            // Ici on fonctionne en mode paramètres, on va donc reconstruire l'alias
    
            $alias = array();
            // Si le paramètre admin existe (pas besoin qu'il ai de valeur)
            if(isset($_GET['admin'])){
                $alias[] = "admin"; // Alors on l'ajoute à l'alias
            }
            // Pareil pour les pages
            if(isset($_GET['page']) && !empty($_GET['page'])){
                $alias[] = $_GET['page'];
            }else{
                // Maisi ici on va donner une valeur par défaut
                $alias[] = "vitrine";
            }
        }else{
            // Si on est en mode alias, alors on récupère directement la variable $urlPath
            $alias = $urlPath;
        }
    
        if(empty($alias[0])){
            // Si le premier alias est vide, on va donc charger la page vitrine
            $alias[0] = "vitrine";
        }
    
        // Maintenant qu'alias[0] aura toujours une valeur, on peut commencer à la comparer
        if($alias[0]=="admin"){
            if(!isset($alias[1])||empty($alias[1])){
                $alias[1] = "index";
            }
    
            // Si le premier alias est admin, on va donc appeller la fonction qui se charge de gérer les pages admin
            array_shift($alias); // On supprime le /admin pour que la fonction loadAdminPage puisse directement vérifier les pages
            require "core/classes/Admin.php";
            Admin::loadPage($alias);
        }else{
            // Il s'agit d'une page client
            require "core/classes/Client.php";
            Client::loadPage($alias);
        }
    }
    
    // Générer les liens
    function genPageLink($path="/"){
        global $localSettings;
        if (substr($path, 0, 1) != '/') {
            $path = '/' . $path;
        }
    
        $pages = explode("/", $path);
        array_shift($pages);
    
        $return = "index.php?";
        // Ici on va vérifier le mode de récupération de l'url
        // On prend l'exemple de ces appels: 
        // /login, /recettes?search=valeur, /admin/recettes?filterBy=DESC
        // 
        if($localSettings["urlMode"] == "parameters"){
            // est-ce que c'est une page admin?
            if($pages[0]=="admin"){
                // Oui
                if(isset($pages[1]) && !empty($pages[1])){
                    $return = $return . "page=".$pages[1];