Changeset 95052 in spip-zone


Ignore:
Timestamp:
Feb 9, 2016, 5:50:13 PM (4 years ago)
Author:
tcharlss@…
Message:

facepalm : oubli du $where dans sql_updateq, ce qui fait qu'on créait une nouvelle ligne quand on modifiait l'identifiant d'un objet. Up de z

Location:
_plugins_/identifiants/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/identifiants/trunk/identifiants_pipelines.php

    r94876 r95052  
    276276 * @param int $id_objet
    277277 *     Identifiant numérique de l'objet
    278  * @return void | bool | string
    279  *     Retour des fonctions sql_insertq, sql_updateq ou sql_delete.
     278 * @return bool | string
     279 *     False si problème, sinon retour des fonctions sql_insertq, sql_updateq ou sql_delete.
    280280 */
    281281function maj_identifiant_edition_objet($objet='', $id_objet=''){
     
    304304
    305305                // on définit ce qu'on doit faire
    306                 $creation    = (!$old_identifiant and $new_identifiant);
    307                 $maj         = ($old_identifiant and $new_identifiant);
    308                 $suppression = ($old_identifiant and !$new_identifiant);
    309 
    310                 // création
    311                 if ($creation) {
    312                         return sql_insertq('spip_identifiants', $set);
     306                $action =
     307                        (!$old_identifiant and $new_identifiant)  ? 'creer' :
     308                        (($old_identifiant and $new_identifiant)  ? 'maj' :
     309                        (($old_identifiant and !$new_identifiant) ? 'supprimer' : ''));
     310
     311                switch ($action) {
     312
     313                        case 'creer' :
     314                                return sql_insertq('spip_identifiants', $set);
     315
     316                        case 'maj' :
     317                                return sql_updateq('spip_identifiants', $set, array('objet'=>$id_objet, 'id_objet'=>$id_objet));
     318
     319                        case 'supprimer' :
     320                                return sql_delete('spip_identifiants', 'objet='.sql_quote($objet).' AND id_objet='.intval($id_objet));
     321
     322                        default :
     323                                return false;
    313324                }
    314                 // mise à jour
    315                 elseif ($maj) {
    316                         return sql_updateq('spip_identifiants', $set);
    317                 }
    318                 // suppression
    319                 elseif ($suppression) {
    320                         return sql_delete('spip_identifiants', 'objet='.sql_quote($objet).' AND id_objet='.intval($id_objet));
    321                 }
    322         }
    323 
    324 }
     325
     326        }
     327
     328}
  • _plugins_/identifiants/trunk/paquet.xml

    r95015 r95052  
    22        prefix="identifiants"
    33        categorie="divers"
    4         version="1.0.8"
     4        version="1.0.9"
    55        etat="test"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.