42 global $conf, $langs, $db;
44 dol_syslog(
"Paybox.lib::print_paybox_redirect", LOG_DEBUG);
47 $PBX_IDENTIFIANT =
"2";
51 $IBS_SITE =
"1999888";
60 if ($CURRENCY ==
'EUR') {
63 if ($CURRENCY ==
'USD') {
68 if ($conf->global->PAYBOX_CGI_URL_V1) {
71 if ($conf->global->PAYBOX_CGI_URL_V2) {
75 if (empty($IBS_DEVISE)) {
76 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_DEVISE not defined");
79 if (empty($URLPAYBOX)) {
80 dol_print_error(
null,
"Paybox setup param PAYBOX_CGI_URL_V1 and PAYBOX_CGI_URL_V2 undefined");
83 if (empty($IBS_SITE)) {
84 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_SITE not defined");
87 if (empty($IBS_RANG)) {
88 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_RANG not defined");
92 $conf->global->PAYBOX_HASH =
'sha512';
96 $IBS_TOTAL = $PRICE * 100;
98 $IBS_PORTEUR = $EMAIL;
99 $IBS_RETOUR =
"montant:M;ref:R;auto:A;trans:T";
101 $IBS_EFFECTUE = $urlok;
102 $IBS_ANNULE = $urlko;
103 $IBS_REFUSE = $urlko;
104 $IBS_BKGD =
"#FFFFFF";
107 if (preg_match(
'/^FR/i', $langs->defaultlang)) {
110 if (preg_match(
'/^ES/i', $langs->defaultlang)) {
113 if (preg_match(
'/^IT/i', $langs->defaultlang)) {
116 if (preg_match(
'/^DE/i', $langs->defaultlang)) {
119 if (preg_match(
'/^NL/i', $langs->defaultlang)) {
122 if (preg_match(
'/^SE/i', $langs->defaultlang)) {
126 $PBX_SOURCE =
'HTML';
127 $PBX_TYPEPAIEMENT =
'CARTE';
131 $msg =
"PBX_IDENTIFIANT=".$PBX_IDENTIFIANT.
132 "&PBX_MODE=".$IBS_MODE.
133 "&PBX_SITE=".$IBS_SITE.
134 "&PBX_RANG=".$IBS_RANG.
135 "&PBX_TOTAL=".$IBS_TOTAL.
136 "&PBX_DEVISE=".$IBS_DEVISE.
137 "&PBX_CMD=".$IBS_CMD.
138 "&PBX_PORTEUR=".$IBS_PORTEUR.
139 "&PBX_RETOUR=".$IBS_RETOUR.
140 "&PBX_EFFECTUE=".$IBS_EFFECTUE.
141 "&PBX_ANNULE=".$IBS_ANNULE.
142 "&PBX_REFUSE=".$IBS_REFUSE.
143 "&PBX_TXT=".$IBS_TXT.
144 "&PBX_BKGD=".$IBS_BKGD.
145 "&PBX_WAIT=".$IBS_WAIT.
146 "&PBX_LANGUE=".$IBS_LANG.
147 "&PBX_OUTPUT=".$IBS_OUTPUT.
148 "&PBX_SOURCE=".$PBX_SOURCE.
149 "&PBX_TYPEPAIEMENT=".$PBX_TYPEPAIEMENT;
153 $binKey = pack(
"H*",
dol_decode($conf->global->PAYBOX_HMAC_KEY));
155 $hmac = strtoupper(hash_hmac($PBX_HASH, $msg, $binKey));
162 dol_syslog(
"IBS_TOTAL: $IBS_TOTAL", LOG_DEBUG);
163 dol_syslog(
"IBS_DEVISE: $IBS_DEVISE", LOG_DEBUG);
165 dol_syslog(
"IBS_PORTEUR: $IBS_PORTEUR", LOG_DEBUG);
166 dol_syslog(
"IBS_RETOUR: $IBS_RETOUR", LOG_DEBUG);
167 dol_syslog(
"IBS_EFFECTUE: $IBS_EFFECTUE", LOG_DEBUG);
168 dol_syslog(
"IBS_ANNULE: $IBS_ANNULE", LOG_DEBUG);
169 dol_syslog(
"IBS_REFUSE: $IBS_REFUSE", LOG_DEBUG);
173 dol_syslog(
"IBS_OUTPUT: $IBS_OUTPUT", LOG_DEBUG);
174 dol_syslog(
"PBX_IDENTIFIANT: $PBX_IDENTIFIANT", LOG_DEBUG);
175 dol_syslog(
"PBX_SOURCE: $PBX_SOURCE", LOG_DEBUG);
176 dol_syslog(
"PBX_TYPEPAIEMENT: $PBX_TYPEPAIEMENT", LOG_DEBUG);
184 print
'</head>'.
"\n";
189 print
'<form action="'.$URLPAYBOX.
'" NAME="Submit" method="POST">'.
"\n";
192 print
'<!-- Param for Paybox v2 -->'.
"\n";
193 print
'<input type="hidden" name="PBX_IDENTIFIANT" value="'.$PBX_IDENTIFIANT.
'">'.
"\n";
194 print
'<input type="hidden" name="PBX_MODE" value="'.$IBS_MODE.
'">'.
"\n";
195 print
'<input type="hidden" name="PBX_SITE" value="'.$IBS_SITE.
'">'.
"\n";
196 print
'<input type="hidden" name="PBX_RANG" value="'.$IBS_RANG.
'">'.
"\n";
197 print
'<input type="hidden" name="PBX_TOTAL" value="'.$IBS_TOTAL.
'">'.
"\n";
198 print
'<input type="hidden" name="PBX_DEVISE" value="'.$IBS_DEVISE.
'">'.
"\n";
199 print
'<input type="hidden" name="PBX_CMD" value="'.$IBS_CMD.
'">'.
"\n";
200 print
'<input type="hidden" name="PBX_PORTEUR" value="'.$IBS_PORTEUR.
'">'.
"\n";
201 print
'<input type="hidden" name="PBX_RETOUR" value="'.$IBS_RETOUR.
'">'.
"\n";
202 print
'<input type="hidden" name="PBX_EFFECTUE" value="'.$IBS_EFFECTUE.
'">'.
"\n";
203 print
'<input type="hidden" name="PBX_ANNULE" value="'.$IBS_ANNULE.
'">'.
"\n";
204 print
'<input type="hidden" name="PBX_REFUSE" value="'.$IBS_REFUSE.
'">'.
"\n";
205 print
'<input type="hidden" name="PBX_TXT" value="'.$IBS_TXT.
'">'.
"\n";
206 print
'<input type="hidden" name="PBX_BKGD" value="'.$IBS_BKGD.
'">'.
"\n";
207 print
'<input type="hidden" name="PBX_WAIT" value="'.$IBS_WAIT.
'">'.
"\n";
208 print
'<input type="hidden" name="PBX_LANGUE" value="'.$IBS_LANG.
'">'.
"\n";
209 print
'<input type="hidden" name="PBX_OUTPUT" value="'.$IBS_OUTPUT.
'">'.
"\n";
210 print
'<input type="hidden" name="PBX_SOURCE" value="'.$PBX_SOURCE.
'">'.
"\n";
211 print
'<input type="hidden" name="PBX_TYPEPAIEMENT" value="'.$PBX_TYPEPAIEMENT.
'">'.
"\n";
212 print
'<input type="hidden" name="PBX_HASH" value="'.$PBX_HASH.
'">'.
"\n";
213 print
'<input type="hidden" name="PBX_TIME" value="'.$PBX_TIME.
'">'.
"\n";
215 print
'<input type="hidden" name="PBX_HMAC" value="'.$hmac.
'">'.
"\n";
216 print
'</form>'.
"\n";
220 print
'<script type="text/javascript">'.
"\n";
221 print
' document.Submit.submit();'.
"\n";
222 print
'</script>'.
"\n";
224 print
'</body></html>'.
"\n";
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs=null, $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
dol_print_error($db=null, $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
if(!defined( 'NOREQUIREMENU')) if(!empty(GETPOST('seteventmessages', 'alpha'))) if(!function_exists("llxHeader")) top_httphead($contenttype='text/html', $forcenocache=0)
Show HTTP header.
print_paybox_redirect($PRICE, $CURRENCY, $EMAIL, $urlok, $urlko, $TAG)
Create a redirect form to paybox form.