PaypalDonationExtension

From PeacockWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 16:35, 7 April 2007 (edit)
Trevorp (Talk | contribs)
(Design)
← Previous diff
Revision as of 16:35, 7 April 2007 (edit)
Trevorp (Talk | contribs)

Next diff →
Line 66: Line 66:
) ENGINE=MyISAM AUTO_INCREMENT=20 DEFAULT CHARSET=latin1;</pre> ) ENGINE=MyISAM AUTO_INCREMENT=20 DEFAULT CHARSET=latin1;</pre>
-==API==+====API====
*class paypal_api *class paypal_api
**static function all_donations($number=10, $start=0) **static function all_donations($number=10, $start=0)

Revision as of 16:35, 7 April 2007

PaypalDonationExtension is an extension for Mediawiki that provides users a form allowing them to make a payment via PayPal.

Contents

Details

  • Version 0.0
  • Date 5 Apr 2007
  • Tested on MediaWiki 1.7.1, PHP 5.1.6 (apache2handler), MySQL 5.0.24a-Debian_9ubuntu0.1-log

Features

Design

          +--------+          +------+
          | PayPal |          | List |
          +--------+          +------+
              |              /
+------+   +-----+    +=====+   +-----+   +=====+   +-----+
| Wiki |---| PPE |----= API =---| FRE |---= API =---| Ind |
+------+   +-----+    +=====+   +-----+   +=====+   +-----+
              |                    |
         +----------+         +----------+
         | Database |         | Database |
         +----------+         +----------+
  • PPE Paypal Donation Extension
    • Facilitates paypal donations, and recording of transactions
    • Provides an API to allow access to donation info
  • List
    • Public list of donors
    • Private list of own contributions
  • FRE Financial Reports Extension
    • Allows treasurer to enter financial details
    • Retrieves data from donations and provides (monthly) reports on financial status
    • Provides an API to allow information to be used for status indicators, other reporting engnes etc.
  • Ind Indicators/progress bars etc.

Database

CREATE TABLE  `wiki`.`donations` (
  `item_number` int(11) NOT NULL auto_increment,
  `user_id` text NOT NULL,
  `request_time` datetime NOT NULL default '0000-00-00 00:00:00',
  `firstname` text NOT NULL,
  `lastname` text NOT NULL,
  `address1` text NOT NULL,
  `address2` text NOT NULL,
  `city` text NOT NULL,
  `state` text NOT NULL,
  `zip` text NOT NULL,
  `email` text NOT NULL,
  `amount` double NOT NULL default '0',
  `comment` text NOT NULL,
  `anonymous` tinyint(1) NOT NULL default '0',
  `validated` tinyint(1) NOT NULL default '0',
  `ipn_results` longtext NOT NULL,
  `payment_date` datetime NOT NULL default '0000-00-00 00:00:00',
  `payment_gross` double NOT NULL default '0',
  `payer_email` text NOT NULL,
  `mc_fee` double NOT NULL default '0',
  `mc_gross` double NOT NULL default '0',
  `country` text NOT NULL,
  PRIMARY KEY  (`item_number`)
) ENGINE=MyISAM AUTO_INCREMENT=20 DEFAULT CHARSET=latin1;

API

  • class paypal_api
    • static function all_donations($number=10, $start=0)
    • static function myDonations($user)
    • static function donations($number=10, $start=0)
    • static function totalDuring($start, $end)

Usage

Example

see Special:Donate

This demo uses the PayPal sandbox. To sucessfully test the product you must register with a paypal developer account, and create a sandbox Business account with the email address tp@pt.com, as well as a personal account for testing.

Installation

copy files into place

Insert the following line into the end of 'LocalSettings.php' (before the '?>')

require("extensions/???.php");

To check to see if it is installed properly, visit your Version page, eg Special:Version.

You should see the following items:

Releases

Todo

  • Interface to allow hiding of ads
  • Donations in other currencies

Full Todo

RoadMap

0.2 No Date

  • Interface to allow hiding of ads
  • Donations in other currencies

Full RoadMap

History

0.1 9 April 2007

  • Ability to make donations
  • Recording of donors details, and receipt
  • API to allow other extensions

Full History

Source Code

Personal tools