eZCurlGateway

Author Message

Brookins Consulting

Monday 12 December 2005 6:42:29 pm

Hello, this forum is for the continued community support and development of the <b>eZCurlGatway</b> extension.

<b>Last Documented Version</b>: <i>1.0.1</i>
<b>Last SVN Revision</b>: <i>Rev 823</i>
<b>Log Message</b>: <i>Rev 823 - 2005-12-13 11:26:10 +0100 (Tue, 13 Dec 2005)</i>
http://pubsvn.ez.no/websvn/listing.php?repname=community&amp;path=%2Ftrunk%2Fextension%2Fezcurlgateway%2F&amp;rev=823&amp;sc=1

<b>News</b>:
<i>12/13/2005</i> - Updated Repository; Minor text typo in <b>eZCurlGatway</b>, Please update to <i>Rev 823</i>
<i>12/13/2005</i> - I am proud to announce that Brookins Consulting has released a brand new kind of eZ publish payment gateway class extension called, <b>eZCurlGatway</b>.

<b>About</b>: eZCurlGatway provides eZ publish a way to securely submit credit card payment information from customers through a credit card payment processing service like Authorize.Net transparent to the customer.

eZCurlGatway is implemented as the base class extended by eZ Authorize, in the complete eZ publish payment gateway solution, eZ Authorize, a feature rich, payment gateway and true eZ publish extension which provides eZ publish the ability to accept credit card payments from customers during checkout in an eZ publish e-commerce store without redirecting the customer throughout the process.

Cheers,
Graham Brookins

<b>Contribution</b>:
http://ez.no/community/contribs/workflow/ezcurlgateway

<b>SVN</b>:
http://pubsvn.ez.no/community/trunk/extension/ezcurlgateway
<b>SVN Log</b>:
http://pubsvn.ez.no/websvn/log.php?repname=community&path=%2Ftrunk%2Fextension%2Fezcurlgateway%2F&rev=0&sc=1&isdir=1
<b>SVN Log RSS</b>:
http://pubsvn.ez.no/websvn/rss.php?repname=community&path=%2Ftrunk%2Fextension%2Fezcurlgateway%2F&rev=823&sc=1&isdir=1

eZ Partner | North American Experience
http://brookinsconsulting.com/experience

Paul Forsyth

Tuesday 13 December 2005 1:32:04 am

You should make this extension separate from eZAuthorise and provide examples of how to actually use curl.

For example, you mention ezauthorizegateway in an error statement, and only show curl in use within eZAuthorizeAIM of the other extension.

paul

Dylan McDiarmid

Tuesday 13 December 2005 2:50:29 am

Paul,
This extension is already meant to be seperate from eZAuthorize. The ezauthorize error mention was a typo and has been fixed, thanks for catching it.

Currently the class is very sparse, as most of the meat would be put in the classes that extend it. I wanted it to be more of a framework that I (and others of course) could use as a guide to implement curl payment gateways, like eZRedirectGateway is for redirect gateways, instead of a class that provided things like specific curl functionality.

I would certainly be open to suggestions though. Is there any functionality you see being generic enough to include as a method in eZCurlGateway? The one thing I don't really want to do is make it a wrapper for curl functions, as I prefer to leave it up to the developer to choose how he wants to implement the curl functions themselves. So for examples of using curl, I would recommend any developer to use the php manual (http://php.net/curl ), the official curl site (http://curl.haxx.se ), and to search for other open-source implementations of the payment gateway they are writing for to see what curl options they are using.

Cheers,
Dylan

Paul Forsyth

Tuesday 13 December 2005 2:59:47 am

I really do think you should have some concrete examples of how to instigate the curl connection and use the results in that extension.

As it stands the only part that uses curl in the extension is the name.

Paul

Dylan McDiarmid

Tuesday 13 December 2005 3:30:38 am

It was my intention that eZAuthorize be the concrete example. The trouble with doing curl examples is that you need a real curl interface to send and get information from, so I figured a "proof of concept" working example with a real gateway is going to be the best example to look at. Similarly, the stock class eZRedirectGateway doesn't redirect anywhere or create a payment object by itself, it needs to be told what object to create and where to go be an extending class. But by reading the ezpaypal class, it's relatively easy to figure out how and where these things need to be done.

Your right about the name though, the only thing curl has to do with this is it's name and purpose. Providing basic examples isn't going to change that, although if I get some extra time and a better feel for where people are encountering difficulties understanding how to implement a gateway using the class, I'll try to add some more in depth explanations. If you would like to create a gateway using this, I'm sure Graham and I would be more than happy to assist you with any specific questions you have.

kracker (the)

Tuesday 13 December 2005 3:38:19 am

like these kinds of code like implementations?
<i>http://curl.haxx.se/libcurl/php/examples/simplepost.html</i>

gleam out some of the ezauthorize implementation
specifics (supporting methods) backwards into ezcurlgateway ...

right now, it's more like a class you have only to override,
where it could have more functionality provided by the base
class (<i>which could still be overridden</i>) as needed

what is curl? one of many different possible get/post operations
via http an https, a url and a http uri formated parameter list?

//kracker
<i>beastie boys | remote control</i>

Member since: 2001.07.13 || http://ezpedia.se7enx.com/

john polo

Wednesday 25 January 2006 8:13:51 am

We would luv to have more information about this gateway. I would really like to have users deal with my site only because i dont need validation for my users who i know already. All i need to do is to collect information about it via my site.

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 11:06:15
Script start
Timing: Jan 18 2025 11:06:15
Module start 'layout'
Timing: Jan 18 2025 11:06:15
Module start 'content'
Timing: Jan 18 2025 11:06:15
Module end 'content'
Timing: Jan 18 2025 11:06:15
Script end

Main resources:

Total runtime0.0204 sec
Peak memory usage2,048.0000 KB
Database Queries3

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0096 588.9063152.6094
Module start 'layout' 0.00970.0031 741.515639.3984
Module start 'content' 0.01280.0054 780.914197.2891
Module end 'content' 0.01810.0022 878.203142.3047
Script end 0.0204  920.5078 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.002612.6646140.0002
Check MTime0.00125.7940140.0001
Mysql Total
Database connection0.00157.316710.0015
Mysqli_queries0.004019.542330.0013
Looping result0.00000.131910.0000
Template Total0.00188.710.0018
Template load0.00083.791510.0008
Template processing0.00104.912410.0010
Override
Cache load0.00052.581710.0005
General
dbfile0.00031.397780.0000
String conversion0.00000.052540.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs