Carnet Wiki

Abonnements 2

Version 5 — Février 2013 RastaPopoulos

Pour une refonte des abonnements avec une base générique, et des sous-plugins qui s’occupent des spécificités de chaque type d’abonnement.

Introduction

Un abonnement, c’est donner certains droits à une personne pendant un temps donné (qui peut éventuellement être infini aussi).

Mais ces droits précisément peuvent être de toute sorte :
-  accéder à une ou plusieurs zones restreintes (pendant un an aux articles restreints)
-  accéder à un contenu précis (une vidéo en streaming pendant une semaine)
-  accéder à un nombre d’article donné (achat d’un pack de 20 articles, à l’infini)

Modèle de base

Le plugin de base permet de lister les abonnements que l’on désire pour le site, et fourni les outils (interface dans l’admin et/ou formulaire et/ou action à intégrer dans le site, qui permettent d’activer ces abonnements pour un utilisateur.

À chaque création d’un abonné et à chaque changement de son statut (lorsque la date est échue notamment), le plugin lance un pipeline.

Ainsi des sous-plugins peuvent-ils activer ou désactiver des droits suivant ces événements.

Exemple pour abonner à une zone

Un plugin peut ajouter une interface pour lier Abonnements et Zones. Dans ce cas, dès qu’un utilisateur est abonné, le plugin l’ajoute automatiquement aux zones liées à l’abonnement via un pipeline.

En réflexion pour des abonnements objet par objet

Là c’est juste à l’état de concept mais je mets l’idée en cours pour pas la perdre.