Changeset 110333 in spip-zone
- Timestamp:
- May 21, 2018, 9:40:23 AM (3 years ago)
- Location:
- _plugins_/noizetier/trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/noizetier/trunk/formulaires/configurer_noizetier.php
r110112 r110333 14 14 // Injecter les objets exclus 15 15 include_spip('inc/noizetier_objet'); 16 $valeurs['_objets_exclus'] = noizetier_objet_lister_exclusions();16 $valeurs['_objets_exclus'] = lister_objets_exclus(); 17 17 18 18 $valeurs['editable'] = true; … … 48 48 return $retour; 49 49 } 50 51 52 /** 53 * Renvoie la liste des types d'objet ne pouvant pas être personnalisés car ne possédant pas 54 * de page détectable par le noiZetier. 55 * 56 * @api 57 * 58 * @return array|null 59 */ 60 function lister_objets_exclus() { 61 62 static $exclusions = null; 63 64 if (is_null($exclusions)) { 65 $exclusions = array(); 66 include_spip('base/objets'); 67 68 // On récupère les tables d'objets sous la forme spip_xxxx. 69 $tables = lister_tables_objets_sql(); 70 $tables = array_keys($tables); 71 72 // On récupère la liste des pages disponibles et on transforme le type d'objet en table SQL. 73 $where = array('composition=' . sql_quote(''), 'est_page_objet=' . sql_quote('oui')); 74 $pages = sql_allfetsel('type', 'spip_noizetier_pages', $where); 75 $pages = array_map('reset', $pages); 76 $pages = array_map('table_objet_sql', $pages); 77 78 // On exclut donc les tables qui ne sont pas dans la liste issues des pages. 79 $exclusions = array_diff($tables, $pages); 80 } 81 82 return $exclusions; 83 } -
_plugins_/noizetier/trunk/formulaires/editer_page.php
r110321 r110333 91 91 // Ainsi cette liste est toujours l'inverse de l'index [blocs] de l'argument $description_page. 92 92 include_spip('inc/noizetier_bloc'); 93 $blocs = noizetier_bloc_ defaut();93 $blocs = noizetier_bloc_lister_defaut(); 94 94 foreach ($blocs as $_bloc) { 95 95 $valeurs['_blocs'][$_bloc] = noizetier_bloc_lire($_bloc, 'nom'); -
_plugins_/noizetier/trunk/inc/noizetier_bloc.php
r110112 r110333 18 18 * @return array 19 19 */ 20 function noizetier_bloc_ defaut() {20 function noizetier_bloc_lister_defaut() { 21 21 22 22 // Stocker la liste des blocs par défaut pour éviter le recalcul sur le même hit. … … 60 60 $retour = $information ? '' : array(); 61 61 62 if (in_array($bloc, noizetier_bloc_ defaut())) {62 if (in_array($bloc, noizetier_bloc_lister_defaut())) { 63 63 if (!isset($description_bloc[$bloc])) { 64 64 if ($fichier = find_in_path("${bloc}/bloc.yaml")) { -
_plugins_/noizetier/trunk/inc/noizetier_conteneur.php
r110320 r110333 44 44 $conteneur['objet'] = $page_ou_objet['objet']; 45 45 $conteneur['id_objet'] = $page_ou_objet['id_objet']; 46 $conteneur['squelette'] = "${bloc} ";46 $conteneur['squelette'] = "${bloc}/{$page_ou_objet['objet']}"; 47 47 } 48 48 else { … … 102 102 $conteneur['id_noisette'] = intval($elements[2]); 103 103 // -- le squelette 104 // TODO : revoir l'intérêt voire la cohérence de ce champ 104 105 include_spip('ncore/noizetier'); 105 106 $conteneur['squelette'] = type_noisette_localiser('noizetier', $conteneur['type_noisette']); … … 125 126 $conteneur['objet'] = $elements[1]; 126 127 $conteneur['id_objet'] = $elements[2]; 128 // -- le squelette 129 $conteneur['squelette'] = $elements[0]; 127 130 // -- le bloc 128 $conteneur['bloc'] = $elements[0]; 129 // -- le squelette 130 $conteneur['squelette'] = $conteneur['bloc'] . '/' . $conteneur['objet']; 131 list($bloc, ) = explode('/', $conteneur['squelette']); 132 $conteneur['bloc'] = $bloc; 131 133 } 132 134 } -
_plugins_/noizetier/trunk/inc/noizetier_objet.php
r110321 r110333 140 140 141 141 /** 142 * Renvoie la liste des types d'objet ne pouvant pas être personnalisés car ne possédant pas143 * de page détectable par le noiZetier.144 *145 * @api146 *147 * @return array|null148 */149 function noizetier_objet_lister_exclusions() {150 151 static $exclusions = null;152 153 if (is_null($exclusions)) {154 $exclusions = array();155 include_spip('base/objets');156 157 // On récupère les tables d'objets sous la forme spip_xxxx.158 $tables = lister_tables_objets_sql();159 $tables = array_keys($tables);160 161 // On récupère la liste des pages disponibles et on transforme le type d'objet en table SQL.162 $where = array('composition=' . sql_quote(''), 'est_page_objet=' . sql_quote('oui'));163 $pages = sql_allfetsel('type', 'spip_noizetier_pages', $where);164 $pages = array_map('reset', $pages);165 $pages = array_map('table_objet_sql', $pages);166 167 // On exclut donc les tables qui ne sont pas dans la liste issues des pages.168 $exclusions = array_diff($tables, $pages);169 }170 171 return $exclusions;172 }173 174 /**175 142 * Détermine si un type d'objet est activé dans la configuration du noiZetier. 176 143 * Si oui, ses objets peuvent recevoir une configuration de noisettes. -
_plugins_/noizetier/trunk/inc/noizetier_page.php
r110320 r110333 25 25 // Initialiser les blocs par défaut 26 26 include_spip('inc/noizetier_bloc'); 27 $options['blocs_defaut'] = noizetier_bloc_ defaut();27 $options['blocs_defaut'] = noizetier_bloc_lister_defaut(); 28 28 29 29 // Choisir le bon répertoire des pages … … 159 159 * @api 160 160 * 161 * @uses noizetier_bloc_ defaut()161 * @uses noizetier_bloc_lister_defaut() 162 162 * 163 163 * @param string $page … … 217 217 // Initialisation des blocs avec la liste des blocs par défaut 218 218 include_spip('inc/noizetier_bloc'); 219 $blocs = noizetier_bloc_ defaut();219 $blocs = noizetier_bloc_lister_defaut(); 220 220 221 221 // Si la liste des blocs exclus n'a pas été passé en argument on les cherche dans la configuration … … 374 374 * 375 375 * @uses noizetier_page_initialiser_dossier() 376 * @uses noizetier_bloc_ defaut()376 * @uses noizetier_bloc_lister_defaut() 377 377 * 378 378 * @param $page … … 394 394 if (empty($options['blocs_defaut'])) { 395 395 include_spip('inc/noizetier_bloc'); 396 $options['blocs_defaut'] = noizetier_bloc_ defaut();396 $options['blocs_defaut'] = noizetier_bloc_lister_defaut(); 397 397 } 398 398 -
_plugins_/noizetier/trunk/ncore/noizetier.php
r110247 r110333 285 285 // -- si le conteneur n'est pas une noisette, le complément se déduit du conteneur lui-même. 286 286 if (!empty($conteneur['squelette'])) { 287 $squelette = strtolower($conteneur['squelette']);288 289 287 if (!empty($conteneur['objet']) and !empty($conteneur['id_objet']) and ($id = intval($conteneur['id_objet']))) { 290 288 // Objet 291 289 $complement['objet'] = $conteneur['objet']; 292 290 $complement['id_objet'] = $id; 293 $complement['bloc'] = $conteneur[' squelette'];291 $complement['bloc'] = $conteneur['bloc']; 294 292 } else { 293 $squelette = strtolower($conteneur['squelette']); 295 294 $page = basename($squelette); 296 295 $identifiants_page = explode('-', $page, 2); … … 303 302 $complement['type'] = $identifiants_page[0]; 304 303 } 305 $bloc = dirname($squelette); 306 if ($bloc != '.') { 307 $complement['bloc'] = basename($bloc); 308 } 304 $complement['bloc'] = $conteneur['bloc']; 309 305 } 310 306 }
Note: See TracChangeset
for help on using the changeset viewer.