Changeset 48030 in spip-zone


Ignore:
Timestamp:
May 23, 2011, 2:50:06 PM (10 years ago)
Author:
didinfo@…
Message:

Ajout d'options dans l'interface d'administration : gestion du statut des breves converties ; et choix de la rubrique d'origine de la bréve

Location:
_plugins_/breves_vers_articles
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/breves_vers_articles/breves_vers_articles_fonctions.php

    r47933 r48030  
    1010// et leur attribue optionnellement un même auteur
    1111
    12 
    1312include_spip('base/breves_vers_articles_base');
    1413
    1514
    16 function breves_vers_articles($id_breve, $id_rubrique, $id_auteur) {
     15function breves_vers_articles($id_breve, $id_rubrique, $id_auteur, $statut_br) {
    1716        $nouvel_article = array();
    1817        $message = "";
     
    5352        $nouvel_article['statut'] = $res['statut'];
    5453
     54        if($id_rubrique==false) {
     55                // Le nouvel article est créé dans la rubrique d'origine de la bréve
     56                $id_rubrique = $res['id_rubrique'];
     57        }
     58        // Sinon, tous les nouveux articles sont créés dans une rubrique unique ; rien à faire dans ce cas
     59       
    5560        $nouvel_article['id_rubrique'] = $id_rubrique;
    5661        $secteur = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique='.intval($id_rubrique));
    5762        $nouvel_article['id_secteur'] = $secteur;
     63       
    5864
    5965        // recherche du titre du secteur de la breve
     
    113119        else
    114120                $message .= "<br>Impossible de determiner quelle gestion est utilisée sur les forums (id_breve ou id_objet)";
    115 
    116         // suppresion de la breve ?? et son association avec mots cles et forum
    117         // on met le statut à 'refuse'
    118         // actuellement, aucunes breves n'a ce statut
    119         // 12 breves ont le statut 'prop'
    120         // attention ; le satut refuse est détruit
    121         // sql_updateq('spip_breves', array('statut' => 'refuse'), 'id_breve='.$id_breve);
     121       
     122        // Gestion du statut de la bréve
     123        switch($statut_br) {
     124                case 'idem':
     125                        // Rien à faire
     126                        break;
     127                case 'prop':
     128                        sql_updateq('spip_breves', array('statut' => 'prop'), 'id_breve='.$id_breve);
     129                        break;
     130                case 'refus':
     131                        sql_updateq('spip_breves', array('statut' => 'refuse'), 'id_breve='.$id_breve);
     132                        break;
     133        }
    122134
    123135        // correspondance id_breve <-> id_article
  • _plugins_/breves_vers_articles/formulaires/breves_vers_article.html

    r47933 r48030  
     1<style type="text/css">
     2.choix {
     3        margin-left:60px;
     4}
     5</style>
     6
     7
    18#CACHE{0}
    29<div class="formulaire_spip formulaire_editer formulaire_breves_vers_article">
     
    1118        <br><br>
    1219        [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{lance_conv})</span><br>]
    13         <label>La conversion concerne:</label>
     20        <p>La conversion concerne :
    1421        <div class="choix">
    1522                        [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{id_test})</span><br>]
     
    2027                        <input type='radio' name="lance_conv" [ (#ENV{lance_conv}|=={toutes}|oui)checked="checked"] value="toutes">Toutes les brèves
    2128        </div>
    22 
    23         <p>
    24         [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{rubrique_br})</span><br>]
    25         [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{auteur_br})</span><br>]
    26         Créer les articles dans la rubrique <input type="text" name="rubrique_br" size="5px" value="#ENV{rubrique_br}" />
    27         avec l'auteur <input type="text" name="auteur_br" size="5px" value="#ENV{auteur_br}" />
    2829        </p>
    2930
    3031        <p>
     32        [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{comment_rub})</span><br>]
     33        Créer les articles :
     34        <div class="choix">
     35                [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{rubrique_br})</span><br>]
     36                <input type='radio' name="comment_rub" [ (#ENV{comment_rub}|=={unique}|oui)checked="checked"] value="unique">dans une même et unique rubrique n° <input type="text" name="rubrique_br" size="5px" value="#ENV{rubrique_br}" /><br>
     37        </div>
     38        <div class="choix">
     39                <input type='radio' name="comment_rub" [ (#ENV{comment_rub}|=={origine}|oui)checked="checked"] value="origine">dans la rubrique de la brève d'origine<br>
     40        </div>
     41        </p>
     42        <p class="choix">
     43        [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{auteur_br})</span><br>]
     44        avec l'auteur <input type="text" name="auteur_br" size="5px" value="#ENV{auteur_br}" />
     45        </p>
     46       
     47        <p>
     48        [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{statut_br})</span><br>]
     49        Le statut des bréves aprés la conversion :
     50        <div class="choix">
     51                <input type='radio' name="statut_br" [ (#ENV{statut_br}|=={idem}|oui)checked="idem"] value="idem">laisser inchangé
     52        </div>
     53        <div class="choix">
     54                <input type='radio' name="statut_br" [ (#ENV{statut_br}|=={prop}|oui)checked="prop"] value="prop">passer à 'proposée'
     55        </div>
     56        <div class="choix">
     57                <input type='radio' name="statut_br" [ (#ENV{statut_br}|=={refus}|oui)checked="refus"] value="refus">passer à 'refusée' (puis effacées automatiquement aprés 24 ou 48 heures)
     58        </div>
     59        </p>
     60       
     61        <p>
    3162        <input type='checkbox' name='modif_liens' [ (#ENV{modif_liens}|=={oui}|oui)checked="checked"] value="oui"/> Modifier les liens raccourcis [...->br...] vers les brèves dans articles, forums, bio auteurs ...
    3263        </p>
    33 
     64       
    3465        <p class="boutons">
    3566        <input type='submit' name='ok' value='Lancer la conversion et/ou modification des liens raccourcis' />
    3667        </p>
     68
    3769</form>
    3870
  • _plugins_/breves_vers_articles/formulaires/breves_vers_article.php

    r47933 r48030  
    44
    55function formulaires_breves_vers_article_charger_dist(){
    6 
    76        $valeurs = array('id_test'=> BREVE_POUR_TEST,
    87                'rubrique_br'=> RUBRIQUE_DES_BREVES,
    98                'auteur_br'=> AUTEUR_DES_BREVES,
    109                'lance_conv'=>'',
    11                 'modif_liens'=>''
     10                'modif_liens'=>'',
     11                'comment_rub' => 'unique',
     12                'statut_br' => 'idem'
    1213                );
     14               
    1315
    1416        return $valeurs;
     
    2022        if(_request('lance_conv')) {
    2123                // verifier que les champs obligatoires sont bien là :
    22                 foreach(array('rubrique_br') as $obligatoire)
    23                         if(!_request($obligatoire)) $erreurs[$obligatoire] = 'Ce champ est obligatoire';
    24                        
    25                 // Vérification de l'existence de la rubrique
    26             $rub = sql_countsel("spip_rubriques", "id_rubrique="._request('rubrique_br'));
    27                         if($rub!=1) $erreurs['rubrique_br'] = 'Rubrique n°'._request('rubrique_br').' inexistante';
    28                
    29                         //$erreurs['rubrique_br'] = 'Erreur sur requete SQL :'.sql_error();
     24                if(!_request('comment_rub'))
     25                        $erreurs['comment_rub'] = 'Ce champ est obligatoire';
     26                if(!_request('statut_br'))
     27                        $erreurs['statut_br'] = 'Ce champ est obligatoire';
     28                if(_request('comment_rub') == 'unique') {
     29                        if(!_request('rubrique_br')) $erreurs['rubrique_br'] = 'Ce champ est obligatoire';
     30
     31                        // Vérification de l'existence de la rubrique
     32                        $rub = sql_countsel("spip_rubriques", "id_rubrique="._request('rubrique_br'));
     33                        if($rub!=1)
     34                                $erreurs['rubrique_br'] = 'Rubrique n°'._request('rubrique_br').' inexistante';
     35                }
    3036
    3137                if( (_request('lance_conv') != 'test') && (_request('lance_conv') != 'toutes') )
    3238                        $erreurs['lance_conv'] = 'Paramétre incorrect ... : '._request('lance_conv');
    3339
    34                 if(_request('lance_conv') == 'test' && !_request('id_test')) $erreurs['id_test'] = 'Ce champ est obligatoire pour le test';
     40                if(_request('lance_conv') == 'test' && !_request('id_test'))
     41                        $erreurs['id_test'] = 'Ce champ est obligatoire pour le test';
    3542               
    3643                // Vérification de l'existence de l'auteur (si renseigné)
     
    5259function formulaires_breves_vers_article_traiter_dist(){       
    5360        $msg = "";
     61       
     62        if(_request('comment_rub') == 'unique') {
     63                $choix_rub = _request('rubrique_br');
     64        } else {
     65                $choix_rub = false;
     66        }
     67       
    5468        if(_request('lance_conv') == 'toutes') {
    5569                if($les_breves = sql_select('id_breve', 'spip_breves')) {
    5670                        while($une_breve = sql_fetch($les_breves)) {
    57                                 breves_vers_articles($une_breve['id_breve'], _request('rubrique_br'), _request('auteur_br'));
     71                                breves_vers_articles($une_breve['id_breve'], $choix_rub, _request('auteur_br'), _request('statut_br'));
    5872                                spip_log('breves_vers_article : conversion sur breve n'.$une_breve['id_breve']);
    5973                        }
     
    7286            // Test sur une breve
    7387            $msg = "Conversion de test sur la brève "._request('id_test')."<br>";
    74             $msg .= breves_vers_articles(_request('id_test'), _request('rubrique_br'), _request('auteur_br'));
     88            $msg .= breves_vers_articles(_request('id_test'), $choix_rub, _request('auteur_br'), _request('statut_br'));
    7589        }
    7690
     
    86100        return array('message_ok'=>$msg);
    87101}
     102
    88103?>
Note: See TracChangeset for help on using the changeset viewer.