
interchange-cvs at icdevgroup
Oct 29, 2009, 7:14 AM
Post #1 of 1
(57 views)
Permalink
|
|
[SCM] Interchange branch, master, updated. REL_5_7_2-27-g57c434e
|
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Interchange". The branch, master has been updated via 57c434ed98477584905948a3d5493bd7f78f6fbd (commit) from 10553d859807d757c7eb80dd0b483700a19b05cd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 57c434ed98477584905948a3d5493bd7f78f6fbd Author: Stefan Hornburg (Racke) <racke[at]linuxia.de> Date: Thu Oct 29 15:13:50 2009 +0100 fix POD errors and remove extraneous whitespace ----------------------------------------------------------------------- Summary of changes and diff: debian/interchangeconfig | 6 ++++-- lib/Vend/Payment/BusinessOnlinePayment.pm | 12 ++++++++++-- lib/Vend/Payment/GoogleCheckout.pm | 24 +++++++++++++++++------- lib/Vend/Payment/PRI.pm | 4 +--- lib/Vend/Payment/SagePay.pm | 3 +++ lib/Vend/Payment/Worldpay.pm | 4 ++++ lib/Vend/UserDB.pm | 7 +++++++ scripts/ic_mod_perl.PL | 12 ++++++++++++ 8 files changed, 58 insertions(+), 14 deletions(-) diff --git a/debian/interchangeconfig b/debian/interchangeconfig index f5575ad..ea3aedb 100755 --- a/debian/interchangeconfig +++ b/debian/interchangeconfig @@ -1,6 +1,6 @@ #! /usr/bin/perl # -# Copyright 2001,2003,2004,2005 by Stefan Hornburg (Racke) <racke[at]linuxia.de> +# Copyright 2001,2003,2004,2005,2009 by Stefan Hornburg (Racke) <racke[at]linuxia.de> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -180,6 +180,8 @@ If C<rpc> is selected, the Interchange server will run in PreFork mode. =back +=back + =head1 AUTHOR Stefan Hornburg (Racke), racke[at]linuxia.de @@ -188,4 +190,4 @@ Stefan Hornburg (Racke), racke[at]linuxia.de interchange(1p) -=cut +=cut diff --git a/lib/Vend/Payment/BusinessOnlinePayment.pm b/lib/Vend/Payment/BusinessOnlinePayment.pm index fa27f00..2caad9a 100644 --- a/lib/Vend/Payment/BusinessOnlinePayment.pm +++ b/lib/Vend/Payment/BusinessOnlinePayment.pm @@ -276,7 +276,9 @@ sub onlinepayment { 'phone' => $actual->{phone_day}, ); -=head1 Extra query params +=head1 Extra query parameters + +=over =item extra_query_params "customer_id their_param=our_param" @@ -290,6 +292,8 @@ The above id passes the customer_id parameter on with a key of the same name, while the second sets their param C<their_param> with C<our_param>. +=back + =cut my @extra = split /[\s,\0]+/, $opt->{extra_query_params}; @@ -330,13 +334,17 @@ C<our_param>. } -=head1 Extra result params +=head1 Extra result parameters + +=over =item extra_result_params "transid=weird.module.name" This allows you to map a returned parameter to the payment result hash of Interchange. +=back + =cut my @result_extra = split /[\s,\0]+/, $opt->{extra_result_params}; diff --git a/lib/Vend/Payment/GoogleCheckout.pm b/lib/Vend/Payment/GoogleCheckout.pm index 7356d03..8308119 100644 --- a/lib/Vend/Payment/GoogleCheckout.pm +++ b/lib/Vend/Payment/GoogleCheckout.pm @@ -29,14 +29,17 @@ package Vend::Payment::GoogleCheckout; Kevin Walsh's excellent Interchange site, http://interchange.rtfm.info. =head1 AUTHORS + Lyn St George <info[at]zolotek.net> =head1 CREDITS + Steve Graham, mrlock.com, debugging and documentation Andy Smith, tvcables.co.uk, debugging and documentation =head1 PREREQUISITES + XML::Simple and any of its prerequisites (eg XML::Parser or XML::SAX) MIME::Base64 these should be found anyway on any well-used perl installation. This version was built especially @@ -47,6 +50,7 @@ Interchange.cfg should contain this line, with args extra to 'rand' for current SafeUntrap rand require caller dofile print entereval =head1 DESCRIPTION + This integrates Google Checkout quite tightly into Interchange - it is expected that all coupons, gift certificates, discounts, tax routines and shipping will be processed by Interchange before sending the customer to Google. The customer will see the basket, tax, shipping and total cost @@ -235,14 +239,14 @@ ALTER TABLE `transactions` MODIFY `order_number` varchar(32); ALTER TABLE `orderline` MODIFY `order_number` varchar(32); -In etc/log_transction, immediately after the +In etc/log_transction, immediately after the [elsif variable MV_PAYMENT_MODE] [calc] -insert this line: +insert this line: undef $Session->{payment_result}{MStatus}; and leave -[elsif variable MV_PAYMENT_MODE] +[elsif variable MV_PAYMENT_MODE] as set (contrary to earlier revisions of this document), but within the same section change the following two instances of [var MV_PAYMENT_MODE] to [value mv_payment_route] @@ -268,9 +272,9 @@ If your Interchange installation is 5.2.0 or older this line will not exist - se the payment route and allow Interchange to generate the order number instead. Note: the initial order number uses the username.counter number prefixed with 'GCOtmp', and a normal order number is created and the initial order number replaced only when Google reports that the card has been charged. This is to avoid gaps in the order -number sequence caused by customers abandoning the transaction while at Google. - +number sequence caused by customers abandoning the transaction while at Google. +=over =item Failed atttempts to authorise or charge the buyer's card. If the card is declined by the bank then IC will be updated with the new status and a brief email sent @@ -304,12 +308,14 @@ then the transaction will be refused and a brief email sent to the prospective b =item Google Analytics + This page: http://code.google.com/apis/checkout/developer/checkout_analytics_integration.html will tell you how to integrate Analytics into the system. This module will pass the data as an 'analyticsdata' value from the checkout form, encoded as UTF-8. =item Error messages from GCO + GCO will send error messages with a '<' in the title, which Interchange interprets as a possible attack and so immediately stops reading the page and throws the user to the 'violation' page (defined in your catalog.cfg as 'SpecialPage ../special_pages/violation' normally, though may be different). @@ -325,14 +331,18 @@ bounce the user back to the checkout page with a suitable error message. This us [bounce href="[area ord/checkout]"] [/if] -=bugs +=back + +=head1 Bugs + The default CharSet.pm in Interchange 5.6 (and possibly earlier) will fail on GCO's notifications. The sympton is that GCO keeps repeating the 'new order notification' as though it has not received one, but does not return any errors. Set a variable in your catalog.cfg, thus: Variable MV_HTTP_CHARSET UTF-8 but be aware that this may break the display of some upper ASCII characters, eg the GBP £ sign (use £ instead of £) -=Changelog +=head1 Changelog + v.0.7.0, 29.01.2009 - added locale, currency_locale, and cart fields to transaction tbl - log basket to transaction tbl to be read and inserted back into session for final order route diff --git a/lib/Vend/Payment/PRI.pm b/lib/Vend/Payment/PRI.pm index 0be2fcc..da8947c 100644 --- a/lib/Vend/Payment/PRI.pm +++ b/lib/Vend/Payment/PRI.pm @@ -154,8 +154,6 @@ A good way to test this module is to set PRI_TEST_MODE to 3, then 2, then 1, the To generate errors in test mode (while using your test ID and regkey) simply enter transactions with bad data and see what happens. PRI will supply you with a list of test credit card numbers and amounts that they are good for. -=over 4 - =item submit_url PRI uses different URLs depending on what type of transaction you are requesting, Sale, Recurring, Void etc.. The default URL for single sale transactions is @@ -163,7 +161,7 @@ PRI uses different URLs depending on what type of transaction you are requesting https://webservices.primerchants.com/billing/TransactionCentral/processCC.asp? At this time, this is the only URL supported by this PRI module - + =back =head2 Troubleshooting diff --git a/lib/Vend/Payment/SagePay.pm b/lib/Vend/Payment/SagePay.pm index d0157da..d0b0c4f 100644 --- a/lib/Vend/Payment/SagePay.pm +++ b/lib/Vend/Payment/SagePay.pm @@ -192,6 +192,8 @@ a page, then from an Interchange order Route named for the mode in catalog.cfg, then a default global payment variable in products/variable.txt, and finally in some cases a default will be hard-coded into the module. +=over + =item Mode The mode can be named anything, but the C<gateway> parameter must be set @@ -436,6 +438,7 @@ A DIRECTREFUND sends funds from your registered bank account to the nominated cr This does not need to refer to any previous transaction codes, and is useful if you need to make a refund but the customer's card has changed or the original purchase was not made by card. +=back =head2 Troubleshooting diff --git a/lib/Vend/Payment/Worldpay.pm b/lib/Vend/Payment/Worldpay.pm index b552669..5458e33 100644 --- a/lib/Vend/Payment/Worldpay.pm +++ b/lib/Vend/Payment/Worldpay.pm @@ -230,6 +230,8 @@ a page, then from an Interchange order Route named for the mode in catalog.cfg, then a default global payment variable in products/variable.txt, and finally in some cases a default will be hard-coded into the module. +=over + =item instid Your installation id supplied by Worldpay, the module cannot be used without an instid, set in @@ -283,6 +285,8 @@ and all successfull transactions will have status processing, defaults to pendin Set to 1 for module to decrement the inventory on a sucessfull transaction, if used disable decrement via log_transaction. +=back + =head2 Testing Set testmode 100 in catalog.cfg diff --git a/lib/Vend/UserDB.pm b/lib/Vend/UserDB.pm index 5706583..c7e458a 100644 --- a/lib/Vend/UserDB.pm +++ b/lib/Vend/UserDB.pm @@ -244,6 +244,8 @@ the preference set. There are several database locations that have special purposes. These fields are not saved as user values. +=over + =item USERNAME default: username The username or key field of the database table. @@ -305,8 +307,11 @@ Whether they are a superuser (admin). Location of access control information. =item CREATED_DATE_ISO default: (none) + =item CREATED_DATE_UNIX default: (none) + =item UPDATED_DATE_ISO default: (none) + =item UPDATED_DATE_UNIX default: (none) Date fields. @@ -316,6 +321,8 @@ Date fields. The user id of another account this was merged into. If present, and data (should be a valid user id) is present in the field, the user will be logged as that username. +=back + =cut # user name and password restrictions diff --git a/scripts/ic_mod_perl.PL b/scripts/ic_mod_perl.PL index 59509f0..b0632ec 100644 --- a/scripts/ic_mod_perl.PL +++ b/scripts/ic_mod_perl.PL @@ -26,6 +26,8 @@ ic_mod_perl -- Run Interchange entirely inside Apache/mod_perl =head2 Benefits +=over + =item * Possibly better stability, especially on non-Linux platforms where @@ -61,9 +63,12 @@ Can coexist with standalone Interchange codebase without problems. Administrative ease (for sysadmins who know Apache but not Interchange). +=back =head2 Drawbacks +=over + =item * Interchange runs as web server user, which in a standard system is usually @@ -97,6 +102,7 @@ Separate lightweight Apache (no modules) that proxies /ic requests =back +=back =head2 Ideal system setup @@ -107,14 +113,19 @@ PHP, etc. enabled and an empty DocRoot. =head1 CAVEATS +=over + =item * Watch out for differing Storable versions in sessions when switching between standalone and mod_perl runs! +=back =head1 BUGS +=over + =item * Haven't yet implemented form/multipart submissions. @@ -133,6 +144,7 @@ URIs must follow format C</ic/catalogname/page...>, where /ic is customizable but must only be one "directory" deep (i.e., no slashes). +=back =head1 AUTHOR hooks/post-receive -- Interchange
|