2010-10-03 20:16:14 +02:00
< ? php
2012-05-09 12:42:37 +02:00
/* Copyright ( C ) 2001 - 2002 Rodolphe Quiedeville < rodolphe @ quiedeville . org >
2013-12-13 21:12:18 +01:00
* Copyright ( C ) 2006 - 2013 Laurent Destailleur < eldy @ users . sourceforge . net >
2012-12-30 15:13:49 +01:00
* Copyright ( C ) 2012 Regis Houssin < regis . houssin @ capnetworks . com >
2010-10-03 20:16:14 +02:00
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
2013-01-16 15:36:08 +01:00
* the Free Software Foundation ; either version 3 of the License , or
2010-10-03 20:16:14 +02:00
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
2011-08-01 01:19:04 +02:00
* along with this program . If not , see < http :// www . gnu . org / licenses />.
2010-10-03 20:16:14 +02:00
*/
/**
2011-08-08 18:00:16 +02:00
* \file htdocs / public / paypal / paymentko . php
* \ingroup paypal
2010-10-31 16:06:26 +01:00
* \brief File to show page after a failed payment .
* This page is called by paypal with url provided to payal competed with parameter TOKEN = xxx
* This token can be used to get more informations .
2010-10-03 20:16:14 +02:00
* \author Laurent Destailleur
*/
define ( " NOLOGIN " , 1 ); // This means this output page does not require to be logged.
define ( " NOCSRFCHECK " , 1 ); // We accept to go on this page from external web site.
2014-01-07 16:29:25 +01:00
// For MultiCompany module.
// Do not use GETPOST here, function is not defined and define must be done before including main.inc.php
// TODO This should be useless. Because entity must be retreive from object ref and not from url.
$entity = ( ! empty ( $_GET [ 'entity' ]) ? ( int ) $_GET [ 'entity' ] : ( ! empty ( $_POST [ 'entity' ]) ? ( int ) $_POST [ 'entity' ] : 1 ));
if ( is_int ( $entity )) define ( " DOLENTITY " , $entity );
2012-08-22 23:24:21 +02:00
require '../../main.inc.php' ;
2012-08-22 23:11:24 +02:00
require_once DOL_DOCUMENT_ROOT . '/paypal/lib/paypal.lib.php' ;
require_once DOL_DOCUMENT_ROOT . '/paypal/lib/paypalfunctions.lib.php' ;
require_once DOL_DOCUMENT_ROOT . '/core/lib/company.lib.php' ;
2010-10-03 20:16:14 +02:00
// Security check
if ( empty ( $conf -> paypal -> enabled )) accessforbidden ( '' , 1 , 1 , 1 );
$langs -> load ( " main " );
$langs -> load ( " other " );
$langs -> load ( " dict " );
$langs -> load ( " bills " );
$langs -> load ( " companies " );
$langs -> load ( " paybox " );
$langs -> load ( " paypal " );
/*
* Actions
*/
/*
* View
*/
2013-02-28 17:37:07 +01:00
dol_syslog ( " Callback url when a PayPal payment was canceled. query_string= " . ( empty ( $_SERVER [ " QUERY_STRING " ]) ? '' : $_SERVER [ " QUERY_STRING " ]) . " script_uri= " . ( empty ( $_SERVER [ " SCRIPT_URI " ]) ? '' : $_SERVER [ " SCRIPT_URI " ]), LOG_DEBUG , 0 , '_paypal' );
2013-03-30 14:27:13 +01:00
$tracepost = " " ;
foreach ( $_POST as $k => $v ) $tracepost .= " { $k } - { $v } \n " ;
dol_syslog ( " POST= " . $tracepost , LOG_DEBUG , 0 , '_paypal' );
2013-02-28 17:37:07 +01:00
2010-11-01 13:41:32 +01:00
2013-06-05 16:24:32 +02:00
// Send an email
2013-06-25 13:19:44 +02:00
if ( ! empty ( $conf -> global -> PAYPAL_PAYONLINE_SENDEMAIL ))
2013-06-05 16:24:32 +02:00
{
2013-06-25 13:19:44 +02:00
$sendto = $conf -> global -> PAYPAL_PAYONLINE_SENDEMAIL ;
2013-06-05 16:24:32 +02:00
$from = $conf -> global -> MAILING_EMAIL_FROM ;
require_once DOL_DOCUMENT_ROOT . '/core/class/CMailFile.class.php' ;
2013-04-10 12:20:45 +02:00
$mailfile = new CMailFile (
2013-12-13 21:12:18 +01:00
'[' . $conf -> global -> MAIN_APPLICATION_TITLE . '] ' . $langs -> transnoentitiesnoconv ( " NewPaypalPaymentFailed " ),
2013-06-05 16:24:32 +02:00
$sendto ,
$from ,
2013-12-13 21:12:18 +01:00
$langs -> transnoentitiesnoconv ( " NewPaypalPaymentFailed " ) . " \n tag= " . $fulltag . " \n token= " . $token . " paymentType= " . $paymentType . " currencycodeType= " . $currencyCodeType . " payerId= " . $payerID . " ipaddress= " . $ipaddress . " FinalPaymentAmt= " . $FinalPaymentAmt
2013-06-25 13:19:44 +02:00
);
2013-06-05 16:24:32 +02:00
$result = $mailfile -> sendfile ();
if ( $result )
{
2013-06-09 12:47:44 +02:00
dol_syslog ( " EMail sent to " . $sendto , LOG_DEBUG , 0 , '_paypal' );
2013-06-05 16:24:32 +02:00
}
else
{
2013-06-09 12:47:44 +02:00
dol_syslog ( " Failed to send EMail to " . $sendto , LOG_ERR , 0 , '_paypal' );
2013-06-05 16:24:32 +02:00
}
}
2013-04-06 16:14:28 +02:00
2010-10-03 20:16:14 +02:00
llxHeaderPaypal ( $langs -> trans ( " PaymentForm " ));
2010-11-01 13:41:32 +01:00
// Show ko message
2010-10-31 21:09:50 +01:00
print '<span id="dolpaymentspan"></span>' . " \n " ;
2010-11-01 13:41:32 +01:00
print '<div id="dolpaymentdiv" align="center">' . " \n " ;
print $langs -> trans ( " YourPaymentHasNotBeenRecorded " ) . " <br> " ;
$PAYPALTOKEN = GETPOST ( 'TOKEN' );
if ( empty ( $PAYPALTOKEN )) $PAYPALTOKEN = GETPOST ( 'token' );
$PAYPALFULLTAG = GETPOST ( 'FULLTAG' );
if ( empty ( $PAYPALFULLTAG )) $PAYPALFULLTAG = GETPOST ( 'fulltag' );
2010-10-31 21:09:50 +01:00
2010-11-01 13:41:32 +01:00
if ( ! empty ( $conf -> global -> PAYPAL_MESSAGE_KO )) print $conf -> global -> PAYPAL_MESSAGE_KO ;
print " \n </div> \n " ;
2010-10-03 20:16:14 +02:00
html_print_paypal_footer ( $mysoc , $langs );
2011-08-27 21:15:14 +02:00
llxFooterPaypal ();
2012-12-16 19:42:58 +01:00
$db -> close ();
2010-10-03 20:16:14 +02:00
?>