Yann :
> Voici donc le code que j'ai pondu pour me connecter aux serveurs de
> paiement électronique du Crédit Mutuel / CIC :
>
> http://strasslab.net/blog/index.php?2007/05/10/247-petit-intermede-technique
Merci pour le code.
Mes premières remarques, parfois cosmétiques :
- Dans la méthode show, il y a :
@data = @tpe + "*" + @date + "*" + @montant + "*" + @reference +
"*" + @texte_libre + "*" + @version + "*" + @lgue + "*" + @societe + "*"
j'aurais tendance à préférer :
@data = "[EMAIL PROTECTED]@[EMAIL PROTECTED]@[EMAIL PROTECTED]"
(car on crée moins d'objets String, au détriment de la lisibilité)
ou dans ce cas-ci :
@data = [ @tpe, @date, @montant, @reference, @texte_libre,
@version, @lgue, @societe ].join("*") + "*"
De plus @data ne sert pas dans la vue, donc une variable locale
suffit non ? data
- Dans la méthode confirm :
Il y a deux fois : @mac = params[:MAC]
et écrire @mac = params[:MAC].downcase
... permet d'avoir une conditionnelle plus claire je trouve :
if @mac == hmac(@data)
- S'il y a un render :text à la fin de la méthode #confirm,
pourquoi avoir des variables d'instance @tpe, @date...
alors que des variables locales suffisent ?
- à quoi sert @result ?
- je ne suis pas trop adepte du +=
@data += "..."
pour moi, écrire @data << "..." économise un objet String
- Dans le render :text il y a un Time.now.strftime("%d/%m/%Y:%H:%M:%S")
visiblement le même que dans #show, tu gagnerais à le
factoriser, pour n'avoir qu'un seul endroit pour modifier
le format de la date, si modification ultérieure il y a.
- enfin si le formulaire a toujours la même forme, on peut
peut-être en faire un helper ?
et dans la vue on aurait un :
<%= cybermut_form(:tpe => @tpe, :reference => @reference, ...) %>
un truc dans ce genre.
Voilà pour l'instant, j'ai pas encore lu le pdf dans le Kit, mais
ça a l'air assez intéressant tout ça.
-- Jean-François.
--
À la renverse.
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---