Ce widget gère le paiement par allopass. Il prend en entré l'identifiant de document que l'on souhaite protéger (il doit être créé sur le site d'allopass). En sortie, le widget indique si le paiement a été fait ou non. Ce widget implémente une couche de sécurité qui permet d'éviter la validation multiple du même code allopass.
Voici une copie d'écran de l'interface d'allopass montrant un document test dont l'identifiant est 171259/470672/945789 :
Voici les paramètres spécifiques pour ce widget :
| Nom | Type | Valeur par défaut | Description |
|---|---|---|---|
| allopass_docid | string | - | L'identifiant du document à protéger (obligatoire). |
| allopass_lang | string | 'fr' | La langue dans laquelle on veut que l'interface d'allopass s'affiche. |
| allopass_timeout | integer | 61 | Le nombre de seconde pendant lequel le service Web d'allopass considère un ticket comme valide (1 minute est la valeur officielle préconisée par allopass). |
| allopass_ownerid | integer | 0 | Un éventuel identifiant utilisateur qui sera conservé dans l'historique des paiements réalisés. |
Du coté d'Allopass, vous devez créer un document à protéger et lui donner l'url exacte de votre application permettant d'accéder à la page instanciant votre widget allopass.
Le mode dans lequel le widget se trouver permet d'effectuer vos différents traitements. Les modes disponibles sont les suivants :
codeaccepted : indique qu'un code correct a été saisi (le widget implémente une protection qui empêche l'utilisateur de le saisir plusieurs fois)wrongcode : indique qu'un code incorrect a été utiliséaskcode : lorsque l'utilisateur n'a rien saisi, ce mode mode est utilisé pour lui demander d'entrer un code
La méthode getCode() permet de récupérer le code en question (accepté ou refusé suivant le cas).
require_once "Pxxo/Widget/PaymentAllopass.php"; $params = array(); $params['allopass_docid'] = '171259/470672/945789'; $o = new Pxxo_Widget_PaymentAllopass($params); $this->View->PAYMENT = $o; if ($o->getMode() == 'codeaccepted') { $code = $this->getCode(); // placez ici le traitement en cas de paiement réussi } if ($o->getMode() == 'wrongcode') { // placez ici l'éventuel traitement en cas de code incorrect } ...
©2003-2012 Pxxo
Partenaires : INIST-CNRS | Sourcesup | Web2.0 chat server | Jeux gratuits