The first steps of a solution are upon us...
I have managed to set up a system that bypasses most of the duplicate authorizations that are requested by the shop component when first entering the shop. Right now if you set up a CB account you are autoregistered as a Shop user. I have not integrated far enough to actually translate the fields over so the billing information is not yet translated over.
This is registration array of successfully registered customer.
Array (
[show_prices] => 1
[user_id] => 116
[username] => ako
[perms] => shopper
[first_name] => john
[last_name] => doe
[country] => USA
[zip] => 50000
[shopper_group_id] => 5
[shopper_group_discount] => 0.00
[show_price_including_tax] => 1
[default_shopper_group] => 1
[is_registered_customer] => 1
)
This is registration array for someone logged in but not registered with Shop.
Array (
[show_prices] => 1
[user_id] => 117
[username] => bobbob
[perms] => shopper
[shopper_group_id] => 0
[shopper_group_discount] => 0.00
[show_price_including_tax] => 1
[default_shopper_group] => 1
[is_registered_customer] =>
)
As you will notice as part of the registered authorization the shop reads the fields you have entered for first_name, last_name, country and zip (as well as marking customer registered (which is really just a check that their is BT (billing) information present.)
The rest is already autoassigned. The difficulty in the final integration is that VM uses straight predined names for its fields while CB uses dynamic user defined fields for everything save the basic user data (name, username, email).
I have a feeling to integrate it so that data matches up I will either have to set up a naming convention or a series of tests for appropriate fields. I have a feeling the naming conventions would work better and I can just write up a short and descriptive setup doc with detailed screenshots.
Any thoughts on any portion of that?
Oh, I also was interested if anyone thought I was creating any security issues by setting up dummy values for [first_name] => john [last_name] => doe [country] => USA [zip] => 50000 and by skipping the registered user test.
Well, I will keep plugging in my spare time. Have fun all.