Module description

Purpose

This module provides Mollie (https://www.mollie.nl/) integration for the Payment (https://drupal.org/project/payment) platform. Mollie is a Dutch payment service provider. With this module enabled site owner can enable customers (more general visitors) to perform payments to the site owners Mollie account. Depending on this Mollie account customers can pay through e.g. iDEAL, Mister Cash, Creditcard, PayPal (see complete list: https://www.mollie.nl/betaaldiensten/).

Mollie without Payment

If you want to use Mollie with using the Payment platform you can consider using one of these modules:

Project page

https://www.drupal.org/sandbox/finlet/2006918

Project documentation

https://www.drupal.org/node/2320501

Clone command

git clone --branch 7.x-1.x http://git.drupal.org/sandbox/finlet/2006918.git mollie_payment

Automated review

http://pareview.sh/pareview/httpgitdrupalorgsandboxfinlet2006918git-7x-1x

"Class property $payment_method_configuration_form_elements_callback should use lowerCamel naming without underscores" > following how it's done in the Payment module here.

Review of other project applications

Comments

PA robot’s picture

Status: Needs review » Needs work

There are some errors reported by automated review tools, did you already check them? See http://pareview.sh/pareview/httpgitdrupalorgsandboxfinlet2006918git

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

ricovandevin’s picture

Status: Needs work » Needs review

Fixed most issues reporterd by PAReview.

ricovandevin’s picture

Issue summary: View changes
matthias_mo’s picture

Hi ricovandevin,

nice module.

Here are some suggestions:

  • pareview still shows some notices:
    82 | WARNING | Unused variable $controller_data.
    94 | WARNING | Unused variable $controller_data.
    105 | WARNING | Variable $payment_method is undefined.
    106 | WARNING | Unused variable $controller_data.
    108 | WARNING | Variable $payment_method is undefined.

    Lines 105 and 108 are real bugs.

  • Most payment method implementations I've seen so far use their own table to store payment method configuration data and not the variables table.
  • A matter of style: you might consider putting the MolliePaymentMethodController class definition in a separate file and add a files[] = mollie_payment.class.inc line in your mollie_payment.info file.
  • in mollie_payment_return You might want to use entity_load_single($entity_type, $id):

    $payment = entity_load_single('payment', $pid);

  • You might want to mention other projects relating to mollie payment: uc_mollie, commerce_mollie
matthias_mo’s picture

Status: Needs review » Needs work
ricovandevin’s picture

Status: Needs work » Needs review

Hi matthias_mo,

Thanks for your review and for your suggestions.

pareview still shows some notices

I've fixed them.

Most payment method implementations I've seen so far use their own table to store payment method configuration data and not the variables table.

What are reasons not to use the variables table? I'm always happy to learn.

A matter of style: you might consider putting the MolliePaymentMethodController class definition in a separate file

I've followed your suggestion.

In mollie_payment_return You might want to use entity_load_single($entity_type, $id)

Hmm... I've been looking for that function many many times. How is it possible that I've missed it every time?! Thanks!

matthias_mo’s picture

What are reasons not to use the variables table?

I think the main reason is that the variable table is usually very cluttered with stuff from various modules. I personally use it only for "single value" configuration parameters.

sandergo90’s picture

Status: Needs review » Reviewed & tested by the community

Module looking really great. Something I was looking for in a long time.

Code looks fine and module works great!

ricovandevin’s picture

Issue summary: View changes

Added alternative Mollie modules to the project page. Added a documentation page.

ecvandenberg’s picture

I just tested Mollie Payment on a Drupal 7.31 site together with Payment and Payment Form Field 7.x-1.10. I created a content type with a Payment form field. Users with the proper permissions are now able to create payment forms and visitors are able to pay with Mollie.

The installation of the Mollie Payment module is straight forward and configuration is nicely integrated in the Payment method configuration section. The configuration screen is easy to understand with only the necessary fields.

Once installed and configured, the Mollie Payment module does what it should do.

I'm looking forward to a stable release so I can use it on production sites.

Thanks for all the effort.

ricovandevin’s picture

The project is RTBC for about 2 months now. What are the next steps that I'll have to take to get this module promoted to a full project?

ricovandevin’s picture

Issue summary: View changes
Issue tags: +PAreview: review bonus
klausi’s picture

Status: Reviewed & tested by the community » Fixed

Review of the 7.x-1.x branch (commit 94b1b15):

  • Coder Sniffer has found some issues with your code (please check the Drupal coding standards).
    FILE: /home/klausi/pareview_temp/mollie_payment.class.inc
    --------------------------------------------------------------------------------
    FOUND 2 ERRORS AFFECTING 2 LINES
    --------------------------------------------------------------------------------
     11 | ERROR | [ ] Class property
        |       |     $payment_method_configuration_form_elements_callback should
        |       |     use lowerCamel naming without underscores
    --------------------------------------------------------------------------------
    PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
    --------------------------------------------------------------------------------
    
  • No automated test cases were found, did you consider writing Simpletests or PHPUnit tests? This is not a requirement but encouraged for professional software development.

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. You have to get a review bonus to get a review from me.

manual review:

  1. project page: "If you want to use Mollie with using the Payment platform you can consider using one of these modules:" you mean without Payment?
  2. mollie_payment_return and mollie_payment_listener are identical page callbacks, why do you need both? Please add a comment.
  3. mollie_payment_entity_load(): why do you use the generic hook_entity_load() and not hook_ENTITY_TYPE_load() only for payment methods? Please add a comment.
  4. "variable_get('mollie_payment_' . $payment_method->pmid . '_controller_data', array());": all variables defined by your module need to be removed in hook_uninstall().

But that are not critical application blockers, so ...

Thanks for your contribution, ricovandevin!

I updated your account so you can promote this to a full project and also create new projects as either a sandbox or a "full" project.

Here are some recommended readings to help with excellent maintainership:

You can find lots more contributors chatting on IRC in #drupal-contribute. So, come hang out and stay involved!

Thanks, also, for your patience with the review process. Anyone is welcome to participate in the review process. Please consider reviewing other projects that are pending review. I encourage you to learn more about that process and join the group of reviewers.

Thanks to the dedicated reviewer(s) as well.

Status: Fixed » Closed (fixed)

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