43 global $conf, $langs, $db;
45 dol_syslog(
"Paybox.lib::print_paybox_redirect", LOG_DEBUG);
48 $PBX_IDENTIFIANT =
"2";
52 $IBS_SITE =
"1999888";
61 if ($CURRENCY ==
'EUR') {
64 if ($CURRENCY ==
'USD') {
69 if ($conf->global->PAYBOX_CGI_URL_V1) {
72 if ($conf->global->PAYBOX_CGI_URL_V2) {
76 if (empty($IBS_DEVISE)) {
77 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_DEVISE not defined");
80 if (empty($URLPAYBOX)) {
81 dol_print_error(
null,
"Paybox setup param PAYBOX_CGI_URL_V1 and PAYBOX_CGI_URL_V2 undefined");
84 if (empty($IBS_SITE)) {
85 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_SITE not defined");
88 if (empty($IBS_RANG)) {
89 dol_print_error(
null,
"Paybox setup param PAYBOX_IBS_RANG not defined");
93 $conf->global->PAYBOX_HASH =
'sha512';
97 $IBS_TOTAL = $PRICE * 100;
99 $IBS_PORTEUR = $EMAIL;
100 $IBS_RETOUR =
"montant:M;ref:R;auto:A;trans:T";
102 $IBS_EFFECTUE = $urlok;
103 $IBS_ANNULE = $urlko;
104 $IBS_REFUSE = $urlko;
105 $IBS_BKGD =
"#FFFFFF";
108 if (preg_match(
'/^FR/i', $langs->defaultlang)) {
111 if (preg_match(
'/^ES/i', $langs->defaultlang)) {
114 if (preg_match(
'/^IT/i', $langs->defaultlang)) {
117 if (preg_match(
'/^DE/i', $langs->defaultlang)) {
120 if (preg_match(
'/^NL/i', $langs->defaultlang)) {
123 if (preg_match(
'/^SE/i', $langs->defaultlang)) {
127 $PBX_SOURCE =
'HTML';
128 $PBX_TYPEPAIEMENT =
'CARTE';
132 $msg =
"PBX_IDENTIFIANT=".$PBX_IDENTIFIANT.
133 "&PBX_MODE=".$IBS_MODE.
134 "&PBX_SITE=".$IBS_SITE.
135 "&PBX_RANG=".$IBS_RANG.
136 "&PBX_TOTAL=".$IBS_TOTAL.
137 "&PBX_DEVISE=".$IBS_DEVISE.
138 "&PBX_CMD=".$IBS_CMD.
139 "&PBX_PORTEUR=".$IBS_PORTEUR.
140 "&PBX_RETOUR=".$IBS_RETOUR.
141 "&PBX_EFFECTUE=".$IBS_EFFECTUE.
142 "&PBX_ANNULE=".$IBS_ANNULE.
143 "&PBX_REFUSE=".$IBS_REFUSE.
144 "&PBX_TXT=".$IBS_TXT.
145 "&PBX_BKGD=".$IBS_BKGD.
146 "&PBX_WAIT=".$IBS_WAIT.
147 "&PBX_LANGUE=".$IBS_LANG.
148 "&PBX_OUTPUT=".$IBS_OUTPUT.
149 "&PBX_SOURCE=".$PBX_SOURCE.
150 "&PBX_TYPEPAIEMENT=".$PBX_TYPEPAIEMENT;
154 $binKey = pack(
"H*",
dol_decode($conf->global->PAYBOX_HMAC_KEY));
156 $hmac = strtoupper(hash_hmac($PBX_HASH, $msg, $binKey));
163 dol_syslog(
"IBS_TOTAL: $IBS_TOTAL", LOG_DEBUG);
164 dol_syslog(
"IBS_DEVISE: $IBS_DEVISE", LOG_DEBUG);
166 dol_syslog(
"IBS_PORTEUR: $IBS_PORTEUR", LOG_DEBUG);
167 dol_syslog(
"IBS_RETOUR: $IBS_RETOUR", LOG_DEBUG);
168 dol_syslog(
"IBS_EFFECTUE: $IBS_EFFECTUE", LOG_DEBUG);
169 dol_syslog(
"IBS_ANNULE: $IBS_ANNULE", LOG_DEBUG);
170 dol_syslog(
"IBS_REFUSE: $IBS_REFUSE", LOG_DEBUG);
174 dol_syslog(
"IBS_OUTPUT: $IBS_OUTPUT", LOG_DEBUG);
175 dol_syslog(
"PBX_IDENTIFIANT: $PBX_IDENTIFIANT", LOG_DEBUG);
176 dol_syslog(
"PBX_SOURCE: $PBX_SOURCE", LOG_DEBUG);
177 dol_syslog(
"PBX_TYPEPAIEMENT: $PBX_TYPEPAIEMENT", LOG_DEBUG);
185 print
'</head>'.
"\n";
190 print
'<form action="'.$URLPAYBOX.
'" NAME="Submit" method="POST">'.
"\n";
193 print
'<!-- Param for Paybox v2 -->'.
"\n";
194 print
'<input type="hidden" name="PBX_IDENTIFIANT" value="'.$PBX_IDENTIFIANT.
'">'.
"\n";
195 print
'<input type="hidden" name="PBX_MODE" value="'.$IBS_MODE.
'">'.
"\n";
196 print
'<input type="hidden" name="PBX_SITE" value="'.$IBS_SITE.
'">'.
"\n";
197 print
'<input type="hidden" name="PBX_RANG" value="'.$IBS_RANG.
'">'.
"\n";
198 print
'<input type="hidden" name="PBX_TOTAL" value="'.$IBS_TOTAL.
'">'.
"\n";
199 print
'<input type="hidden" name="PBX_DEVISE" value="'.$IBS_DEVISE.
'">'.
"\n";
200 print
'<input type="hidden" name="PBX_CMD" value="'.$IBS_CMD.
'">'.
"\n";
201 print
'<input type="hidden" name="PBX_PORTEUR" value="'.$IBS_PORTEUR.
'">'.
"\n";
202 print
'<input type="hidden" name="PBX_RETOUR" value="'.$IBS_RETOUR.
'">'.
"\n";
203 print
'<input type="hidden" name="PBX_EFFECTUE" value="'.$IBS_EFFECTUE.
'">'.
"\n";
204 print
'<input type="hidden" name="PBX_ANNULE" value="'.$IBS_ANNULE.
'">'.
"\n";
205 print
'<input type="hidden" name="PBX_REFUSE" value="'.$IBS_REFUSE.
'">'.
"\n";
206 print
'<input type="hidden" name="PBX_TXT" value="'.$IBS_TXT.
'">'.
"\n";
207 print
'<input type="hidden" name="PBX_BKGD" value="'.$IBS_BKGD.
'">'.
"\n";
208 print
'<input type="hidden" name="PBX_WAIT" value="'.$IBS_WAIT.
'">'.
"\n";
209 print
'<input type="hidden" name="PBX_LANGUE" value="'.$IBS_LANG.
'">'.
"\n";
210 print
'<input type="hidden" name="PBX_OUTPUT" value="'.$IBS_OUTPUT.
'">'.
"\n";
211 print
'<input type="hidden" name="PBX_SOURCE" value="'.$PBX_SOURCE.
'">'.
"\n";
212 print
'<input type="hidden" name="PBX_TYPEPAIEMENT" value="'.$PBX_TYPEPAIEMENT.
'">'.
"\n";
213 print
'<input type="hidden" name="PBX_HASH" value="'.$PBX_HASH.
'">'.
"\n";
214 print
'<input type="hidden" name="PBX_TIME" value="'.$PBX_TIME.
'">'.
"\n";
216 print
'<input type="hidden" name="PBX_HMAC" value="'.$hmac.
'">'.
"\n";
217 print
'</form>'.
"\n";
221 print
'<script type="text/javascript">'.
"\n";
222 print
' document.Submit.submit();'.
"\n";
223 print
'</script>'.
"\n";
225 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.