1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
<?php
/*
Template Name: Donations
*/
?>
<?php get_header(); ?>
<section class="main page donations">
<div class="post">
<h1 class="post-title"><?php the_title(); ?></h1>
<div class="post-content">
<div id="ogone-donations">
<h2 class="paypal-step">Etape 2 | Précisez le montant de votre don</h2>
<table>
<tr height="25"><td width="300"><input type="radio" name="ogone-donation-amount" value="30" onclick="set_ogone_amount(this.value);" /><label for="ogone-donation-amount">30 (1 jour de formation)</label></td></tr>
<tr height="25"><td width="300"><input type="radio" name="ogone-donation-amount" value="90" onclick="set_ogone_amount(this.value);" /><label for="ogone-donation-amount">90 (3 jours de formation)</label></td></tr>
<tr height="25"><td width="300"><input type="radio" name="ogone-donation-amount" value="150" onclick="set_ogone_amount(this.value);" /><label for="ogone-donation-amount">150 (1 semaine de formation)</label></td></tr>
<tr height="25"><td width="300"><input type="radio" name="ogone-donation-amount" value="365" onclick="set_ogone_amount(this.value);" /><label for="ogone-donation-amount">365 (1 euro par jour)</label></td></tr>
<tr height="25"><td width="500"><input type="radio" name="ogone-donation-amount" value="custom" id="ogone-custom-donation" /><input type="text" value="Montant personnalisé" id="ogone-custom-amount" onclick="if (this.defaultValue==this.value) this.value=''" onblur="if (this.value=='') this.value=this.defaultValue" onchange="set_ogone_amount(this.value);"></td></tr>
</table>
<form name="ogone" id="ogone" action="" method="post">
<input type="hidden" name="AMOUNT" id="ogone-amount" value="">
<h2 class="paypal-step">Etape 4 | Je valide mon don</h2>
<input type="submit" value="Je donne">
</form>
<?php if(isset($_POST['AMOUNT']) && !empty($_POST['AMOUNT'])):
// ces constantes sont traditionnellement définies dans un fichier annexe
define("URLOGONE", "https://secure.ogone.com/ncol/prod/orderstandard.asp");
define("PSPID", "XXXXXX"); // identifiant du marchand = login du compte Ogone
define("SHASIG", "XXXXXX"); // chaine de car. pour construire la sig. SHA-1
define("ACCEPTURL", "XXX/"); // chaine de car. pour construire la sig. SHA-1
define("CANCELURL", "XXX"); // chaine de car. pour construire la sig. SHA-1
define("TITLE", "Don"); // chaine de car. pour construire la sig. SHA-1
$price = $_POST['AMOUNT'];
$id = RAND(890000,895689596);
$shasign =
"ACCEPTURL=".ACCEPTURL.SHASIG.
"AMOUNT=".$price.SHASIG.
"CANCELURL=".CANCELURL.SHASIG.
"CURRENCY=EUR".SHASIG.
"DECLINEURL=".CANCELURL.SHASIG.
"EXCEPTIONURL=".CANCELURL.SHASIG.
"LANGUAGE=fr_FR".SHASIG.
"ORDERID=".$id.SHASIG.
"PSPID=".PSPID.SHASIG.
"TITLE=".TITLE.SHASIG;
//Creating the signature
$shasign = sha1($shasign);
// For test use the url in action https://secure.ogone.com/ncol/test/orderstandard.asp
?>
<form name="ogone-final" id="ogone-final" action="<?php echo URLOGONE; ?>" method="post">
<input type="hidden" name="ORDERID" value="<?php echo $id; ?>">
<input type="hidden" name="PSPID" value="<?php echo PSPID; ?>">
<input type="hidden" name="CURRENCY" value="EUR">
<input type="hidden" name="LANGUAGE" value="fr_FR">
<input type="hidden" name="AMOUNT" id="ogone-amount" value="<?php echo $_POST['AMOUNT']; ?>">
<!-- optional fields -->
<input type="hidden" name="ACCEPTURL" value="<?php echo ACCEPTURL; ?>">
<input type="hidden" name="DECLINEURL" value="<?php echo CANCELURL; ?>">
<input type="hidden" name="EXCEPTIONURL" value="<?php echo CANCELURL; ?>">
<input type="hidden" name="CANCELURL" value="<?php echo CANCELURL; ?>">
<input type="hidden" name="TITLE" value="<?php echo TITLE; ?>">
<input type="hidden" name="SHASIGN" value="<?php echo $shasign; ?>">
</form>
<script>document.getElementById("ogone-final").submit();</script>
<?php endif; ?>
</div>
</div>
</div>
</section>
<?php get_sidebar(); ?>
<?php get_footer(); ?> |
Partager