Contournement pour résoudre une boucle infinie quand il y a Champs Extras sur les Abonnements. Normalement on ne devrait pas avoir à utiliser objet_instituer() directement, et CE ne devrait pas ajouter de champs non demandées (quand les modifs sont explicites). En attendant ça devrait résoudre.

svn/root/tags/v3.5.7 v3.5.7
RastaPopoulos 4 years ago
parent f5ba65ed46
commit 61a322f9a1

@ -84,6 +84,7 @@ function abonnements_post_edition($flux) {
}
$modifs = array();
$modifs_instituer = array();
// Si l'échéance est VIDE, et que pourtant l'offre parente A BIEN une durée
// alors c'est qu'il faut initialiser les dates !
@ -107,7 +108,7 @@ function abonnements_post_edition($flux) {
and $jourdhui >= $abonnement['date_debut']
and $jourdhui <= $abonnement['date_echeance']
) {
$modifs['statut'] = 'actif';
$modifs_instituer['statut'] = 'actif';
spip_log("Post-édition : passage de labonnement $id_abonnement en actif", 'abonnements.'._LOG_INFO);
spip_log($abonnement, 'abonnements.'._LOG_INFO);
}
@ -125,7 +126,7 @@ function abonnements_post_edition($flux) {
)
)
) {
$modifs['statut'] = 'inactif';
$modifs_instituer['statut'] = 'inactif';
spip_log("Post-édition : passage de labonnement $id_abonnement en inactif", 'abonnements.'._LOG_INFO);
spip_log($abonnement, 'abonnements.'._LOG_INFO);
}
@ -136,6 +137,11 @@ function abonnements_post_edition($flux) {
include_spip('action/editer_objet');
objet_modifier('abonnement', $flux['args']['id_objet'], $modifs);
}
// Pour le statut on fait à part (pb de double entrée avec Champs Extras)
if (!empty($modifs_instituer)) {
include_spip('action/editer_objet');
objet_instituer('abonnement', $flux['args']['id_objet'], $modifs_instituer);
}
}
// Détection magique du plugin Commandes et d'une commande d'offre d'abonnement
elseif (

@ -1,7 +1,7 @@
<paquet
prefix="abonnements"
categorie="auteur"
version="3.5.6"
version="3.5.7"
schema="2.3.1"
etat="stable"
compatibilite="[3.0.0;3.2.*]"

Loading…
Cancel
Save