Skip to content
Extraits de code Groupes Projets
Valider 415e39e3 rédigé par esj's avatar esj
Parcourir les fichiers

Introduction d'une globale, {{{liste_des_etats}}}, donnant les états possible...

Introduction d'une globale, {{{liste_des_etats}}}, donnant les états possible d'un article ({{{prepa, prop, publie, poubelle, refuse}}}) et utilisation dans {{{instituer_article}}} qui contenait du code mort. Il faudrait l'utiliser partout pour pouvoir changer globalement le processus éditorial, mais ce n'est pas pour tout de suite. En attendant ça permet d'écrire des extensions qui contrôlent qu'une demande de changement d'état est recevable.

Aussi dans ce dépot: il apparaît que PG n'optimise pas un COUNT sur clé primaire fixée (autrement dit vaudra 0 ou 1 jamais rien d'autre); réécriture en conséquence.
parent 95f77b40
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -201,7 +201,7 @@ function instituer_article($id_article, $c, $calcul_rub=true) { ...@@ -201,7 +201,7 @@ function instituer_article($id_article, $c, $calcul_rub=true) {
// de la rubrique actuelle // de la rubrique actuelle
if ($id_parent = _request('id_parent', $c) if ($id_parent = _request('id_parent', $c)
AND $id_parent != $id_rubrique AND $id_parent != $id_rubrique
AND (sql_countsel("spip_rubriques", "id_rubrique=$id_parent"))) { AND (sql_fetsel('1', "spip_rubriques", "id_rubrique=$id_parent"))) {
$champs['id_rubrique'] = $id_parent; $champs['id_rubrique'] = $id_parent;
// si l'article etait publie // si l'article etait publie
...@@ -276,9 +276,9 @@ function editer_article_heritage($id_article, $id_rubrique, $statut, $champs, $c ...@@ -276,9 +276,9 @@ function editer_article_heritage($id_article, $id_rubrique, $statut, $champs, $c
$langue = $row_rub['lang']; $langue = $row_rub['lang'];
$champs['id_secteur'] = $row_rub['id_secteur']; $champs['id_secteur'] = $row_rub['id_secteur'];
if (sql_fetsel('1', 'spip_articles', "id_article=$id_article AND langue_choisie<>'oui' AND lang<>" . sql_quote($langue))) {
if (sql_countsel('spip_articles', "id_article=$id_article AND langue_choisie<>'oui' AND lang<>" . sql_quote($langue)))
$champs['lang'] = $langue; $champs['lang'] = $langue;
}
} }
if (!$champs) return; if (!$champs) return;
......
...@@ -26,19 +26,13 @@ function inc_instituer_article_dist($id_article, $statut, $id_rubrique) ...@@ -26,19 +26,13 @@ function inc_instituer_article_dist($id_article, $statut, $id_rubrique)
// cf autorisations dans action/editer_article // cf autorisations dans action/editer_article
if (!autoriser('modifier', 'article', $id_article)) return ''; if (!autoriser('modifier', 'article', $id_article)) return '';
$liste_statuts = array(
// statut => array(titre,image)
'prepa' => array(_T('texte_statut_en_cours_redaction'),''),
'prop' => array(_T('texte_statut_propose_evaluation'),''),
'publie' => array(_T('texte_statut_publie'),''),
'poubelle' => array(_T('texte_statut_poubelle'),''),
'refuse' => array(_T('texte_statut_refuse'),'')
);
$res = ''; $res = '';
$etats = $GLOBALS['liste_des_etats'];
if (!autoriser('publierdans', 'rubrique', $id_rubrique)) { if (!autoriser('publierdans', 'rubrique', $id_rubrique)) {
unset($liste_statuts['publie']); unset($etats[array_search('publie', $etats)]);
unset($liste_statuts['refuse']); unset($etats[array_search('refuse', $etats)]);
if ($statut == 'prepa') if ($statut == 'prepa')
$res = supprimer_tags(_T('texte_proposer_publication')); $res = supprimer_tags(_T('texte_proposer_publication'));
} }
...@@ -50,36 +44,22 @@ function inc_instituer_article_dist($id_article, $statut, $id_rubrique) ...@@ -50,36 +44,22 @@ function inc_instituer_article_dist($id_article, $statut, $id_rubrique)
."<ul>"; ."<ul>";
$href = redirige_action_auteur('instituer_article',$id_article,'articles', "id_article=$id_article"); $href = redirige_action_auteur('instituer_article',$id_article,'articles', "id_article=$id_article");
foreach($liste_statuts as $s=>$affiche){
$href = parametre_url($href,'statut_nouv',$s); foreach($etats as $affiche => $s){
$puce = puce_statut($s) . _T($affiche);
if ($s==$statut) if ($s==$statut)
$res .= "<li class='$s selected'>" . puce_statut($s) . $affiche[0] . '</li>'; $class=' selected';
else else {
$res .= "<li class='$s'><a href='$href' onclick='return confirm(confirm_changer_statut);'>" . puce_statut($s) . $affiche[0] . '</a></li>'; $class='';
$puce = "<a href='"
. parametre_url($href,'statut_nouv',$s)
. "' onclick='return confirm(confirm_changer_statut);'>$puce</a>";
}
$res .= "<li class='$s $class'>$puce</li>";
} }
$res .= "</ul></li></ul>"; $res .= "</ul></li></ul>";
return $res; return $res;
} }
/*
// http://doc.spip.org/@demande_publication
function demande_publication($id_article)
{
return "<br style='clear:both;' />" .
debut_cadre_relief('',true) .
"<div style='text-align: center'>" .
"<b>" ._T('texte_proposer_publication') . "</b>" .
aide ("artprop") .
redirige_action_auteur('instituer_article', "$id_article-prop",
'articles',
"id_article=$id_article",
("<input type='submit' class='fondo' value=\"" .
_T('bouton_demande_publication') .
"\" />\n"),
"method='post'") .
"</div>" .
fin_cadre_relief(true);
}
*/
?> ?>
...@@ -274,6 +274,14 @@ $liste_des_statuts = array( ...@@ -274,6 +274,14 @@ $liste_des_statuts = array(
"info_statut_site_4" => '5poubelle' "info_statut_site_4" => '5poubelle'
); );
$liste_des_etats = array(
'texte_statut_en_cours_redaction' => 'prepa',
'texte_statut_propose_evaluation' => 'prop',
'texte_statut_publie' => 'publie',
'texte_statut_poubelle' => 'poubelle',
'texte_statut_refuse' => 'refuse'
);
$liste_des_forums = array( $liste_des_forums = array(
'bouton_radio_modere_posteriori' => 'pos', 'bouton_radio_modere_posteriori' => 'pos',
'bouton_radio_modere_priori' => 'pri', 'bouton_radio_modere_priori' => 'pri',
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter