Skip to content
Extraits de code Groupes Projets
Valider 8d32aa84 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

"une vague d'autorisations

suppression des fonctions acces_rubrique, acces_article ... au profit d'autoriser
il reste un acces_rubrique_restreinte que je ne sais pas remplacer"
parent 0bfc2c45
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Affichage de
avec 28 ajouts et 42 suppressions
...@@ -123,12 +123,8 @@ function revisions_breves ($id_breve, $c=false) { ...@@ -123,12 +123,8 @@ function revisions_breves ($id_breve, $c=false) {
// et que le demandeur n'est pas admin de la rubrique // et que le demandeur n'est pas admin de la rubrique
// repasser la breve en statut 'prop'. // repasser la breve en statut 'prop'.
if ($statut == 'publie') { if ($statut == 'publie') {
if ($GLOBALS['auteur_session']['statut'] != '0minirezo') if (!autoriser('publierdans','rubrique',$id_parent))
$champs['statut'] = $statut = 'prop'; $champs['statut'] = $statut = 'prop';
else {
if (!acces_rubrique($id_parent))
$champs['statut'] = $statut = 'prop';
}
} }
} }
......
...@@ -150,7 +150,7 @@ function revisions_sites ($id_syndic, $c=false) { ...@@ -150,7 +150,7 @@ function revisions_sites ($id_syndic, $c=false) {
if (_request('statut', $c) if (_request('statut', $c)
AND _request('statut', $c) != $statut AND _request('statut', $c) != $statut
AND acces_rubrique($id_rubrique)) { AND autoriser('publierdans','rubrique',$id_rubrique)) {
$statut = $champs['statut'] = _request('statut', $c); $statut = $champs['statut'] = _request('statut', $c);
} }
...@@ -166,12 +166,8 @@ function revisions_sites ($id_syndic, $c=false) { ...@@ -166,12 +166,8 @@ function revisions_sites ($id_syndic, $c=false) {
// et que le demandeur n'est pas admin de la rubrique // et que le demandeur n'est pas admin de la rubrique
// repasser le site en statut 'prop'. // repasser le site en statut 'prop'.
if ($statut == 'publie') { if ($statut == 'publie') {
if ($GLOBALS['auteur_session']['statut'] != '0minirezo') if (!autoriser('publierdans','rubrique',$id_parent))
$champs['statut'] = $statut = 'prop'; $champs['statut'] = $statut = 'prop';
else {
if (!acces_rubrique($id_parent))
$champs['statut'] = $statut = 'prop';
}
} }
} }
......
...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/texte'); include_spip('inc/texte');
include_spip('inc/actions'); include_spip('inc/actions');
include_spip('inc/autoriser');
// http://doc.spip.org/@exec_articles_dist // http://doc.spip.org/@exec_articles_dist
function exec_articles_dist() function exec_articles_dist()
......
...@@ -13,7 +13,6 @@ ...@@ -13,7 +13,6 @@
if (!defined("_ECRIRE_INC_VERSION")) return; if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/forum'); // pour boutons_controle_forum include_spip('inc/forum'); // pour boutons_controle_forum
include_spip('inc/autoriser');
// http://doc.spip.org/@exec_articles_forum_dist // http://doc.spip.org/@exec_articles_forum_dist
function exec_articles_forum_dist() function exec_articles_forum_dist()
......
...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/distant'); include_spip('inc/distant');
include_spip('inc/ortho'); include_spip('inc/ortho');
include_spip('inc/autoriser');
// http://doc.spip.org/@exec_articles_ortho_dist // http://doc.spip.org/@exec_articles_ortho_dist
function exec_articles_ortho_dist() function exec_articles_ortho_dist()
......
...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -15,7 +15,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/revisions'); include_spip('inc/revisions');
include_spip('inc/autoriser');
// http://doc.spip.org/@exec_articles_versions_dist // http://doc.spip.org/@exec_articles_versions_dist
function exec_articles_versions_dist() function exec_articles_versions_dist()
......
...@@ -38,8 +38,7 @@ function exec_breves_dist() ...@@ -38,8 +38,7 @@ function exec_breves_dist()
$titre=typo($row['titre']); $titre=typo($row['titre']);
$descriptif=$row['descriptif']; $descriptif=$row['descriptif'];
$texte=$row['texte']; $texte=$row['texte'];
$editable = ($GLOBALS['connect_statut'] == "0minirezo") $editable = autoriser('publierdans','rubrique',$id_rubrique);
&& acces_rubrique($id_rubrique);
$statuts = "'prop', 'publie'" . ($editable ? ", 'refuse'": ""); $statuts = "'prop', 'publie'" . ($editable ? ", 'refuse'": "");
......
...@@ -164,7 +164,7 @@ if ($connect_statut=="0minirezo" OR $statut=="prop" OR $new == "oui") { ...@@ -164,7 +164,7 @@ if ($connect_statut=="0minirezo" OR $statut=="prop" OR $new == "oui") {
$form .= extra_saisie($extra, 'breves', $id_rubrique); $form .= extra_saisie($extra, 'breves', $id_rubrique);
} }
if ($connect_statut=="0minirezo" AND acces_rubrique($id_rubrique)) { if (autoriser('publierdans','rubrique',$id_rubrique)) {
$form .= debut_cadre_relief('', true) $form .= debut_cadre_relief('', true)
. "<b>"._T('entree_breve_publiee')."</b>\n" . "<b>"._T('entree_breve_publiee')."</b>\n"
. "<select name='statut' size='1' class='fondl'>\n" . "<select name='statut' size='1' class='fondl'>\n"
......
...@@ -40,7 +40,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe) ...@@ -40,7 +40,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe)
exit; exit;
} }
$flag_editable = (($connect_statut == '0minirezo' AND acces_rubrique($id_rubrique)) OR $statut == 'prop'); $flag_editable = (autoriser('publierdans','rubrique',$id_rubrique) OR $statut == 'prop');
// Est-ce que quelqu'un a deja ouvert la breve en edition ? // Est-ce que quelqu'un a deja ouvert la breve en edition ?
if ($flag_editable if ($flag_editable
...@@ -87,7 +87,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe) ...@@ -87,7 +87,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe)
// Logos de la breve // Logos de la breve
// //
if (($spip_display != 4) AND $id_breve>0 AND ($connect_statut == '0minirezo' AND acces_rubrique($id_rubrique))) { if (($spip_display != 4) AND $id_breve>0 AND autoriser('publierdans','rubrique',$id_rubrique)) {
$iconifier = charger_fonction('iconifier', 'inc'); $iconifier = charger_fonction('iconifier', 'inc');
echo $iconifier('id_breve', $id_breve, 'breves_voir'); echo $iconifier('id_breve', $id_breve, 'breves_voir');
} }
...@@ -208,7 +208,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe) ...@@ -208,7 +208,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe)
echo extra_affichage($extra, "breves"); echo extra_affichage($extra, "breves");
} }
if ($connect_statut=="0minirezo" AND acces_rubrique($id_rubrique) AND ($statut=="prop" OR $statut=="prepa")){ if (autoriser('publierdans','rubrique',$id_rubrique) AND ($statut=="prop" OR $statut=="prepa")){
echo "<div align='right'>"; echo "<div align='right'>";
echo "<table><tr>"; echo "<table><tr>";
......
...@@ -228,7 +228,7 @@ function exec_controle_forum_dist() ...@@ -228,7 +228,7 @@ function exec_controle_forum_dist()
# TODO autoriser # TODO autoriser
$droit = (($connect_statut != "0minirezo") OR $droit = (($connect_statut != "0minirezo") OR
(!$connect_toutes_rubriques AND (!$connect_toutes_rubriques AND
(!$id_rubrique OR !acces_rubrique($id_rubrique)))); (!$id_rubrique OR !autoriser('publierdans','rubrique',$id_rubrique))));
if (_request('var_ajaxcharset') AND !$droit) { if (_request('var_ajaxcharset') AND !$droit) {
ajax_retour($mess); ajax_retour($mess);
......
...@@ -18,7 +18,6 @@ function exec_controle_petition_dist() ...@@ -18,7 +18,6 @@ function exec_controle_petition_dist()
{ {
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/signatures'); include_spip('inc/signatures');
include_spip('inc/autoriser');
$id_article = intval(_request('id_article')); $id_article = intval(_request('id_article'));
......
...@@ -19,7 +19,7 @@ function exec_dater_dist() ...@@ -19,7 +19,7 @@ function exec_dater_dist()
$id = intval(_request('id')); $id = intval(_request('id'));
if (($GLOBALS['auteur_session']['statut'] != '0minirezo') if (($GLOBALS['auteur_session']['statut'] != '0minirezo')
OR ($type == 'article' AND !acces_article($id)) OR ($type == 'article' AND !autoriser('modifier','article',$id))
OR (!preg_match('/^\w+$/',$type))) { // securite OR (!preg_match('/^\w+$/',$type))) { // securite
include_spip('inc/minipres'); include_spip('inc/minipres');
echo minipres(); echo minipres();
......
...@@ -19,8 +19,8 @@ function exec_documents_colonne_dist() ...@@ -19,8 +19,8 @@ function exec_documents_colonne_dist()
$id = intval($id); $id = intval($id);
if (!($type == 'article' if (!($type == 'article'
? acces_article($id) ? autoriser('modifier','article',$id)
: acces_rubrique($id))) { : autoriser('publierdans','rubrique',$id))) {
include_spip('inc/minipres'); include_spip('inc/minipres');
echo minipres(); echo minipres();
exit; exit;
......
...@@ -21,7 +21,7 @@ function exec_editer_auteurs_dist() ...@@ -21,7 +21,7 @@ function exec_editer_auteurs_dist()
$id = intval(_request("id_$type")); $id = intval(_request("id_$type"));
if (! acces_article($id_article)) { if (! autoriser('modifier','article',$id_article)) {
include_spip('inc/minipres'); include_spip('inc/minipres');
echo minipres(); echo minipres();
exit; exit;
......
...@@ -22,14 +22,14 @@ function exec_editer_mot_dist() ...@@ -22,14 +22,14 @@ function exec_editer_mot_dist()
if ($GLOBALS['connect_toutes_rubriques']) // pour eviter SQL if ($GLOBALS['connect_toutes_rubriques']) // pour eviter SQL
$droit = true; $droit = true;
elseif ($objet == 'article') elseif ($objet == 'article')
$droit = acces_article($id_objet); $droit = autoriser('modifier','article',$id_objet);
elseif ($objet == 'rubrique') elseif ($objet == 'rubrique')
$droit = acces_rubrique($id_objet); $droit = autoriser('publierdans','rubrique',$id_objet);
else { else {
if ($objet == 'breve') if ($objet == 'breve')
$droit = spip_query("SELECT id_rubrique FROM spip_breves WHERE id_breve='$id_objet'"); $droit = spip_query("SELECT id_rubrique FROM spip_breves WHERE id_breve='$id_objet'");
else $droit = spip_query("SELECT id_rubrique FROM spip_syndic WHERE id_syndic=$id_objet"); else $droit = spip_query("SELECT id_rubrique FROM spip_syndic WHERE id_syndic=$id_objet");
$droit = acces_rubrique($droit['id_rubrique']); $droit = autoriser('publierdans','rubrique',$droit['id_rubrique']);
} }
if (!$droit) { if (!$droit) {
......
...@@ -31,7 +31,7 @@ function exec_iconifier_dist() ...@@ -31,7 +31,7 @@ function exec_iconifier_dist()
} }
if ($type == 'id_rubrique') if ($type == 'id_rubrique')
$droit = acces_rubrique($id); $droit = autoriser('publierdans','rubrique',$id);
elseif ($type == 'id_auteur') elseif ($type == 'id_auteur')
$droit = (($id == $connect_id_auteur) OR $connect_toutes_rubriques); $droit = (($id == $connect_id_auteur) OR $connect_toutes_rubriques);
elseif ($type == 'id_mot') elseif ($type == 'id_mot')
...@@ -39,7 +39,7 @@ function exec_iconifier_dist() ...@@ -39,7 +39,7 @@ function exec_iconifier_dist()
else { else {
$table=substr($type, 3) . (($type == 'id_syndic') ? '' : 's'); $table=substr($type, 3) . (($type == 'id_syndic') ? '' : 's');
$row = spip_fetch_array(spip_query("SELECT id_rubrique, statut FROM spip_$table WHERE $type=$id")); $row = spip_fetch_array(spip_query("SELECT id_rubrique, statut FROM spip_$table WHERE $type=$id"));
$droit = acces_rubrique($row['id_rubrique']); $droit = autoriser('publierdans','rubrique',$row['id_rubrique']);
if (!$droit AND ($row['statut'] == 'prepa' OR $row['statut'] == 'prop' OR $row['statut'] == 'poubelle')) if (!$droit AND ($row['statut'] == 'prepa' OR $row['statut'] == 'prop' OR $row['statut'] == 'poubelle'))
$droit = spip_num_rows(determiner_auteurs_objet('article',$id, "id_auteur=$connect_id_auteur")); $droit = spip_num_rows(determiner_auteurs_objet('article',$id, "id_auteur=$connect_id_auteur"));
} }
......
...@@ -20,8 +20,8 @@ function exec_legender_dist() ...@@ -20,8 +20,8 @@ function exec_legender_dist()
$id_document = intval($id_document); $id_document = intval($id_document);
if (!($type == 'article' if (!($type == 'article'
? acces_article($id) ? autoriser('modifier','article',$id)
: acces_rubrique($id))) { : autoriser('publierdans','rubrique',$id))) {
include_spip('inc/minipres'); include_spip('inc/minipres');
echo minipres(); echo minipres();
exit; exit;
......
...@@ -22,7 +22,7 @@ function exec_meme_rubrique_dist() ...@@ -22,7 +22,7 @@ function exec_meme_rubrique_dist()
$order = _request('order'); $order = _request('order');
if (($GLOBALS['auteur_session']['statut'] != '0minirezo') if (($GLOBALS['auteur_session']['statut'] != '0minirezo')
OR (!acces_rubrique($id)) OR (!autoriser('publierdans','rubrique',$id))
OR (!preg_match('/^[\w_-]+$/',$order)) OR (!preg_match('/^[\w_-]+$/',$order))
OR (!preg_match('/^[\w_-]+$/',$type))) { OR (!preg_match('/^[\w_-]+$/',$type))) {
include_spip('inc/minipres'); include_spip('inc/minipres');
......
...@@ -56,7 +56,7 @@ global ...@@ -56,7 +56,7 @@ global
$id_groupe = $row['id_groupe']; $id_groupe = $row['id_groupe'];
$onfocus =''; $onfocus ='';
} else { } else {
if (!$new OR !acces_mots()) { if (!$new OR !autoriser('modifier','groupemots',$id_groupe)) {
echo minipres(_T('info_mot_sans_groupe')); echo minipres(_T('info_mot_sans_groupe'));
exit; exit;
} }
...@@ -105,7 +105,7 @@ global ...@@ -105,7 +105,7 @@ global
// Logos du mot-clef // Logos du mot-clef
if (acces_mots() AND ($spip_display != 4)) { if (autoriser('modifier','groupemots',$id_groupe) AND ($spip_display != 4)) {
$iconifier = charger_fonction('iconifier', 'inc'); $iconifier = charger_fonction('iconifier', 'inc');
$out .= $iconifier('id_mot', $id_mot, 'mots_edit','iconifier'); $out .= $iconifier('id_mot', $id_mot, 'mots_edit','iconifier');
} }
...@@ -117,7 +117,7 @@ global ...@@ -117,7 +117,7 @@ global
$res =''; $res ='';
if (acces_mots() AND $id_groupe) { if ($id_groupe AND autoriser('modifier','groupemots',$id_groupe)) {
$res = icone_horizontale(_T('icone_modif_groupe_mots'), generer_url_ecrire("mots_type","id_groupe=$id_groupe"), "groupe-mot-24.gif", "edit.gif", false) $res = icone_horizontale(_T('icone_modif_groupe_mots'), generer_url_ecrire("mots_type","id_groupe=$id_groupe"), "groupe-mot-24.gif", "edit.gif", false)
. icone_horizontale(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit", "new=oui&id_groupe=$id_groupe&redirect=" . generer_url_retour('mots_tous')), "mot-cle-24.gif", "creer.gif", false); . icone_horizontale(_T('icone_creation_mots_cles'), generer_url_ecrire("mots_edit", "new=oui&id_groupe=$id_groupe&redirect=" . generer_url_retour('mots_tous')), "mot-cle-24.gif", "creer.gif", false);
} }
...@@ -188,7 +188,7 @@ global ...@@ -188,7 +188,7 @@ global
$out .= fin_cadre_relief(true); $out .= fin_cadre_relief(true);
if (acces_mots()){ if (autoriser('modifier','groupemots',$id_groupe)){
$out .= debut_cadre_formulaire('',true); $out .= debut_cadre_formulaire('',true);
......
...@@ -30,7 +30,7 @@ function exec_mots_tous_dist() ...@@ -30,7 +30,7 @@ function exec_mots_tous_dist()
echo pipeline('affiche_gauche',array('args'=>array('exec'=>'mots_tous'),'data'=>'')); echo pipeline('affiche_gauche',array('args'=>array('exec'=>'mots_tous'),'data'=>''));
if (acces_mots() AND !$conf_mot){ if (autoriser('modifier','groupemots',$id_groupe) AND !$conf_mot){
$res = icone_horizontale(_T('icone_creation_groupe_mots'), generer_url_ecrire("mots_type","new=oui"), "groupe-mot-24.gif", "creer.gif",false); $res = icone_horizontale(_T('icone_creation_groupe_mots'), generer_url_ecrire("mots_type","new=oui"), "groupe-mot-24.gif", "creer.gif",false);
echo bloc_des_raccourcis($res); echo bloc_des_raccourcis($res);
...@@ -42,7 +42,7 @@ function exec_mots_tous_dist() ...@@ -42,7 +42,7 @@ function exec_mots_tous_dist()
debut_droite(); debut_droite();
gros_titre(_T('titre_mots_tous')); gros_titre(_T('titre_mots_tous'));
if (acces_mots()) { if (autoriser('modifier','groupemots',$id_groupe)) {
echo typo(_T('info_creation_mots_cles')) . aide ("mots") ; echo typo(_T('info_creation_mots_cles')) . aide ("mots") ;
} }
echo "<br /><br />"; echo "<br /><br />";
...@@ -119,7 +119,7 @@ function exec_mots_tous_dist() ...@@ -119,7 +119,7 @@ function exec_mots_tous_dist()
echo "</div>"; echo "</div>";
if (acces_mots()){ if (autoriser('modifier','groupemots',$id_groupe)){
echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>"; echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
echo "<tr>"; echo "<tr>";
echo "<td>"; echo "<td>";
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter