Implement payment skipping

master
Sven Slootweg 11 years ago
parent b8a7af272a
commit 5d9aad5ae0

@ -43,4 +43,5 @@ class LogEntry extends CPHPDatabaseRecordClass
const DONATION_MADE = 4;
const UNSUBSCRIPTION = 5;
const SUBSCRIPTION_CONFIRMED = 6;
const DONATION_SKIPPED = 7;
}

@ -0,0 +1,29 @@
<?php
/*
* ReDonate is more free software. It is licensed under the WTFPL, which
* allows you to do pretty much anything with it, without having to
* ask permission. Commercial use is allowed, and no attribution is
* required. We do politely request that you share your modifications
* to benefit other developers, but you are under no enforced
* obligation to do so :)
*
* Please read the accompanying LICENSE document for the full WTFPL
* licensing text.
*/
if(!isset($_APP)) { die("Unauthorized."); }
$sPaymentRequest->uPaid = true;
$sPaymentRequest->InsertIntoDatabase();
$sLogEntry = new LogEntry(0);
$sLogEntry->uType = LogEntry::DONATION_SKIPPED;
$sLogEntry->uIp = $_SERVER['REMOTE_ADDR'];
$sLogEntry->uData = json_encode(array("payment_request" => $sPaymentRequest->sId));
$sLogEntry->uCampaignId = $sPaymentRequest->sCampaign->sId;
$sLogEntry->uDate = time();
$sLogEntry->uSessionId = session_id();
$sLogEntry->InsertIntoDatabase();
$sPageTitle = "Thanks for letting us know.";
$sPageContents = NewTemplater::Render("payment/skipped", $locale->strings, array());

@ -63,6 +63,11 @@ $router->routes = array(
'authenticator' => "authenticators/payment.php",
'auth_error' => "modules/error/nosuchpayment.php"
),
"^/pay/(.+)/([0-9]+)/([a-zA-Z0-9]+)/skip$" => array(
'target' => "modules/payment/notify_skip.php",
'authenticator' => "authenticators/payment.php",
'auth_error' => "modules/error/nosuchpayment.php"
),
"^/pay/(.+)/([0-9]+)/([a-zA-Z0-9]+)/paypal$" => array(
'target' => "modules/payment/paypal.php",
'authenticator' => "authenticators/payment.php",

@ -0,0 +1,11 @@
<h2>Thanks for letting us know.</h2>
<p>
By telling us when you'd prefer to skip a donation, you help us
improve our statistics. Thanks for your decision to do so. We'll
e-mail you again in a month.
</p>
<p>
You can close this page now.
</p>
Loading…
Cancel
Save