I have a custom multi-page chronoform set up to handle Community Builder registration to my client's site, but now they have requested 2 different registration types - Teachers (Free Lifetime) and Coaches (Annual Subscription) using the same form, but will have different content access permissions (CB Subs seems to handle content/menu access permissions beautifully).
So I have downloaded a 500-seat license for CB Subs from the Community Builder website and have set everything up in that to enable it to handle the subscriptions. I have a "Teachers" subscription plan and a "Coaches" plan.
My question is: has anyone had experience with passing form information (such as name and address details) from Chronoforms back to a CB form, wherein I propose that the person registering then chooses their subscription plan and finishes the payment process via the CB Subs API?
Or alternatively, is there a way to manage the whole CB subs sign-up all within Chronoforms?
The reason I started using Chronoforms in the beginning was the relative ease with which one can create a better designed form. The form is quite long and moderately complex, and so Chronoforms was the recommended solution to build this... but the problem now seems to be CB Subs integration!
Any help would be much appreciated. I have 30 days left to get a refund on CB Subs if it is not the way forward.
:wink:
Thanks
Sorry, no experience at all with CB Subs, I'd never heard about it until your post so I guess that it hasn't been mentioned by anyone else here.
It can probably be made to work with ChronoForms but the CB processes aren't always very straightforward to work with because of the way they structure optional elements using tables to structure tables.
Bob
Hi daemonhunt,
Sorry, no experience at all with CB Subs, I'd never heard about it until your post so I guess that it hasn't been mentioned by anyone else here.
It can probably be made to work with ChronoForms but the CB processes aren't always very straightforward to work with because of the way they structure optional elements using tables to structure tables.
Bob
Ahhh... that's quite sad. I have been finding this subscriptions and custom forms thing very difficult to do with Joomla. Have spent hundreds of dollars on 3rd party components and weeks customising them, always to get near the end and find I can't do what I want. Oh well, guess I gotta carry on :-) Thanks anyway.
If there is anyone out there who has any idea where to start customising the design of a Community Builder form, then please msg me.
Cheers
CBSubs is a plugin for Community Builder, though the only difference is that it handles time-based paid subscriptions.
Using the CB Plugin for Chronoforms, I can pass data from a complex multi-page form into CB, but all I need to do is pass this information on to the CBSubs plugin instead.... even if I could somehow modify the CB Plugin itself and duplicate it to create one that submits it to the CB Subs plugin? The architecture is very similar, but I am not expert on these things.
Is it possible for me to communicate with the creator of the CB plugin for Chronoforms? He/she would most likely be able to help me do this. I have people from CB telling me they aren't familiar with Chronoforms, and Chronoforms people telling me they aren't familiar with CBSubs... Is there anyone who is familiar with CB and Chronoforms who can help me?
Thanks in advance
Max wrote the Plugin - I think that it was for a client quite a long time ago.
As far as I know, apart from the odd small project neither of us have used CB, I'm certainly not at all familiar with it.
Bob
same boat as you in terms of having purchased hundreds of pounds worth of joomla stuff, so many obstacles over past six months and having to rethink stuff all the time
also looking for solution to this. looks like the database table is jos_cbsubs_subscriptions..
Yep, I'm furiously hunting down a solution at the moment. Trying to modify the Chronoforms CB Plugin to populate the value of a CBSubs checkbox along with all the user detail now. I'll post up how I go.
My guess is that Max and Bob are gonna get a lot more of these requests for integration with CBSubs over time. It's a brilliant plugin for CB (and expensive)!
I've got to stop moaning... :-)
Okay, here is a screenshot of my database with the particular CBSubs table under scrutiny here. I am absolute crap at this kind of stuff. Perhaps Max could help if he's not too busy?
You'll notice that plan_id is circled in red. This is the primary value that CBSubs uses to select the subs plan that a user is subscribing to.

I attempted to modify the cf_cb_registration plugin to include an extra database lookup for #__cbsubs_subscriptions and then create additional "foreach($fields as $field){ $fieldname = $field->name;" under the exisiting CB comprofiler_fields for this, but I failed miserably. I'm not really expert at php/database work at all, though I understand the very basic concepts.
My thoughts are, do I have to add a whole additional row to the table to just include the plan_id value?

