Changeset 95836 in spip-zone


Ignore:
Timestamp:
Mar 8, 2016, 12:08:54 AM (5 years ago)
Author:
rastapopoulos@…
Message:

Oups au commit précédent : il fallait aussi modifier les rangs lors de la suppression d'un contenu, et aussi pour la génération du dernier rang lors de l'ajout d'un contenu ! (plus la même méthode)

Location:
_plugins_/selections_editoriales/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/selections_editoriales/trunk/action/editer_selections_contenu.php

    r83884 r95836  
    99       
    1010        if ($id_selections_contenu > 0) {
     11                // On récupère le rang et la sélection du truc à supprimer
     12                $contenu = sql_fetsel('rang, id_selection', 'spip_selections_contenus', 'id_selections_contenu = '.$id_selections_contenu);
     13               
     14                // On supprime
    1115                $ok = sql_delete(
    1216                        'spip_selections_contenus',
    1317                        'id_selections_contenu = '.$id_selections_contenu
    1418                );
     19               
     20                // Si c'est bon, il faut décaler le rang de tout ce qui est après
     21                if ($ok) {
     22                        sql_update(
     23                                'spip_selections_contenus',
     24                                array('rang' => 'rang - 1'),
     25                                array(
     26                                        'id_selection = '.$contenu['id_selection'],
     27                                        'rang > '.$contenu['rang'],
     28                                )
     29                        );
     30                }
    1531        }
    1632       
  • _plugins_/selections_editoriales/trunk/action/supprimer_selection.php

    r83884 r95836  
    55
    66function action_supprimer_selection_dist(){
    7        
    87        $securiser_action = charger_fonction('securiser_action', 'inc');
    98        $arg = $securiser_action();
     
    1413                selection_supprimer($id_selection);
    1514        }
    16        
    1715}
  • _plugins_/selections_editoriales/trunk/formulaires/editer_selections_contenu.php

    r83922 r95836  
    9999                $url = _request('url');
    100100               
    101                 // On cherche la sélection parente
    102                 if ($id_contenu = intval($id_selections_contenu)){
    103                         $id_selection = sql_getfetsel('id_selection', 'spip_selections_contenus', 'id_selections_contenu = '.$id_contenu);
    104                 }
    105                
    106                 // On cherche le numéro à lui mettre pour le placer suivant son rang
    107                 $rang = intval(sql_countsel('spip_selections_contenus', 'id_selection = '.intval($id_selection)));
    108                 $rang = ($id_contenu ? $rang : ($rang+1)) * 10; // Si c'est une modif on garde le même rang
    109                
    110101                // Si on ne trouve pas d'objet SPIP
    111102                if (!$infos = traiter_lien_implicite($url, '', 'tout')) {
     
    125116               
    126117                // On  génère le titre
    127                 set_request('titre', "$rang. $titre");
     118                set_request('titre', $titre);
    128119        }
    129120       
     
    154145 */
    155146function formulaires_editer_selections_contenu_traiter_dist($id_selections_contenu='new', $id_selection=0, $retour='', $config_fonc='', $row=array(), $hidden=''){
    156         // Si création, on met en mémoire la sélection parente
    157         if (intval($id_selections_contenu) <= 0 and intval($id_selection) > 0){
    158                 set_request('id_selection', intval($id_selection));
     147        $id_selection = intval($id_selection);
     148       
     149        // Si création, on met en mémoire la sélection parente et on génère le dernier rang
     150        if (intval($id_selections_contenu) <= 0 and $id_selection > 0){
     151                set_request('id_selection', $id_selection);
     152               
     153                $dernier_rang = sql_getfetsel('rang', 'spip_selections_contenus', 'id_selection = '.$id_selection, '', 'rang desc', '0,1');
     154                set_request('rang', $dernier_rang + 1);
    159155        }
    160156       
     
    162158        $retours = formulaires_editer_objet_traiter('selections_contenu',$id_selections_contenu,'',0,$retour,$config_fonc,$row,$hidden);
    163159       
    164         // On va chercher la vrai sélection si on a bien un contenu
     160        // On va chercher la vraie sélection si on a bien un contenu
    165161        if ($id_contenu = intval($retours['id_selections_contenu'])) {
    166162                $id_selection = intval(sql_getfetsel('id_selection', 'spip_selections_contenus', 'id_selections_contenu = '.$id_contenu));
  • _plugins_/selections_editoriales/trunk/paquet.xml

    r95835 r95836  
    22        prefix="selections_editoriales"
    33        categorie="navigation"
    4         version="1.4.0"
     4        version="1.4.1"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.