This module provides Ubercart integration with the 3rd party payment gateway EC-Linx from 3DSI. A test environment setting is available during development.

Installation & Use:
1. Enable module in module list located at administer > build > modules.
2. Go to admin/store/settings/payment/edit/gateways to configure API settings.
3. Go to admin/store/settings/payment/edit/methods and select 3DSI EC-Linx as the default gateway.

The 3DSI Integration Team has approved the transaction tests performed by this module for production use. This module was modeled after the uc_authorizenet module.

Tests include:
Debit transaction submissions: Visa, MasterCard, Amex, Discover and Diners Club
Credit transaction submissions: Visa, MasterCard, Amex, Discover, Diners Club
Credit transaction types: Voided transaction, Credit transaction

Drupal version: 6
Sandbox URL: http://drupal.org/sandbox/shawngo/1360698
Git clone: git clone --branch 6.x-1.x shawngo@git.drupal.org:sandbox/shawngo/1360698.git 3dsi_ec_linx_payment_gateway_for_ubercart

CommentFileSizeAuthor
#3 drupalcs-result.txt1.96 KBklausi

Comments

patrickd’s picture

Status: Needs review » Needs work

It appears you are working in the "master" branch in git. You should really be working in a version specific branch. The most direct documentation on this is Moving from a master branch to a version branch. For additional resources please see the documentation about release naming conventions and creating a branch in git.
Review of the master branch:

  • Drupal Code Sniffer has found some code style issues (please check the Drupal coding standards):
    
    FILE: ...review/sites/all/modules/pareview_temp/test_candidate/uc_eclinx.install
    --------------------------------------------------------------------------------
    FOUND 0 ERROR(S) AND 2 WARNING(S) AFFECTING 2 LINE(S)
    --------------------------------------------------------------------------------
      9 | WARNING | Format should be * Implements hook_foo().
     29 | WARNING | Format should be * Implements hook_foo().
    --------------------------------------------------------------------------------
    
    
    FILE: ...areview/sites/all/modules/pareview_temp/test_candidate/uc_eclinx.module
    --------------------------------------------------------------------------------
    FOUND 42 ERROR(S) AND 9 WARNING(S) AFFECTING 39 LINE(S)
    --------------------------------------------------------------------------------
      12 | WARNING | Format should be * Implements hook_foo().
     115 | ERROR   | Comments may not appear after statements.
     116 | ERROR   | Comments may not appear after statements.
     117 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     117 | ERROR   | Comments may not appear after statements.
     124 | ERROR   | Inline comments must start with a capital letter
     124 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     128 | ERROR   | Concat operator must be surrounded by spaces
     128 | ERROR   | Concat operator must be surrounded by spaces
     128 | ERROR   | Concat operator must be surrounded by spaces
     143 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     148 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     157 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     158 | ERROR   | Concat operator must be surrounded by spaces
     158 | ERROR   | Concat operator must be surrounded by spaces
     163 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     176 | ERROR   | There must be no blank line following an inline comment
     176 | ERROR   | Comments may not appear after statements.
     178 | ERROR   | Inline comments must start with a capital letter
     178 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     198 | ERROR   | Concat operator must be surrounded by spaces
     199 | ERROR   | Concat operator must be surrounded by spaces
     200 | ERROR   | Concat operator must be surrounded by spaces
     201 | ERROR   | Concat operator must be surrounded by spaces
     202 | ERROR   | Concat operator must be surrounded by spaces
     203 | ERROR   | Concat operator must be surrounded by spaces
     204 | ERROR   | Concat operator must be surrounded by spaces
     209 | ERROR   | Inline comments must end in  full-stops, exclamation marks, or
         |         | question marks
     233 | ERROR   | Concat operator must be surrounded by spaces
     233 | ERROR   | Concat operator must be surrounded by spaces
     248 | ERROR   | Inline comments must start with a capital letter
     256 | ERROR   | Concat operator must be surrounded by spaces
     256 | ERROR   | Concat operator must be surrounded by spaces
     257 | ERROR   | Concat operator must be surrounded by spaces
     257 | ERROR   | Concat operator must be surrounded by spaces
     267 | ERROR   | Concat operator must be surrounded by spaces
     267 | ERROR   | Concat operator must be surrounded by spaces
     280 | ERROR   | Concat operator must be surrounded by spaces
     280 | ERROR   | Concat operator must be surrounded by spaces
     306 | ERROR   | A cast statement must be followed by a single space
     323 | ERROR   | A cast statement must be followed by a single space
     325 | ERROR   | A cast statement must be followed by a single space
     326 | ERROR   | A cast statement must be followed by a single space
     347 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     348 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     349 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     352 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     406 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     417 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     418 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
     423 | WARNING | Avoid backslash escaping in translatable strings when
         |         | possible, use "" quotes instead
    --------------------------------------------------------------------------------
    
  • Lines in README.txt should not exceed 80 characters, see the guidelines for in-project documentation.
  • Remove all old CVS $Id tags, they are not needed anymore.
    uc_eclinx.info:1:; $Id:$
    

This automated report was generated with PAReview.sh, your friendly project application review script. Go and review some other project applications, so we can get back to yours sooner.

Source: http://ventral.org/pareview - PAReview.sh online service

shawngo’s picture

Status: Needs work » Needs review

Thanks patrickd.

I've switched to the 6.x-1.x branch and addressed the Drupal Code Sniffer issues. Updating status to needs review.

klausi’s picture

Status: Needs review » Needs work
StatusFileSize
new1.96 KB

There are still files other than README.txt in the master branch, make sure to remove them. See also step 5 in http://drupal.org/node/1127732
Review of the 6.x-1.x branch:

This automated report was generated with PAReview.sh, your friendly project application review script. You can also use the online version to check your project. Go and review some other project applications, so we can get back to yours sooner.

manual review:

  • Are you sure that you need cURL and cannot use drupal_http_request()?

Otherwise this looks nearly ready to me.

shawngo’s picture

Thanks klausi -

I've updated the issues Drupal Code Sniffer found and attempted to remove the other files in the master branch.

I'll look into the cURL requirement vs. using drupal_http_request.

shawngo’s picture

Status: Needs work » Needs review

Thanks klausi for the drupal_http_request recommendation!

Replace cURL dependency with drupal_http_request(). Removed dependency check from .install file.

Successfully tested the update against 3DSI payment processor. Changing status back to needs review.

shawngo’s picture

Latest commit: Ran through PAReview.sh. Added trailing spaces to files.

klausi’s picture

Status: Needs review » Reviewed & tested by the community

manual review:

  • _uc_eclinx_charge(): $post_fields: the foreach loop to copy the data from $submit_data does not make sense to me. Why can't you just use $post_fields = $submit_data; to copy the array?

Otherwise looks RTBC to me.

shawngo’s picture

Thanks again klausi!

In a previous version the foreach loop was running urlencode() on the $submit_data values which is now happening through http_build_query(). I removed the unnecessary foreach loop as well as some debug code used in testing. Changes have been committed.

zzolo’s picture

Status: Reviewed & tested by the community » Fixed

Hey @shawngo, you have been given full Git access. Happy hunting.

Thanks to all the reviewers on this!

Status: Fixed » Closed (fixed)

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

Anonymous’s picture

Issue summary: View changes

Updated git clone branch