Jump to:
| Project: | Ubercart Domain Access |
| Version: | 6.x-1.0 |
| Component: | Code |
| Category: | bug report |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | active |
Issue Summary
Info
Drupal 6.14
Domain Access: 6.x-2.2
Ubercart 6.x-2.x-dev (2010-Mar-10)
UC domain access 6.x-1.0
UC Roles 6.x-2.x-dev (2010-Mar-10)
UC Cart links 6.x-2.x-dev (2010-Mar-10)
Content Access 6.x-1.2
1) Primary domain accessible by anon users
2) Second domain only accessible to users who hold the correct role.
3) User accounts and roles are shared (via Domain access)
4) Product sold on primary domain grants permission to role to access secondary domain.
When purchasing a product using a cart link on a ubercart installation where domain access is enabled the order completes correctly.
Even if the user is an anon user and Drupal generates a new user account on order complete.
What doesn't happen is:
a) The auto-creation of the new user doesn't assign the user to the default domain.
b) The auto-assigned role to the new user account on order completion doesn't occur.
New user accounts are thus, locked out of accessing any domain except for the default domain.
Bug Assumptions
1) Cart links module is not domain access aware and the orders are not correctly registered?
2) New user creation is not domain access aware and not assigning domains.
3) New user creation in ubercart not assigning roles because user creation doesn't validate correctly
4) Ubercart roles not validating user accounts before attempting to assign roles.
One or all of the assumed issues could be contributing to this bug.
Any thoughts or feedback?
Comments
#1
I'm working in quite a different scenario, but a) is in fact a problem (a new user should definitely be assigned to the domain it's placing its order to)
#2
Indeed. I had the problem too. But it is an Ubercart issue I think : we should check, but for me ubercart does not invoke the hook related to user creation, so domain access can not do its job assignation.
#3
Ubercart does invoke the hook correctly by calling user_save() in the expected way, but it fakes the user data as it is not coming from the standard registration form - so it does not include the information Domain Access needs to add the user to the correct domain.
This is technically an Ubercart issue because the same problem will apply to any module that expects extra data in hook_user, but perhaps this specific issue could be fixed in uc_domain somehow - however I don't currently need this functionality or have the time to work on it.