Skip to Content Skip to Menu

🌟Discover the Joomla AI Plugin that wrote its own story! - CB Editor Assistant 1.1now for Joomla 3, 4 & 5!
✍️ 5-Day Free Trial, then 🎯 save up to 30% with our 🛍️ Intro Offer (First 50 users, ends Dec. 25th)
🌲 Merry Christmas! Great savings on Professional and Developer Memberships! Get 25% off now with code XMAS-2024!

Support for multiple subscription dependencies

  • fdinkler
  • fdinkler
  • OFFLINE
  • Posts: 217
  • Thanks: 27
  • Karma: 0
7 months 3 weeks ago - 7 months 3 weeks ago #338019 by fdinkler
Kyle - 
I have a question around multiple subscription dependencies and whether CBSubs can support it given the latest updates.
Current state:
I currently have multiple plans -
  1. Primary Plans (exclusive among Primary Plans, only one active at a time for a member) and
  2. Add-On Plans (optional, non-exclusive) available depending upon which primary Plan was chosen
Currently, members purchase each subscription separately which can lead to situations where the Primary plan has expired and the Add-on subscription has not,
This is logically not allowed but there's no way that I can find in CBSubs to expire active subscriptions that are dependent upon another subscription. 

Auto-renew for the Primary subscription partly mitigates the problem but is still reliant on the member to not switch back to manual renew after subscribing.

The child/parent plan definition would work, but it requires duplicating and managing all Add-on Plans (11) for each Primary Plan (6.)  For content or reporting that's related to a specific child Add-On, I would need to check for six different (but identical) Add-On Plan subscriptions (one child Add-on for each Primary.)

If a child Plan could be defined with multiple exclusive Parents, but be subscribed under only one exclusive Parent, that would resolve the problem.

To eliminate the problem, my Board now wants to unify a member's subscriptions such that all member's subscriptions (one Primary and 0 to Many Add-Ons) are the same start/end dates.

Studying the current CBSubs Plan model, I don't see a ready solution.

The last revision to CBSubs manual is 2016 so of little use.
I did find the Dynamic Pricing and CBSubs Options but didn't find any further insight.
Any ideas?
Last edit: 7 months 3 weeks ago by fdinkler. Reason: Title change

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48616
  • Thanks: 8302
  • Karma: 1446
7 months 3 weeks ago #338022 by krileon
If the addons are meant to be tied to the primary subscription then completely eliminate those plans entirely and replace them with CBSubs Options. CBSubs Options can be used to add additional pricing options to plans. The options they've selected are available in CBSubs integrations so you're able to add new features (e.g. set a field value, protect additional URLs, etc..) based off the options they've selected to support additional functionality.

I can offer some CBSubs Options configuration suggestions if you can provide some examples of what your addon plans are currently doing. Typically you'd just navigate to your plan then under Integrations > Options > Options then set "Plan Options" to "Enable". Next under that you can add fields to your plan that can affect the price (read parameter descriptions carefully here!). Their configuration is similar to configuring CB select fields.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in or Create an account to join the conversation.

  • fdinkler
  • fdinkler
  • OFFLINE
  • Posts: 217
  • Thanks: 27
  • Karma: 0
7 months 2 weeks ago #338039 by fdinkler
Replied by fdinkler on topic Support for multiple subscription dependencies
Kyle - thanks for the reply.
Example:
Primary Plan - Annual Member w/online magazine 
Add-on/Options -
  Competition Division membership $10
  Gas Division membership - $35

An optional membership grants additional access via ACL, and needs visibility via database for membership reporting

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48616
  • Thanks: 8302
  • Karma: 1446
7 months 2 weeks ago #338041 by krileon
Plan options are stored in the parameters of the subscription so they're accessible from the database and PHP, but requires some parsing. However plan option selection is also available to all the CBSubs integrations. So for example CBSubs Fields can be used to push their option selection to a field. CBSubs SQL Actions can be used to push their option selection to a custom database table. Adding new usergroups would probably be the trickiest part. CB Auto Actions can do that, but you'll need a Code or Query condition to get what plan option they selected and I can provide some simple examples for doing that if needed.

Aside from plan options I don't see a way to solve your problem with child plans beyond requiring auto recurring payments.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in or Create an account to join the conversation.

  • fdinkler
  • fdinkler
  • OFFLINE
  • Posts: 217
  • Thanks: 27
  • Karma: 0
7 months 2 weeks ago #338074 by fdinkler
Replied by fdinkler on topic Support for multiple subscription dependencies
Thanks Kyle - 
In Re 
     CBSubs Fields can be used to push their option selection to a field. 

If multiple options were selected, how would that be captured in a single profile field?
Thanks,
Fred

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48616
  • Thanks: 8302
  • Karma: 1446
7 months 2 weeks ago #338076 by krileon
CBSubs Options creates special substitutions for getting each option selected. So if you've multiple options you'd just have multiple fields to push the value to for example. For example I'll use the below option.

Option
Type: Drop Down (Single Select)
Title: Color
Name: color
Values
Value 1
Value: red
Label: Red
Price: +5
Value 2
Value: blue
Label: Blue
Price: +3
Value 3
Value: green
Label: Green
Price: +1

The substitution formula for getting the selected option value is as follows.

[PLAN_OPTS_OPTION_{OPTION_NAME}]

Notice how it takes into account OPTION_NAME. So with my above example my substitution would be the following.

[PLAN_OPTS_OPTION_COLOR]

This would give me the "value" from the Values based off what option the user selected during purchase. So for example if I select the "Red" option then [PLAN_OPTS_OPTION_COLOR] would output "red".

This is further described and with an example under Integrations > Options > Display once plan options are enabled as well.

These substitutions only work within CBSubs integrations. CB Auto Actions has no access to them. However they're retrievable from SQL or PHP and I can provide an example of how to do so if you're needing to condition an auto action based off option selection.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in or Create an account to join the conversation.

Moderators: beatnantkrileon
Powered by Kunena Forum