Comments

kbahey’s picture

This is a frequently asked question.

Also, remember that the module does not have a stable version for Drupal 5.x yet. This will happen when enough people test the existing code for features and bugs and declare it as stable-worthy. After that, a D6 version can proceed, via one of the avenues outlined in the link above.

v2egroup’s picture

So, whats involved in upgrading it myself or having you upgrade it? I'm perfectly familiar with coding in PHP, but to "scratch my own itch," it would be helpful to have some hint of how big a job that is, or if you want to upgrade it/what you want in return. Feel free to email me directly, since I don't really have any other reason to check the drupal issues queue. Bill Franklin bill@v2egroup.com

kbahey’s picture

Here is all the info you need for the conversion http://drupal.org/node/114774

v2egroup’s picture

I had already found the coder module and started on my own. Converting signup, signup_paypal and simple_paypal. Done with simple_paypal. Should finish other two sometime today and then start testing. Any further advice? Thanks, -Bill

kbahey’s picture

Before you start on other modules, check that you are not duplicating effort.

For example, simple_paypal is here http://drupal.org/node/280101

v2egroup’s picture

Got it. That one still had errors from coder. Passed those on.

kbahey’s picture

Do not rely solely on coder. Use it only as a starting point. There are many other things you have to do manually, like hook_menu() and all the theme stuff.

v2egroup’s picture

Questions: What is the mechanism "connecting" signup and signup_pay? IE, what is supposed to cause signup_pay_do_payment to be called?

The relevant modules are: event, signup, signup_pay, simple_paypal.

I've got functioning ports of the modules merged from other sources (lots of testing and debugging there) and everything works fine when signup_pay is deactivated. Data in the tables for all the modules looks ok. All the right notices get sent.

When I activate singup_pay and try to signup for a test event, I get "You have registered but not yet paid for this event." I'm just not getting redirected from the signup form post to paypal and back.

Any hints would be greatly appreciated. Thanks.

v2egroup’s picture

node->signup_pay_enabled is not set when entering signup_pay_form_alter even though it gets set correctly first in signup_pay_nodeapi. The value is not in the form parameters (I've printed them out), so there's no value to check when you get there. Basically, even though nodeapi sets signup_pay_enabled, it is not getting on the form to then be available when $node = $form['#parameters'][1];

kbahey’s picture

Is this $node stuff related to upgrading to D6, or a separate issue? Please do not mix issues by going off topic. Open a new issue if need be.

v2egroup’s picture

This looks like a separate issue.

greggles’s picture

Marked #280346: D6 update? as a duplicate. Also, signup is now in RC status of being ported to 6.x so this should be easier.

greenbeans’s picture

I could really use this right about now, too. I'd be very glad to contribute to the effort, but the module is too unfamiliar for me to tackle the whole thing myself. Anyone interested in teaming up?

mdowsett’s picture

I'd love to help as I really need this as well. All I can do is help with testing tho (and maybe minor coding)

Patrick Nelson’s picture

Just flagging this to subscribe as also need this quite quickly

capellic’s picture

@v2egroup - Any luck getting this to work? There doesn't seem to be another option out there for Drupal 6.

greggles’s picture

Well, it's brand new and may not be perfect, but for those willing to use Ubercart there is now http://drupal.org/project/uc_signup

turadg’s picture

+1 subscribe

capellic’s picture

I tried to contact v2egroup to see if he made any progress he could share, but I haven't heard back. I have started to convert the module, but it's slow going because I've never done this before. I will post my results here.

capellic’s picture

Status: Active » Needs review
StatusFileSize
new3.38 KB

I rolled up my sleeves and ported signup_pay to Drupal 6! It by no means is rigorously tested, but I thought I would post it in case someone really needs it. I was on a b-line to get it to work with signup_status and simple_paypal. The code is still full of Deadwood comments and areas where I still have questions. Here are the enhancements:

My decisions have been biased towards the anonymous user

Added email address to the User column for Anonymous users.

Added text at the top of the Signup pay list page /admin/content/signup_pay to indicate that the Name column was the name on the PayPal account.

Updated the node title in the Event column to link to the signups/admin page for the node.

I wanted an admin to have the option of getting an email notification every time somebody paid. I added a field to the signup_pay configuration screen, "Notification Email Address". The default is the variable.site_mail field.

Problem with IPN hitting the IPN URL more than once and logging multiple payments. Apparently something is being returned to PayPal to make it think that there was a 500 Error. You can see this if you test the IPN handshake from PayPal's sandbox. While best to figure out why this is happening, it was also important to be sure that multiple payments were not logged for the same transaction. To solve this:

1. Add a field to the database "transaction_id"
2. Write the transaction id to signup_pay
3. Add check for transaction ID and then don't write the transaction if it exists.

I am using the signup_status module in conjunction with signup_pay. Signup Pay has functionality to update the status of the signup once PayPal's IPN gives us the go ahead. But, the 6.x version of signup_status doesn't have have the API function that signup_pay 5.x was relying on. For the meantime, signup_pay is running the query directly against the signup_log table. I have logged an issue with Signup Status to ask for an API: http://drupal.org/node/508294

capellic’s picture

StatusFileSize
new20.65 KB

Brilliant, so I uploaded the WRONG zip file in #20 and I can't delete it. The correct one is below.

remotenemesis’s picture

capellic, thanks for your work on this.

I think I have everything setup correctly, however, none of the changes I make in the "Signup Payment" sub-form of my content appear to be saved anytime I make changes. When I sign up for an event, I am not presented with an option to pay and I am told that I have registered but not paid for this event.

Any ideas what I should check?

Thanks again!

espirates’s picture

Same here, the form on the node is not saving anything, inparticular Enable signup payment options for this node? is not sticking.

hugafish’s picture

subscribing

grguth’s picture

subscribing - may be able to help after the 1st of 2010

Testeree’s picture

subscribing

eeyorr’s picture

I'm also curious about this.

summit’s picture

Subscribing, greetings, Martijn

awasson’s picture

subscribing

fax8’s picture

Title: Possible upgrade to version 6.x » Working on a 6.x release of signup_pay
Assigned: Unassigned » fax8
Category: support » task
StatusFileSize
new82.51 KB
new19.29 KB

Hi guys, I'm working on porting signup_pay to 6.x.

I started from capellic code at #21 then adding, fixing and improving the module in general.
Attached you find iteration 1 of my development for this module.

It's currently work but it still needs love. There are certainly bugs, UI and UX is definitely improvable and the code still has to be carefully security audited.

So, you are invited to:

  • test the code on a testing website (remember to use Paypal sandbox)
  • test using anonymous registrations .. I kind of skipped testing this as we don't need this feature but it would be cool to have it
  • if you have development experience and you find bugs or you see improvements, provide a patch against my code attached here
  • report any issues you find here

I'm going holidays in 2 days so I won't work on this for a couple of weeks but then I will start again working.
Hope to see your feedback here when I'll be back.

Keep rocking,

Fabio Varesano

fax8’s picture

StatusFileSize
new82.51 KB
new19.29 KB

Somehow the files above don't work.. reattaching them below.

maddentim’s picture

Thanks to everyone who has contributed here. This is needed by a non-profit I am doing some work for. I have incorporated it into my test site and most everything is working fine. I have not gotten the IPNs to work right yet, so I have not gotten the loop closed to get the payment associated with the user. I have an idea about what maybe the issue. I will continue to test and I will report back any issues I encounter and bring patches when I can.

maddentim’s picture

My idea about the cause of problem with IPN processing was a dead end. Looking at the watchdog table I am seeing the IPN being successfully received, but then the signup_pay is failing the IPN saying the receiver_email doesn't match. Looking at the IPN record in the watchdog table, the receiver_email is in fact correct. When is fails it logs it to the watchdog and it looks like a space is being added to the end of the receiver email. Looking closely at the IPN record both in the paypal sandbox and the watchdog table, the space is not in either. I have not been able to figure out where it is coming from so far. I tried wrapping the receiver_email with a trim(), but did the same thing. Any thoughts?

Edit: Now that I look again, I noticed that the receiver_email has %40 in it instead of @. This seems to be coming from simple_paypal.module where it writes the IPN values with urlencode($value). I tried to using urldecode in signup_pay.paypal.inc, but I have been getting 500 errors at paypal. I'll look at it tomorrow. I'll attach a patch file with what I tried.

maddentim’s picture

StatusFileSize
new1.15 KB
maddentim’s picture

StatusFileSize
new1.16 KB

Ok, that was dumb. I fixed the issue and the IPNs are being processed now. It was entirely user error. The patch I posted before is unnecessary.

Now that I had it working I noticed that the 'you've paid' message has a typo (says "payed"). I fixed it and also reworded a bit while i was thinking about it. I have attached a patch for the change.

So what is the deal with this module? Is there still a maintainer? It would be good to get this 6.x branch in CVS.

kbahey’s picture

Status: Needs review » Needs work

The patch fails to apply:

patching file signup_pay.module
Hunk #1 FAILED at 221.
Hunk #2 FAILED at 698.
kbahey’s picture

Status: Needs work » Active

Also, is this against the Drupal 6 version attached above, or against Drupal 5 -dev release?

maddentim’s picture

StatusFileSize
new18.33 KB
new79.42 KB

Hi kbahey,

Pleased to see you are involved. Looking at your d.o user, very involved :)

