Changeset 95310 in spip-zone


Ignore:
Timestamp:
Feb 21, 2016, 5:15:26 PM (4 years ago)
Author:
rastapopoulos@…
Message:

DEUX saloperies de bugs qui cassaient les dates de fin d'abonnement avec paiements récurents : 1) une coquille pourrie de N en trop ! et 2) une mauvaise conception qui créait le lien avec la commande APRES avec initialiser les dates, donc lors de l'initialisation, aucune info de commande, donc aucune date de fin suivant la carte bleue ou SEPA !

Location:
_plugins_/abonnements/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/abonnements/trunk/abonnements_pipelines.php

    r90647 r95310  
    4343        if ($flux['args']['table'] == 'spip_abonnements') {
    4444                include_spip('inc/abonnements');
    45                 $abonnement = sql_fetsel('*', 'spip_abonnements', 'id_abonnement = '.intval($flux['args']['id_objet']));
     45                $id_abonnement = intval($flux['args']['id_objet']);
     46                $abonnement = sql_fetsel('*', 'spip_abonnements', 'id_abonnement = '.$id_abonnement);
    4647                $offre = sql_fetsel('*', 'spip_abonnements_offres', 'id_abonnements_offre = '.intval($abonnement['id_abonnements_offre']));
    4748                $jourdhui = date('Y-m-d H:i:s');
     
    6667                                }
    6768                        }
     69                }
     70               
     71                // Si on a un id_commande dans l'environnement, on lie la commande à l'abonnement
     72                if (
     73                        $id_commande = intval(_request('id_commande'))
     74                        and defined('_DIR_PLUGIN_COMMANDES')
     75                ) {
     76                        // On lie cet abonnement avec la commande qui l'a généré
     77                        include_spip('action/editer_liens');
     78                        objet_associer(
     79                                array('commande' => $id_commande),
     80                                array('abonnement' => $id_abonnement)
     81                        );
    6882                }
    6983               
     
    144158                                // On crée ou renouvelle
    145159                                include_spip('inc/abonnements');
     160                                set_request('id_commande', $id_commande); // on garde l'id_commande dans l'environnement
    146161                                $retour = abonnements_creer_ou_renouveler($id_auteur, $id_abonnements_offre, $forcer_creation);
    147                                
    148                                 // Si on a un retour correct avec un abonnement
    149                                 if (
    150                                         is_array($retour)
    151                                         and $id_abonnement = intval(reset($retour))
    152                                         and $id_abonnement > 0
    153                                 ) {
    154                                         // On lie cet abonnement avec la commande qui l'a généré
    155                                         include_spip('action/editer_liens');
    156                                         objet_associer(
    157                                                 array('commande' => $id_commande),
    158                                                 array('abonnement' => $id_abonnement)
    159                                         );
    160                                 }
    161162                        }
    162163                }
  • _plugins_/abonnements/trunk/inc/abonnements.php

    r95282 r95310  
    123123       
    124124        // Mais si c'est un renouvellement auto avec Commandes et Bank
    125         if ($date_fin = abonnements_bank_date_fin($abonnement['id_abonnnement'])) {
     125        if ($date_fin = abonnements_bank_date_fin($abonnement['id_abonnement'])) {
    126126                $modifs['date_fin'] = $date_fin;
    127127        }
  • _plugins_/abonnements/trunk/paquet.xml

    r95281 r95310  
    22        prefix="abonnements"
    33        categorie="auteur"
    4         version="3.0.11"
     4        version="3.0.12"
    55        schema="2.2.1"
    66        etat="test"
Note: See TracChangeset for help on using the changeset viewer.