source: subversion/sites/donate.openstreetmap.org/htdocs/process/paypal-submit.php @ 17464

Revision 17464, 2.3 KB checked in by gslater, 5 years ago (diff)

update donate.osm.org: Add base for OpenStreetMapS.org purchase fund. CODE UGLY. Text to follow.

  • Property svn:eol-style set to native
Line 
1<?
2/* Paypal Submission
3//FIXME add paypal language support
4lc = AU, DE FR IT GB ES US
5*/
6
7ob_start();
8
9//CONNECT to DB
10include('db-connect.inc.php');
11
12$data = array();
13$data['comment']                = (get_magic_quotes_gpc() ? stripslashes($_POST['comment'])                     : $_POST['comment']                     );
14$data['comment-option'] = (get_magic_quotes_gpc() ? stripslashes($_POST['comment-option'])      : $_POST['comment-option']      );
15$data['anonymous']              = ($data['comment-option'] == 'comment' ? '0' : '1');
16$data['amount']                 = (get_magic_quotes_gpc() ? stripslashes($_POST['amountGiven'])         : $_POST['amountGiven']         );
17$data['currency']               = (get_magic_quotes_gpc() ? stripslashes($_POST['currency_code'])       : $_POST['currency_code']       );
18
19$data['target']         = (get_magic_quotes_gpc() ? stripslashes($_POST['target'])      : $_POST['target']      );
20if (empty($data['target'])) $data['target'] = 'default';
21
22
23$sql_insert =   'INSERT INTO `donations` (`amount`,`currency`,`anonymous`,`comment`,`target`) VALUES (\''.
24                                        mysql_real_escape_string($data['amount'],               $_DB_H).'\',\''.
25                                        mysql_real_escape_string($data['currency'],             $_DB_H).'\',\''.
26                                        mysql_real_escape_string($data['anonymous'],    $_DB_H).'\',\''.
27                                        mysql_real_escape_string($data['comment'],              $_DB_H).'\',\''.
28                                        mysql_real_escape_string($data['target'],               $_DB_H)
29                                '\')';
30$sql_insert_result = mysql_query($sql_insert, $_DB_H) OR error_log('SQL FAIL: '.$sql_insert);
31$sql_insert_id = mysql_insert_id($_DB_H);
32
33$_PAYPAL_URL = 'https://www.paypal.com/cgi-bin/webscr';
34
35$paypal_fields = array();
36$paypal_fields['on0']                   = 'contribution_tracking_id';
37$paypal_fields['os0']                   = $sql_insert_id;
38$paypal_fields['business']              = 'treasurer@openstreetmap.org';
39$paypal_fields['item_name']             = 'One-time donation';
40$paypal_fields['item_number']   = 'DONATE-Domain-2009';
41$paypal_fields['cmd']                   = '_xclick';
42$paypal_fields['no_note']               = '0';
43$paypal_fields['notify_url']    = 'http://donate.openstreetmap.org/process/paypal-callback.php';
44$paypal_fields['return']                = 'http://wiki.openstreetmap.org/wiki/DonationThankYou';
45$paypal_fields['currency_code'] = (empty($data['currency']) ?  'GBP' : $data['currency']);
46$paypal_fields['amount']                = (double) $data['amount'];
47$paypal_fields['charset']               = 'utf-8';
48$pp_url_part=array();
49foreach($paypal_fields AS $pp_key => $pp_value) {
50        $pp_url_part[] = $pp_key.'='.urlencode($pp_value);
51}
52header('Location: '.$_PAYPAL_URL.'?'.implode('&',$pp_url_part));
53exit();
54?>
Note: See TracBrowser for help on using the repository browser.