diff options
Diffstat (limited to 'controller/admin.php')
| -rw-r--r-- | controller/admin.php | 51 |
1 files changed, 30 insertions, 21 deletions
diff --git a/controller/admin.php b/controller/admin.php index 3c2b613..ba6fd83 100644 --- a/controller/admin.php +++ b/controller/admin.php | |||
| @@ -98,11 +98,6 @@ function discoEdit($numArticle, $suppression) | |||
| 98 | } | 98 | } |
| 99 | } | 99 | } |
| 100 | 100 | ||
| 101 | $albumsJSON = array_reverse($Album->readAll()); // lourd | ||
| 102 | |||
| 103 | // $albums contient un tableau de chaines JSON, | ||
| 104 | // on extrait de chacune 3 variables: titre, année, pochette | ||
| 105 | |||
| 106 | // traitements PHP pour l'éditeur | 101 | // traitements PHP pour l'éditeur |
| 107 | // sécurisation du contenu pré-existant inséré dans l'éditeur | 102 | // sécurisation du contenu pré-existant inséré dans l'éditeur |
| 108 | if($numArticle >= 0 && !$suppression) | 103 | if($numArticle >= 0 && !$suppression) |
| @@ -111,44 +106,58 @@ function discoEdit($numArticle, $suppression) | |||
| 111 | $texte = preparationCKeditor($numArticle, $texte); | 106 | $texte = preparationCKeditor($numArticle, $texte); |
| 112 | } | 107 | } |
| 113 | 108 | ||
| 114 | // changer les chaines JSON en tableaux | 109 | |
| 110 | // contenu de tous les fichiers JSON (= tableau de chaines) | ||
| 111 | $albumsJSON = $Album->readAll(); | ||
| 112 | // noms des fichiers JSON | ||
| 113 | $albumNamesJSON = $Album->getFileList(); | ||
| 114 | |||
| 115 | // changer les chaines JSON en tableaux: titre, année, pochette | ||
| 115 | $i = 0; | 116 | $i = 0; |
| 117 | $annees = array(); | ||
| 116 | foreach($albumsJSON as $oneAlbum) | 118 | foreach($albumsJSON as $oneAlbum) |
| 117 | { | 119 | { |
| 118 | $albumsJSON[$i] = json_decode($oneAlbum, true); | 120 | $albumsJSON[$i] = json_decode($oneAlbum, true); |
| 121 | |||
| 122 | // ajout des noms des fichiers JSON | ||
| 123 | $albumsJSON[$i][3] = $albumNamesJSON[$i]; | ||
| 124 | $annees[$i] = $albumsJSON[$i][1]; | ||
| 119 | $i++; | 125 | $i++; |
| 120 | } | 126 | } |
| 127 | // tri d'un tableau multidimensionnel | ||
| 128 | array_multisort($annees, $albumsJSON); | ||
| 121 | 129 | ||
| 122 | // on passe maintenant au contenu HTML | 130 | // on passe maintenant au contenu HTML |
| 123 | $albumNamesJSON = array_reverse($Album->getFileNames()); | ||
| 124 | $Album->setFormat('html'); | 131 | $Album->setFormat('html'); |
| 125 | $Album->makeFileList(); | 132 | $Album->makeFileList(); |
| 126 | $albumNamesHTML = array_reverse($Album->getFileNames()); | 133 | $albumNamesHTML = $Album->getFileList(); |
| 127 | 134 | ||
| 128 | // lien vers le HTML ou ancre? | 135 | // lien vers le HTML ou ancre? |
| 129 | // pour chaque album, détecter le fichier html | 136 | // pour chaque album, détecter le fichier html |
| 130 | // si non, ne fournir qu'un lien d'ancre pour la liste d'album | 137 | // si non, ne fournir qu'un lien d'ancre pour la liste d'album |
| 131 | $i = 0; | 138 | $i = 0; |
| 132 | $avecLien = []; | 139 | $avecLien = []; |
| 133 | foreach($albumNamesJSON as $oneAlbum) | 140 | foreach($albumsJSON as $oneAlbum) |
| 134 | { | 141 | { |
| 135 | // nom sans extension | 142 | // nom sans extension |
| 136 | $chemin = pathinfo($oneAlbum); | 143 | $chemin = pathinfo($oneAlbum[3]); |
| 137 | $nomJSONsansExt = $chemin['filename']; | 144 | $nomJSONsansExt = $chemin['filename']; |
| 138 | $chemin = pathinfo($albumNamesHTML[0]); | ||
| 139 | 145 | ||
| 140 | // détection | 146 | // au cas où la discographie ne contient aucun html |
| 141 | if(file_exists($chemin['dirname'] . '/' . $nomJSONsansExt . '.html')) | 147 | if(!empty($albumNamesHTML)) |
| 142 | { | 148 | { |
| 143 | $lienAlbum[$i] = 'album&album_code=' . $nomJSONsansExt . '&album_name=' . $albumsJSON[$i][0]; | 149 | if(file_exists('data/discographie/html/' . $nomJSONsansExt . '.html')) |
| 144 | $avecLien[$i] = true; | 150 | { |
| 151 | $lienAlbum[$i] = 'album&album_code=' . $nomJSONsansExt . '&album_name=' . $albumsJSON[$i][0]; | ||
| 152 | $avecLien[$i] = true; | ||
| 153 | } | ||
| 154 | else | ||
| 155 | { | ||
| 156 | $lienAlbum[$i] = 'discographie#' . $albumsJSON[$i][0]; | ||
| 157 | $avecLien[$i] = false; | ||
| 158 | } | ||
| 159 | $i++; | ||
| 145 | } | 160 | } |
| 146 | else | ||
| 147 | { | ||
| 148 | $lienAlbum[$i] = 'discographie#' . $albumsJSON[$i][0]; | ||
| 149 | $avecLien[$i] = false; | ||
| 150 | } | ||
| 151 | $i++; | ||
| 152 | } | 161 | } |
| 153 | 162 | ||
| 154 | // morceaux en HTML Ã assembler | 163 | // morceaux en HTML Ã assembler |
