Changeset 60038 in spip-zone


Ignore:
Timestamp:
Apr 2, 2012, 8:51:01 PM (8 years ago)
Author:
jeannolapin@…
Message:

Associaspip Correction de bug : remise en ordre des tables spip_asso_groupes et spip_asso_groupes_liaisons pour les installations effectuées entre la r53901 et r60035 sur lesquelles on avait créé des groupes (et dont l'id_groupe se trouvait donc dans la plage [1,100[ réservée aux groupes de gestion des autorisations).

Location:
_plugins_/Association/Associaspip
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/Association/Associaspip/base/association_gestion.php

    r60035 r60038  
    595595        array('association_gestion_autorisations_upgrade')
    596596);
    597 3
     597
     598// Correction de l'erreur aux niveau de l'auto-increment des id_groupe presente pour les nouvelles installations effectuees entre la r53901  et r60035
     599function association_maj_60038()
     600{
     601        // reset de l'autoincrement, meme si il y a deja des groupes d'id>100 ca ne pose pas de probleme.
     602        sql_alter("TABLE spip_asso_groupes AUTO_INCREMENT = 100");
     603
     604        // on verifie qu'on a des groupes d'id<100 avec un nom non vide
     605        $query = sql_select('id_groupe', 'spip_asso_groupes', "id_groupe<100 AND nom<>''", '', 'id_groupe');
     606        if (sql_count($query)) {
     607                // on recupere l'id du dernier groupe cree
     608                $max_id = sql_getfetsel('MAX(id_groupe)', 'spip_asso_groupes');
     609                $max_id = ($max_id<100)?100:$max_id;
     610                while ($data=sql_fetch($query)) {
     611                        // on ajoute max_id a l'id des groupes selectionnés
     612                        sql_updateq('spip_asso_groupes', array('id_groupe'=>($data['id_groupe']+$max_id)), 'id_groupe='.$data['id_groupe']);
     613                        // on fait pareil dans la table de liaisons
     614                        sql_updateq('spip_asso_groupes_liaisons', array('id_groupe'=>($data['id_groupe']+$max_id)), 'id_groupe='.$data['id_groupe']);
     615                }
     616        }
     617
     618        // on verifie qu'il ne faille pas creer des groupes pour les autorisations apres avoir bouge ceux existants
     619        association_gestion_autorisations_upgrade();
     620}
     621
     622$GLOBALS['association_maj'][60038] = array(
     623        array('association_maj_60038')
     624);
    598625?>
  • _plugins_/Association/Associaspip/plugin.xml

    r59906 r60038  
    66        </auteur>
    77        <version>2.1.0</version>
    8         <version_base>59886</version_base>
     8        <version_base>60038</version_base>
    99        <meta>association_metas</meta>
    1010        <etat>dev</etat>
Note: See TracChangeset for help on using the changeset viewer.