forked from FabLabAvignon/FabPayForm
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcheckOut.php
More file actions
106 lines (91 loc) · 3.45 KB
/
checkOut.php
File metadata and controls
106 lines (91 loc) · 3.45 KB
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
97
98
99
100
101
102
103
104
105
106
<?php
require("lib/oApi.php");
$config = require("lib/config.php");
/* Check if we get PayPal infos */
if(isset($_GET['token']) && isset($_GET['PayerID'])) {
$payToken = $_GET['token'];
$oApiReq = new oApi();
$oApiReq->setUrl($config['devMode'] ? "https://api-3t.sandbox.paypal.com/nvp" : "https://api-3t.paypal.com/nvp");
/* Get payment info */
$checkOutInfos = $oApiReq->sendRequest(Array(
/* Method & version */
'METHOD' => 'GetExpressCheckoutDetails',
'VERSION' => '204',
/* Athentification */
'USER' => $config['devMode'] ? $config['devApiCred']['user'] : $config['apiCred']['user'],
'PWD' => $config['devMode'] ? $config['devApiCred']['pass'] : $config['apiCred']['pass'],
'SIGNATURE' => $config['devMode'] ? $config['devApiCred']['signature'] : $config['apiCred']['signature'],
'TOKEN' => $payToken,
));
/* Execute payment (Note the array_merge, we reuse previous Api response...) */
$oApiResp = $oApiReq->sendRequest(array_merge(
Array(
/* Method & version */
'METHOD' => 'DoExpressCheckoutPayment',
'VERSION' => '204',
/* Athentification */
'USER' => $config['devMode'] ? $config['devApiCred']['user'] : $config['apiCred']['user'],
'PWD' => $config['devMode'] ? $config['devApiCred']['pass'] : $config['apiCred']['pass'],
'SIGNATURE' => $config['devMode'] ? $config['devApiCred']['signature'] : $config['apiCred']['signature']
), $checkOutInfos));
/* Prepare page */
print("
<!DOCTYPE html>
<html>
<head>
<!-- Meta -->
<meta charset=\"utf-8\">
<!-- Title -->
<title>Devenez adhérent</title>
<!-- Stylesheets -->
<link href=\"https://fonts.googleapis.com/css?family=Open+Sans\" rel=\"stylesheet\">
<link rel=\"stylesheet\" href=\"assets/css/reset.css\">
<link rel=\"stylesheet\" href=\"assets/css/style.css\">
</head>
<body>");
if($oApiResp['ACK'] != "Success") {
/* Display error page */
$errorCode = $oApiResp['L_ERRORCODE0'];
$errorMessage = $oApiResp['L_LONGMESSAGE0'];
//print("Oh crap, an error occured ! (" . $errorCode . ": " . $errorMessage . ")");
/* Display error page */
print("
<div class=\"container\">
<h1>Oops, une erreur s'est produite !</h1>
<br>
<p>
Nous sommes désolés, mais un erreur s'est produite.. Nous mettons tout en ordre pour résoudre votre problème !<br>
L'erreur suivante s'est produite : (" . $errorCode . ": " . $errorMessage . ")
</p>
<div class=\"status\">
<div class=\"failure\"></div>
</div>
</div>");
exit;
} else {
/* Success ! Call FabManager's api and execute flags script(s) if any */
// Later
/* Display success page */
print("
<div class=\"container\">
<h1>Et voilà, c'est fait !</h1>
<br>
<p>
Toute nos félicitations, vous êtes désormais l'un de nos membres. Bienvenue à Avilab, cher maker!
</p>
<div class=\"status\">
<div class=\"success\"></div>
</div>
</div>");
//print_r($oApiResp);
}
/* End page */
print("
</body>
</html>");
} else {
/* Redirect to main page if not $_GET infos */
header("Location: ./");
exit;
}
?>