Here's some notes from my attempts to make paid events work with the alpha2 code.
Update registration to 1.1
Update commerce_registration to 7.x-2.0-beta5
Enable cod paid events, payment, order ui, and payment ui and paypal (and payment method example, if you want it).
I noticed this oddity which is also mentioned in #1846198: Why registration objects created for both the node & commerce product? - https://www.evernote.com/shard/s120/sh/83278153-ce3f-4758-b339-379160f59...
Check the "This is a paid event" checkbox
Add a product for $10 that is active.
Click save.
Manage registrations -> Settings -> Open "Registration settings for Node:" -> Uncheck to disable registrations.
Keep the product registrations available.
Go to admin/config/group/permissions/node/event
Check non-member and member "View Product field"
Go to admin/people/permissions/
Grant the permission access checkout to anonymous and authenticated users
Go to checkout rules and fix the missing profile fields (not sure what right fix here).
More steps from larsdesigns in #1979182-1: Create registration feature for main camp
1. Enabled registration views module.
2. Disabled entity registration access.
3. Grant "Access checkout" permissions for the anonymous and authenticated users OG registration.
4. Grant "Create user registrations" for the anonymous and authenticated users in OG registration.
5. Grant "Paid Event: Create new registration" for anonymous and authenticated users in core Permissions.
6. Grant Paid Event: Register other accounts for anonymous and authenticated users in core Permissions.
7. Grant Paid Event: Register other people for anonymous and authenticated users in core Permissions.
8. Grant "Paid Event: Edit registration state" for anonymous and authenticated users in core Permissions.
9. Grant "Paid Event: Register other people" for anonymous and authenticated users in core Permissions.
"Administer registration" setting resolves the cannot add to cart problem described in the following error:
| Comment | File | Size | Author |
|---|---|---|---|
| #9 | shoppingcart.png | 455.01 KB | japerry |
| #9 | manage_registrations.png | 215.31 KB | japerry |
| #9 | checkoutandregistration.png | 391.13 KB | japerry |
| #9 | registration_info.png | 389.34 KB | japerry |
| #9 | event_page.png | 433.18 KB | japerry |
Comments
Comment #1
gregglesI just updated the issue summary with more advice from larsdesigns that makes the whole thing work. Now..."just" needs someone to make it all into a feature ;)
Comment #2
ezra-g commentedImplicit in the steps greggles listed above is the fact that OG, at least as it exists in COD today, adds some complexity for site builders.
We need to figure out how to make the level of effort for setting up a COD site at least as low as it was in D6.
Comment #3
japerryOG has little to do with this issue. To make paid registrations work, currently, you must go this route:
1) enable the commerce_registration and registration modules
2) do NOT have registration on the event
3) create a new product type called 'registration'
4) add a registration field to the product type, this will contain all of your registrations
5) add a product reference to the event node
6) ???
7) Profit!!
Once this process is done, you can use rules to control what type of access controls you want. Since attendee views haven't been ported over to OG fully, you could simply add a new 'registered' role to the site and filter by that on the attendee view. Alternatively, (and preferably) add a rule that adds a user as an OG member, and make only members able to create sessions, etc.
Eventually, I want the Registration entity to have an OG or event reference on it. Right now its a property of the registration entity, so its not obvious to an end user where the link is. In the above example, all registrations would be tagged to a specific registration product, which you could certainly make a view of regardless of OG or not.
So Paid events DO work, if you take a gander at the README.txt in commerce_registration.
Comment #4
gregglesjaperry, I did read the README.txt in commerce_registration and followed it explicitly and it didn't work for our use case (registration for anonymous users and authenticated users). Adding the permissions in the OP was discovered by larsdesigns on his test site (where he also followed the commerce_registration README and then it worked for me.
Bottom line, of course, is that paid registration is a musthave feature of cod and requiring any configuration by end users is going to hamstring the distribution until it's fixed. If you find that you can make it work out of the box without changing the OG permissions I'll be overjoyed to hear that news.
Comment #5
gregglesTo be more clear about "didn't work" - there was no dropdown/button on the event for anonymous to checkout/register.
Comment #6
ezra-g commentedGiven the importance of registration to a conference management tool, this seems at least major in priority, if not critical.
Comment #7
ezra-g commentedThis seems like a critical gap to close.
Comment #8
rootworkThe screenshot provided in #1840928: Provide streamlined workflow for editing paid event registration settings might help here.
Comment #9
japerryI'm fairly confused as to what wasn't working with the Colorado sites. Below I have screenshots of what an anonymous user would go through when purchasing a new registration. The only sorta annoying part is that a user needs to know its selected for 'other person' during registration, but that label could be fixed with a simple form_alter.
This appears to be working as designed... All I did was dump the database into my 7.x-1.x-dev branch of cod and cleared the caches.
Comment #10
gregglesAll our code is in this project. Maybe check it out and diff?
Comment #11
gregglesI don't see why you "need more info." COD should have paid events out of the box. If you think our analysis of the situation is wrong then update the issue summary and fix it the right way.
PS Editing comments makes baby Druplicon sad.
Comment #12
ezra-g commentedIt does sound like an important variable between the CO site and japerry's test environment is possible changes in the codebase - Would be great to see what a diff between the codebases shows (or, just recreate the environment using the CO DB *and* codebase) :).
Comment #13
finedesign commentedMany thanks for this thread! (Esp for ezra-g and greggles pressing home the need for this to "just work.")
I was able to get registration working, though without a payment gateway. If there is another thread with advice on setting up the payment process, please share. I would love to use something else besides Paypal. I particularly love Dwolla but need something that accepts international payments.
Regarding the point above:
I have no idea how to address this. But again, registration worked without it...for now.
Comment #13.0
finedesign commentedx
Comment #14
japerryFixed with ticket, cod_paid_events, and cod_registration modules in alpha6.