Prise en charge des abonnements gratuits
@laeta signalait sur dev que le formulaire de commande d'abonnements ne fonctionne pas avec les offres gratuites : https://discuter.spip.net/t/commander-un-abonnement-gratuit-a-un-acces-restreint/156879/4
J'ai un peu testé de mon côté, je confirme. Je sais pas si c'est par design ou si c'est une omission. Ou une omission par design.
Pour l'instant ça bloque en plusieurs endroits :
- Dans le formulaire commander_abonnements, ça teste s'il existe un prix pour l'offre, et s'il n'y en n'a pas ça affiche une erreur :
// Si déjà on n'a pas trouvé de prix par défaut
if (!$prix_defaut) {
$erreurs['message_erreur'] = 'Impossible de trouver le prix de l’offre demandée.';
}
Donc on pourrait affiner le test, car 0
est bien un montant.
Ou alors considérer que c'est 0 dès qu'on trouve pas de montant.
- À l'étape suivant dans le pipeline formulaire_traiter, la commande n'est pas créée si l'offre est gratuite. J'ai pas encore regardé pourquoi, possiblement il y doit y avoir un test similaire sur le montant.
- Enfin, en théorie l'abonnement n'est pour l'instant validé qu'au moment du paiement. Je sais plus comment fonctionne le formulaire payer_acte quand le prix est de 0, je crois que ça affiche quand même le bouton pour valider ?
Ça pose aussi des questions sur les échéances en cas d'offre gratuite : est-ce qu'il y a besoin d'en mettre en place dans ce cas là ?