From 08d85b105623eee03a16f1ac46a412bfa57c4392 Mon Sep 17 00:00:00 2001 From: Fil <fil@rezo.net> Date: Sun, 23 Dec 2007 21:31:53 +0000 Subject: [PATCH] vertebrer ?page=table:toto est reserve aux adultes (membres de _ID_WEBMESTRES) --- ecrire/inc/autoriser.php | 3 ++- ecrire/public/styliser.php | 31 ++++++++++++++----------------- ecrire/public/vertebrer.php | 6 ++++-- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/ecrire/inc/autoriser.php b/ecrire/inc/autoriser.php index 4897bc63c7..ee7e8824a9 100644 --- a/ecrire/inc/autoriser.php +++ b/ecrire/inc/autoriser.php @@ -24,7 +24,8 @@ define('_ADMINS_RESTREINTS', true); define('_STATUT_AUTEUR_CREATION', '1comite'); // statuts associables a des rubriques (separes par des virgules) define('_STATUT_AUTEUR_RUBRIQUE', _ADMINS_RESTREINTS ? '0minirezo' : ''); - +// id du ou des webmestres, '1:5:90' a regler dans mes_options +define ('_ID_WEBMESTRES', '1'); // surcharge possible de autoriser(), sinon autoriser_dist() if (!function_exists('autoriser')) { diff --git a/ecrire/public/styliser.php b/ecrire/public/styliser.php index 5a0bb18003..6a03dfc9ec 100644 --- a/ecrire/public/styliser.php +++ b/ecrire/public/styliser.php @@ -25,31 +25,28 @@ function public_styliser_dist($fond, $id_rubrique, $lang='', $connect='', $ext=' if (!$base = find_in_path("$fond.$ext")) { // Si pas de squelette regarder si c'est une table $trouver_table = charger_fonction('trouver_table', 'base'); - include_spip('inc/autoriser'); - if (autoriser('sauvegarder') - AND preg_match('/^table:(.*)$/', $fond, $r) - AND $table = $trouver_table($r[1], $connect)) { + if (preg_match('/^table:(.*)$/', $fond, $r) + AND $table = $trouver_table($r[1], $connect) + AND include_spip('inc/autoriser') + AND autoriser('webmestre') + ) { $fond = $r[1]; - $base = _DIR_TMP . $fond . ".$ext"; + $base = _DIR_TMP . 'table_'.$fond . ".$ext"; if (!file_exists($base) OR $GLOBALS['var_mode']) { $vertebrer = charger_fonction('vertebrer', 'public'); - $f = fopen($base, 'w'); - fwrite($f, $vertebrer($table)); - fclose($f); + ecrire_fichier($base, $vertebrer($table)); } } else { // on est gentil, mais la ... - include_spip('public/debug'); - erreur_squelette(_T('info_erreur_squelette2', - array('fichier'=>"'$fond'")), - $GLOBALS['dossier_squelettes']); - $f = find_in_path(".$ext"); // on ne renvoie rien ici, c'est le resultat vide qui provoquere un 404 si necessaire - return array(substr($f, 0, -strlen(".$ext")), - $ext, - $ext, - $f); + include_spip('public/debug'); + erreur_squelette(_T('info_erreur_squelette2', + array('fichier'=>"'$fond'")), + $GLOBALS['dossier_squelettes']); + $f = find_in_path(".$ext"); // on ne renvoie rien ici, c'est le resultat vide qui provoquere un 404 si necessaire + return array(substr($f, 0, -strlen(".$ext")), $ext, $ext, $f); } } + // supprimer le ".html" pour pouvoir affiner par id_rubrique ou par langue $squelette = substr($base, 0, - strlen(".$ext")); diff --git a/ecrire/public/vertebrer.php b/ecrire/public/vertebrer.php index b402375dfc..deaffa4d08 100755 --- a/ecrire/public/vertebrer.php +++ b/ecrire/public/vertebrer.php @@ -148,7 +148,7 @@ function public_vertebrer_dist($desc) <div id='contenu'> <h1 style='text-align:center'>$titre</h1><br /> <B1> -<p class='pagination'>#ANCRE_PAGINATION#PAGINATION</p> +[<p class='pagination'>(#PAGINATION)</p>] <table class='spip' border='1' width='90%'> <tr> <th><:info_numero_abbreviation:></th>$sort @@ -169,6 +169,8 @@ function public_vertebrer_dist($desc) </B1>\n<h2 style='text-align:center'><:texte_vide:></h2> <//B1></div> <INCLURE{fond=inc-pied}{skel='$skel'}> -</div></body></html>"; +</div> +</body> +</html>"; } ?> -- GitLab