<?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 { $sSubscription = Subscription::FindByEmail($router->uParameters[1], $router->uParameters[2]); } catch (NotFoundException $e) { throw new RouterException("No such subscription was found."); } $sRouterAuthenticated = true;
/* * 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."); } $sOtherSubscriptions = array(); foreach (Subscription::FindByEmail($sSubscription->sEmailAddress) as $sOtherSubscription) { /* We don't want to add the currently visible subscription to the * list of other subscriptions. */ if ($sOtherSubscription->sId != $sSubscription->sId) { if ($sOtherSubscription->sIsConfirmed == false) { $sStatus = "Awaiting confirmation"; } elseif ($sOtherSubscription->sIsActive == true) { $sStatus = "Active"; } else { $sStatus = "Cancelled"; } $sOtherSubscriptions[] = array("name" => $sOtherSubscription->sCampaign->sName, "amount" => Currency::Format($sOtherSubscription->sCurrency, $sOtherSubscription->sAmount), "key" => $sOtherSubscription->sSettingsKey, "status" => $sStatus); } } if ($sSubscription->sIsConfirmed == false) { $sStatus = "Awaiting confirmation";
} try { $exists = false; Subscription::CreateFromQuery("SELECT * FROM subscriptions WHERE `EmailAddress` = :EmailAddress AND `Confirmed` = 0", array(":EmailAddress" => $_POST['email'])); $exists = true; } catch (NotFoundException $e) { $exists = false; } if ($exists) { flash_error("That e-mail address has subscribed before and is currently awaiting confirmation."); require "modules/landing.php"; return; } try { $exists = false; foreach (Subscription::FindByEmail($_POST['email']) as $sSubscription) { if ($sSubscription->sCampaignId == $sCampaign->sId && $sSubscription->sIsActive == true) { $exists = true; $sExistingSubscription = $sSubscription; } } } catch (NotFoundException $e) { $exists = false; } if ($exists) { $sPageContents = NewTemplater::Render("subscription/change", $locale->strings, array()); $sChangeRequest = new ChangeRequest(0); $sChangeRequest->uKey = random_string(16); $sChangeRequest->uOldCurrency = $sExistingSubscription->sCurrency; $sChangeRequest->uOldAmount = $sExistingSubscription->sAmount; $sChangeRequest->uNewCurrency = $_POST['currency'];