Here's an initial port of this module to Drupal 7. A couple things to note:

  1. This only works with Webform 7.x-3.x, and there is no upgrade path from Webform x.x-2.x (it incorporates the patch found #897090: Authorize.Net Webform Module Does Not Support Webform 3.x Yet)
  2. I had to rewrite a considerable amount, including the database column names.
  3. I also made a number of performance enhancements (removed PHP regex and preg_ functions when not needed, etc.)

This patch should apply cleanly against the 6.x-2.x branch from Git.

Comments

theunraveler’s picture

Status: Active » Needs review
StatusFileSize
new12.19 KB

Here's another pass a porting the module to D7.

A couple things to note:

  1. I fixed the issue with searching the possibly-associative webform array to an infinite level of recursion (as noted in #897090: Authorize.Net Webform Module Does Not Support Webform 3.x Yet).
  2. I cleaned up a lot of redundant code
  3. This patch applies to the 6.x-2.x branch in Git after the initial patch in this issue has been applied

I think this is pretty complete. It could use some unit/behavioral tests, but it seems to be functioning very well. I would like to see this released once some folks in the community test it and review the code.

dandaman’s picture

Version: 6.x-1.2 » 6.x-2.1
StatusFileSize
new22.43 KB

Here's the code I've been using on Drupal 7.x to apply against the latest 6.x-2.x branch. I haven't done a full compare of it to the 6.x-2.x code as it currently is, but it has been working on a couple production sites of ours for a number of months. If I have some time soon I may try to tidy it up a bit further.

dandaman’s picture

StatusFileSize
new20.29 KB

OK, updated it because I found a number of minor issues. The Quantity code was gone, some functions were just in different places or had different names, so I fixed those to be more like what is already there.

obsidiandesign’s picture

Status: Needs review » Fixed

I've rolled this patch, with a few small changes, into a 7.x-2.x version. One problem is the existence of a hook_process() theme function in D7 that was causing problems with cron. I've changed the function name to authorizenetwebform_handle() and it works without conflict. There were some other small comma spacing changes. Thanks dandaman for providing the patch!

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.