public function GetPaymentMethod($type) { try { $sPaymentMethod = PaymentMethod::CreateFromQuery("SELECT * FROM payment_methods WHERE `CampaignId` = :CampaignId AND `Type` = :Type", array(":CampaignId" => $this->sId, ":Type" => $type), 30, true); } catch (NotFoundException $e) { throw new NotFoundException("No valid payment method specified."); } return $sPaymentMethod; }
*/ if (!isset($_APP)) { die("Unauthorized."); } try { $sCampaign = Campaign::CreateFromQuery("SELECT * FROM campaigns WHERE `UrlName` = :UrlName", array(":UrlName" => $router->uParameters[1]), 5, true); } catch (NotFoundException $e) { throw new RouterException("Campaign does not exist."); } if ($sCampaign->VerifyAdministratorAccess($_SESSION['user_id']) === false) { throw new RouterException("Not authorized to administrate this campaign."); } $sCampaign->UpdateStatistics(); $sPaymentMethods = array(); try { foreach (PaymentMethod::CreateFromQuery("SELECT * FROM payment_methods WHERE `CampaignId` = :CampaignId", array(":CampaignId" => $sCampaign->sId)) as $sPaymentMethod) { $sNewMethod = $sPaymentMethod->GetLogo(); $sNewMethod['address'] = $sPaymentMethod->sAddress; $sNewMethod['id'] = $sPaymentMethod->sId; $sPaymentMethods[] = $sNewMethod; } } catch (NotFoundException $e) { /* No payment methods...? */ } $sEventTotal = $sCampaign->sPastMonthSubscriptions + $sCampaign->sPastMonthUnsubscriptions + $sCampaign->sPastMonthDonations + $sCampaign->sPastMonthNonDonations; if ($sEventTotal !== 0) { $sSubscriptionPercentage = $sCampaign->sPastMonthSubscriptions / $sEventTotal * 100; $sUnsubscriptionPercentage = $sCampaign->sPastMonthUnsubscriptions / $sEventTotal * 100; $sDonationPercentage = $sCampaign->sPastMonthDonations / $sEventTotal * 100; $sNonDonationPercentage = $sCampaign->sPastMonthNonDonations / $sEventTotal * 100; $sStatisticsAvailable = true;
<?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."); } try { $sPaymentMethod = PaymentMethod::CreateFromQuery("SELECT * FROM payment_methods WHERE `CampaignId` = :CampaignId AND `Id` = :Id", array(":CampaignId" => $sPaymentRequest->sCampaign->sId, ":Id" => $router->uParameters[4]), 0, true); } catch (NotFoundException $e) { throw new RouterException("No such payment method found."); } $sPageContents = NewTemplater::Render("payment/other", $locale->strings, array("name" => $sPaymentMethod->sCustomName, "address" => $sPaymentMethod->sAddress, "amount" => Currency::Format($sPaymentRequest->sCurrency, $sPaymentRequest->sAmount), "done-url" => "/pay/{$sPaymentRequest->sSubscription->sEmailAddress}/{$sPaymentRequest->sId}/{$sPaymentRequest->sKey}/{$sPaymentMethod->sId}/done"));