or alternatively, instead of a whole row, I am wondering is it just the value for plan_id I need to submit and then the plugin poplulates the entire row itself on submit via CB?
Client just rang to see how his new membership subscription form is working out. I told him I'm nearly there. In New Zealand, we call this "Pushing s**t up-hill".
Looks like you'll need to add a row to that table with at least the id, status, user_id and plan_id having good values . . . and keep your fingers crossed that default values work for the rest.
Bob
Hi daemonhunt,
Looks like you'll need to add a row to that table with at least the id, status, user_id and plan_id having good values . . . and keep your fingers crossed that default values work for the rest.
Bob
Thanks Bob,
I wish I knew how to do that. Like I have intimated, I'm out of my depth now ๐ I guess I just sit and wait and see if there is an expert out there who can/wants to post a mod for the cf_cb plugin to enable me (and others) to do this.
Unfortunately it's pretty hard to test. I just took a look at the app (a) it's $100 and (b) it's ioncube encoded so you can't see the raw PHP to work out what it is doing :-(
Bob
Hi daemonhunt,
Unfortunately it's pretty hard to test. I just took a look at the app (a) it's $100 and (b) it's ioncube encoded so you can't see the raw PHP to work out what it is doing๐
Bob
Exactly, Bob! It's expensive and encoded, and thus my despair. It is a shame you guys (CB and Chronoforms) can't do a deal together to have open access to each other's stuff because Chronoforms augments CB in a way nothing else does.
The irony is I have paid for the cheaper Chronoforms and a 500-seat license for CB Subs to date. You have just reached the ioncube limitation of CB Subs, and I thank you because you are obviously trying, but I am yet to see if they come to the party... CBSubs lead me to believe (before I pulled my credit card out) that they will custom encode payment gateways upon request, but in this particular customer-driven request I am still waiting for them to see what they are willing to do, as the requests for this integration will certainly grow.
I have a forum going over at CB also which refers to my thread here:
http://www.joomlapolis.com/component/option,com_joomlaboard/Itemid,38/func,view/catid,88/id,106160/
I am cross-posting both threads for help, and am not going to give up easily. I simply refuse to use ugly, ungainly CB forms for my client's website!
Thanks Again Bob!
the cb plugin is working great, but when i put the following code into the cb plugin-onsubmit after block, nothing goes into the table im trying to write to. anyone any ideas?
<?php
$MyForm =& CFChronoForm::getInstance();
$MyPlugins =& CFPlugins::getInstance($MyForm->formrow->id);
$userid = $MyPlugins->cf_cb_registration['user']->id;
$dt = date("Y-m-d")." - ".date("H:i:s");
$expdt = date('Y-m-d', strtotime('+1 year'))." - ".date("H:i:s");
$ipa = $_SERVER["REMOTE_ADDR"];
$query = "INSERT INTO #__cbsubs_subscriptions
SET status = ".$db->quote('A').",
user_id = ".$db->quote($userid).",
plan_id = ".$db->quote('1').",
parent_plan = ".$db->quote('0').",
parent_subscription = ".$db->quote('0').",
subscription_date = ".$db->quote($dt).",
last_renewed_date = ".$db->quote($dt).",
expiry_date = ".$db->quote($expdt).",
next_event_id = ".$db->quote('0').",
autorenew_type = ".$db->quote('2').",
autorecurring_type = ".$db->quote('2').",
regular_recurrings_total = ".$db->quote('0').",
regular_recurrings_used = ".$db->quote('1').",
previous_recurrings_used = ".$db->quote('0').",
previous_status = ".$db->quote('R').",
ip_addresses = ".$db->quote($ipa).",
integrations = ".$db->quote($org).";";
$db->setQuery($query);
$db->query();
?>
although still tempted to keep cbsubs registration for a whole bunch of cbsubs 'workflow', and security reasons i dont even begin to understand. chronoforms has been a god send, but for cbsubs.. i might just stick with "you have to register first" rather than at the same time as submitting content to another component, which would just confuse everyone