My patch was again the tar.gz from #31.

I am still learning, but I think this is a good patch from the current 5-dev release to this new 6-dev branch. I'll attach a full tar of my directory too.

kbahey’s picture

Well, no wonder. I am the original author of that module.

If we have 2 more people test your version and find it working (or submit changes that make it so), then I will commit a -dev branch for 6.x.

It does not have to be perfect, just working well and free of show stopper bugs. Minor bugs can be fixed later.

maddentim’s picture

hey, I had no intention to slight your contribution to Drupal. I only asked to see if the maintainer was still involved / interested as this module has never had non-development release and no commits for over 2 years. I think it is an important addon to the core signup module.

At this point, I think the lack of a 6.x-dev release is a barrier to people trying the code. I am sure you have many things cooking and may not have a personal need for this to release. If it is a question of priorities, I am willing to join you as a co-maintainer and set up the dev in CVS.

Right now, you have two people having it working. What I posted is, aside from a text string change, is exactly the same as what fax9 put out in #31.

Thanks

kbahey’s picture

I did not mean my comment to a rebuke, though it sounded like one. I was just stating the history of the module.

Would it help if I take the latest D6 tar ball above and create a -dev release? Is it in usable shape, even with a few bugs? If so, this will help solve what you are referring to.

maddentim’s picture

that would be perfect. The basic functionality seems to work and a dev release is appropriate. I don't I haven't seen any bugs, but I imagine they exist. I certainly have a short list of enhancements that may be valuable. Mostly related to ui / user experience.

fax8’s picture

Hi there! I'm back from holidays and ready to work again on this module! Happy to see someone continued my work done in #31!

Khalid, please create a 6.x dev branch and -dev release of this module: looks like both me and maddentim have projects involved with this module and we'll both work on it.

Once we'll have a 6.x-dev version we'll be able to work on a per issue/task workflow rather than working only on this bug report.

kbahey’s picture

Status: Active » Fixed

A 6.x dev release will appear here in a few hours http://drupal.org/node/838460

Thanks to everyone who contributed to this effort.

maddentim’s picture

Awesome, thanks kbahey and fax8

fax8’s picture

@maddentim would you please open a new issue to discuss your ideas for ui improvements you were talking about in #42? I'd like to hear your ideas. Thanks!

tajabosc’s picture

Thanks for the great work.

I have two questions:

1)I tried the module with a paypal sandobox account, after i simulated the payment i'm returned to the "thanks page", but i don't receive notification nor the database is updated with the payment data. Is this correct?

2)I see there are other payment options than paypal (cash, cheque, bank transfer). Do i have to extend the module if i want to handle these payment options?

Thanks

maddentim’s picture

@fax8 - I have been working on this module for a client fairly hard in the last week. Unfortunately, their needs are a more robust than the current signup_pay structure provides. Mainly, they need to be able to offer options for signup. They are a non-profit that runs events for physically disabled individuals. Some of the events require them to collect payment, if for example they need to pay for lodging or meals. Also fundraising events needed to present options. So I have had to fork the module significantly enable the ability to present signup payment options. Sticking with the current roles based approach was very tempting, but we already were using drupal roles for specific purposes on the site. If we used roles for options, then we faced a proliferation of new roles as we staged events with new options.

So, I have had to alter the module significantly from the original scheme. I am certain willing and interested to share it back to the community, but it is so altered that it may not be a direction that kbahey wants to take it. I am operating at the edges of my abilities so I am not even sure that I have implemented this in an efficient or proper way. But they have a big event in August and I need to get this thing up this week...

That said, some of my enhancements should fit right back in (Like a thank you page with a link to the signed up node) and I will open issues with patches when then are ready.

@tajabosc As the module is currently structured, it does not log the payment attempt before the user is sent to paypal. The signup module logs the signup itself in the table signup_log but no log of a payment attempt is made. Signup_pay does log the receipt of payments in the signup_pay table. you need to set up the IPN address at paypal to get that going. Then, when the payment is made, your site will receive an IPN from paypal and record it to the signup_pay table. It does not appear that the other payment options have been created yet.

As this issue has been fixed, please create new tickets going forward.

Status: Fixed » Closed (fixed)

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