Throw CPHP into the mix
parent
ba6588e0cd
commit
56f01832f0
@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"database": {
|
||||||
|
"driver": "mysql",
|
||||||
|
"pdo": true,
|
||||||
|
"hostname": "localhost",
|
||||||
|
"username": "root",
|
||||||
|
"password": "",
|
||||||
|
"database": "redonate"
|
||||||
|
},
|
||||||
|
"locale": {
|
||||||
|
"path": "locales",
|
||||||
|
"extension": "lng",
|
||||||
|
"default_locale": "english",
|
||||||
|
"default_timezone": "Europe/Amsterdam"
|
||||||
|
},
|
||||||
|
"memcache": {
|
||||||
|
"enabled": true,
|
||||||
|
"compressed": true,
|
||||||
|
"hostname": "localhost",
|
||||||
|
"port": 11211
|
||||||
|
},
|
||||||
|
"class_map": {
|
||||||
|
},
|
||||||
|
"components": [
|
||||||
|
"router",
|
||||||
|
"errorhandler"
|
||||||
|
]
|
||||||
|
}
|
@ -1,288 +0,0 @@
|
|||||||
<!doctype html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
||||||
<link href='http://fonts.googleapis.com/css?family=Lato:400,700|Cantarell:400,700|Roboto:500' rel='stylesheet' type='text/css'>
|
|
||||||
<style>
|
|
||||||
body
|
|
||||||
{
|
|
||||||
padding: 0px;
|
|
||||||
margin: 0px;
|
|
||||||
background-color: #E5EFD7;
|
|
||||||
font-family: Lato, sans-serif;
|
|
||||||
}
|
|
||||||
|
|
||||||
.clear
|
|
||||||
{
|
|
||||||
clear: both;
|
|
||||||
}
|
|
||||||
|
|
||||||
.wrapper
|
|
||||||
{
|
|
||||||
width: 960px;
|
|
||||||
margin: 0px auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.header h1
|
|
||||||
{
|
|
||||||
color: #7AAA3E;
|
|
||||||
font-family: Roboto, sans-serif;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 46px;
|
|
||||||
margin: 8px 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.header h1 .highlight
|
|
||||||
{
|
|
||||||
color: #587532;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main
|
|
||||||
{
|
|
||||||
background-color: #FCFFF7;
|
|
||||||
box-shadow: 0px 0px 10px 1px #b0b0b0;
|
|
||||||
-webkit-box-shadow: 0px 0px 10px 1px #b0b0b0;
|
|
||||||
-moz-box-shadow: 0px 0px 10px 1px #b0b0b0;
|
|
||||||
-o-box-shadow: 0px 0px 10px 1px #b0b0b0;
|
|
||||||
-ms-box-shadow: 0px 0px 10px 1px #b0b0b0;
|
|
||||||
padding: 16px 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main h2
|
|
||||||
{
|
|
||||||
font-size: 32px;
|
|
||||||
margin: 0px 0px 6px 0px;
|
|
||||||
color: #3B4A28;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .details, .main .subscribe
|
|
||||||
{
|
|
||||||
margin-top: 16px;
|
|
||||||
width: 46%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .details
|
|
||||||
{
|
|
||||||
float: left;
|
|
||||||
padding-right: 4%;
|
|
||||||
text-align: justify;
|
|
||||||
border-right: 1px solid silver;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .subscribe
|
|
||||||
{
|
|
||||||
float: right;
|
|
||||||
padding-left: 3%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main h3
|
|
||||||
{
|
|
||||||
margin: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .subscribe h3
|
|
||||||
{
|
|
||||||
margin-bottom: 32px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .leader
|
|
||||||
{
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .more
|
|
||||||
{
|
|
||||||
margin-top: 16px;
|
|
||||||
border-top: 1px solid silver;
|
|
||||||
padding-top: 32px;
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main .more .wrapper
|
|
||||||
{
|
|
||||||
width: 730px;
|
|
||||||
margin: 0px auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main h3.section
|
|
||||||
{
|
|
||||||
margin-top: 16px;
|
|
||||||
border-top: 1px solid silver;
|
|
||||||
padding-top: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subscribe p
|
|
||||||
{
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#field_currency
|
|
||||||
{
|
|
||||||
text-align: right;
|
|
||||||
border: 1px solid #6CA825;
|
|
||||||
border-radius: 1px;
|
|
||||||
background-color: transparent;
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#field_amount, #field_email
|
|
||||||
{
|
|
||||||
border: 1px solid #6CA825;
|
|
||||||
border-radius: 1px;
|
|
||||||
background-color: transparent;
|
|
||||||
font-size: 18px;
|
|
||||||
padding: 1px 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#field_amount
|
|
||||||
{
|
|
||||||
width: 55px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#field_email
|
|
||||||
{
|
|
||||||
margin-top: 6px;
|
|
||||||
width: 335px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.green-button
|
|
||||||
{
|
|
||||||
margin-top: 0px;
|
|
||||||
background: #66CC00;
|
|
||||||
border-top: 1px solid #529d26;
|
|
||||||
border-right: 1px solid #2c5615;
|
|
||||||
border-bottom: 1px solid #1d390e;
|
|
||||||
border-left: 1px solid #2c5615;
|
|
||||||
border-radius: 4px;
|
|
||||||
box-shadow: inset 0 1px 10px 1px #8eff4b,
|
|
||||||
0px 1px 0 #2c5713,
|
|
||||||
0 6px 0px #305e14,
|
|
||||||
0 8px 4px 1px #111111;
|
|
||||||
color: #fff;
|
|
||||||
font: bold 20px/1 "helvetica neue",
|
|
||||||
helvetica,
|
|
||||||
arial,
|
|
||||||
sans-serif;
|
|
||||||
margin-bottom: 15px;
|
|
||||||
padding: 10px 15px 12px 15px;
|
|
||||||
text-align: center;
|
|
||||||
text-shadow: 0px -1px 1px #1e2d4d;
|
|
||||||
-webkit-background-clip: padding-box; }
|
|
||||||
|
|
||||||
.green-button:hover
|
|
||||||
{
|
|
||||||
box-shadow: inset 0 0px 20px 1px #bdff87,
|
|
||||||
0px 1px 0 #324d1d,
|
|
||||||
0 6px 0px #37531f,
|
|
||||||
0 8px 4px 1px #111111;
|
|
||||||
cursor: pointer; }
|
|
||||||
|
|
||||||
.green-button:active
|
|
||||||
{
|
|
||||||
box-shadow: inset 0 1px 10px 1px #a5df76,
|
|
||||||
0 1px 0 #203213,
|
|
||||||
0 2px 0 #223413,
|
|
||||||
0 4px 3px 0 #111111;
|
|
||||||
margin-top: 5px;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.green-button:disabled
|
|
||||||
{
|
|
||||||
-webkit-filter: grayscale(100%);
|
|
||||||
-moz-filter: grayscale(100%);
|
|
||||||
-ms-filter: grayscale(100%);
|
|
||||||
filter: grayscale(100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
p.pledge
|
|
||||||
{
|
|
||||||
padding-left: 15px;
|
|
||||||
padding-top: 10px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="wrapper">
|
|
||||||
<div class="header">
|
|
||||||
<h1>
|
|
||||||
Re<span class="highlight">Donate</span>
|
|
||||||
</h1>
|
|
||||||
</div>
|
|
||||||
<div class="main">
|
|
||||||
<h2>Contribute to AnonNews monthly, no automatic charges.</h2>
|
|
||||||
|
|
||||||
<div class="details">
|
|
||||||
<h3>How does it work?</h3>
|
|
||||||
<p class="leader">
|
|
||||||
Most recurring services - even charities! - will automatically charge your account every month.
|
|
||||||
ReDonate is different.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
When you subscribe to a ReDonate campaign, you only have to tell us how much you want to donate, and provide
|
|
||||||
your e-mail address. Every month, we will e-mail you to remind you of your pledge. The e-mail you receive will
|
|
||||||
include a list of payment methods, and an unsubscribe link.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
What this means in simple terms is that you'll <strong>never</strong> be automatically charged for a donation -
|
|
||||||
you can decide to cancel your subscription at any time, without hassle, and without "oops, I forgot to cancel"
|
|
||||||
moments!
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3>Why use ReDonate?</h3>
|
|
||||||
<p>
|
|
||||||
Many donors wish to donate to a cause at regular intervals, but do not want to have their account charged automatically.
|
|
||||||
To take away the hassle of having to remember to donate every month, ReDonate was born. No need to remember a
|
|
||||||
donation schedule, and no automatic charges either!
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="subscribe">
|
|
||||||
<h3>Subscribe to a recurring donation</h3>
|
|
||||||
<p>
|
|
||||||
My e-mail address is...
|
|
||||||
<input type="text" id="field_email" placeholder="you@provider.com">
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
... and I'd like to pledge
|
|
||||||
<select id="field_currency">
|
|
||||||
<option value="usd">$</option>
|
|
||||||
<option value="eur">€</option>
|
|
||||||
<option value="btc">BTC</option>
|
|
||||||
</select>
|
|
||||||
<input type="text" id="field_amount" value="5.00">
|
|
||||||
a month.
|
|
||||||
</p>
|
|
||||||
<p class="pledge">
|
|
||||||
<button class="green-button" id="button_subscribe">Pledge!</button>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h3 class="section">One-off donation</h3>
|
|
||||||
<p>
|
|
||||||
<img src="paypal.png">
|
|
||||||
<img src="bitcoin.png" style="margin-left: 16px;">
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="clear"></div>
|
|
||||||
<div class="more">
|
|
||||||
<div class="wrapper">
|
|
||||||
<h3>Is this safe?</h3>
|
|
||||||
<p class="leader">
|
|
||||||
Short answer: Yes.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
The longer answer: ReDonate does not actually process any payments. You'll be using the same payment processor
|
|
||||||
that you'd be using to donate otherwise - we're just here to remind you. We do not have access to any of your
|
|
||||||
accounts, nor can we control where donations go.
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
We also have no reason to sell or otherwise misuse your data. ReDonate is an entirely non-profit project. It's
|
|
||||||
supported by the <a href="http://cryto.net/">Cryto Coding Collective</a>, a collective of developers that has
|
|
||||||
been running off <a href="http://cryto.net/donate">donations</a> for nearly two years now. We won't use your
|
|
||||||
e-mail address for anything other than sending you reminders, and every e-mail includes an unsubscribe link.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -0,0 +1 @@
|
|||||||
|
../../cphp
|
@ -0,0 +1,27 @@
|
|||||||
|
<?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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
$_CPHP = true;
|
||||||
|
$_CPHP_CONFIG = "../config.json";
|
||||||
|
require("cphp/base.php");
|
||||||
|
|
||||||
|
if(!empty($_GET['type']))
|
||||||
|
{
|
||||||
|
$can_once = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$can_once = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
echo(NewTemplater::Render("landing", $locale->strings, array('can-donate-once' => $can_once)));
|
@ -0,0 +1,24 @@
|
|||||||
|
_locale; en_US.UTF-8,en_US
|
||||||
|
_datetime_short; %d/%m/%Y %H:%M:%S
|
||||||
|
_datetime_long; %A %B %d, %Y %H:%M:%S
|
||||||
|
_date_short; %d/%m/%Y
|
||||||
|
_date_long; %A %B %d, %Y
|
||||||
|
_time; %H:%M:%S
|
||||||
|
|
||||||
|
event-now; now
|
||||||
|
event-future; in the future
|
||||||
|
event-past; in the past
|
||||||
|
event-1second-ago; 1 second ago
|
||||||
|
event-seconds-ago; %1$d seconds ago
|
||||||
|
event-1minutes-ago; 1 minute ago
|
||||||
|
event-minutes-ago; %1$d minutes ago
|
||||||
|
event-1hour-ago; 1 hour ago
|
||||||
|
event-hours-ago; %1$d hours ago
|
||||||
|
event-1day-ago; 1 day ago
|
||||||
|
event-days-ago; %1$d days ago
|
||||||
|
event-1week-ago; 1 week ago
|
||||||
|
event-weeks-ago; %1$d weeks ago
|
||||||
|
event-1month-ago; 1 month ago
|
||||||
|
event-months-ago; %1$d months ago
|
||||||
|
event-1year-ago; 1 year ago
|
||||||
|
event-years-ago; %1$d years ago
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB |
Loading…
Reference in New Issue