do { $f = "$squelette-$id_rubrique"; if (@file_exists("$f.$ext")) { $squelette = $f; break; } } while ( $maxiter-- and $id_rubrique = quete_parent($id_rubrique) // se proteger des references circulaires and $id_rubrique != $flux['args']['id_rubrique'] ); } // sauver le squelette $flux['data'] = $squelette; } } return $flux; } /** * Cherche l'existence un squelette par langue squelette.en.html * * Options de recherche de squelette par le styliseur, appelé par le pipeline 'styliser' * * @pipeline styliser * * @param array $flux Données du pipeline * @return array Données du pipeline */ function squelettes_par_rubrique_styliser_par_langue($flux) { // uniquement si un squelette a ete trouve if ($squelette = $flux['data']) { $ext = $flux['args']['ext']; // Affiner par lang if ($lang = $flux['args']['lang']) { $l = lang_select($lang); $f = "$squelette." . $GLOBALS['spip_lang']; if ($l) { lang_select(); } if (@file_exists("$f.$ext")) { // sauver le squelette $flux['data'] = $f; } } } return $flux; }