[SOLVED] Top-level merchandise plan requires subscription

8 years 5 months ago #147707 by jhaines
I have subscription plans A,B,C,D set up flat (all with parent - top), mutually exclusive with one subscription mandatory. I have another merchandise plan, Z, also at the top level but non-exclusive and non-mandatory.

Using a link of the form ..
[code:1]index.php?option=com_comprofiler&task=pluginclass&plugin=cbpaidsubscriptions&do=displayplans&plans=5[/code:1]

.. I can attempt to purchase just the merchandise, plan Z, either as a non-registered user or a registered user with no valid subscription. However the following error is returned:

Chosen plans combination is not allowed (you must choose coherent plans selection, e.g. mandatory subscription(s) must be active or mandatory plan(s) must be chosen). '' has mandatory options 'A', 'B', 'C', 'D' and none is selected.
Please press back button and select the subscription plan to which you would like to upgrade.


This seems odd since Z is configured at the top level, non-exclusive and non-mandatory. Is this correct behaviour and if so, why does it work this way please?

Although I see that one of A,B,C or D is mandatory, it seems that they should be mandatory only if a subscription is to be purchased, but not for merchandise plans unless they're a child of a subscription plan.

Is it possible to configure a plan to sell merchandise without requiring a valid subscription also?

Julian

Post edited by: krileon, at: 2010/12/09 20:43
8 years 5 months ago #147727 by krileon

Is it possible to configure a plan to sell merchandise without requiring a valid subscription also?

Not if you have a top-level plan that is Exclusive. Exclusive means "mandatory" or "required". The user would be required to have the Exclusive plan before being able to make a purchase to a non-exclusive plan.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Templates - CBSubs - Hosting - Forge - Incubator - GroupJive
--
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 EST to 4:00 PM EST. 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.
8 years 5 months ago #147734 by jhaines
Sorry for double-posting. See above/below instead.

Post edited by: jhaines, at: 2010/12/03 22:54
8 years 5 months ago #147735 by jhaines
Thanks for the explanation, but I think the plan configuration wording suggests otherwise. The options for each plan are:

A. Exclusive, other plans of same parent cannot be subscribed same time, but one subscription is mandatory

B. Not exclusive, other plans of same parent can be subscribed same time, and subscription is not mandatory

In my tests, option A clearly prevents selection of multiple subscription plans, but does not prevent simultaneous selection with a non-exclusive merchandise plan at the same (top) level. This implies that "other plans of the same parent" does not extend to the non-exclusive merchandise plan at the same level.

On the other hand, the "one subscription is mandatory" appears to apply across all plans, not just those in this exclusive same-parent group. So, there's inconsistency in the behaviour between the two halves of the description.

If the behaviour is as-intended, then the description is poor. Exclusive means something quite different to mandatory. I note that there's no explanation in the documentation beyond a re-stating of the text of the configuration option. What's needed is examples demonstrating the interation between plans for the various configuration settings.

Nonetheless, the behaviour is peculiar. If I wanted a merchandise plan to be dependent on a subscription plan, why wouldn't I make it a child of the subscription plan instead? How would the behaviour differ versus that described already?

Regards,
Julian
8 years 5 months ago #147864 by krileon

Nonetheless, the behaviour is peculiar. If I wanted a merchandise plan to be dependent on a subscription plan, why wouldn't I make it a child of the subscription plan instead? How would the behaviour differ versus that described already?

If you want a merchandise to depend on a plan then yes indeed you should make it a child of that plan. Behavior would be relatively same. The user would need the parent plan before being able to purchase the merchandise plan.

Examples below:

Parent: Plan 1 - Exclusive
Parent: Plan 2 - Exclusive
Parent: Plan 3 - non-Exclusive

If a user attempted to subscribe to Plan 3, but did NOT have Plan 1 or 2, but you only have the URL to Plan 3 they would be presented with an error. This is because they are all top-level plans with at least 1 of them being exclusive.

Parent: Plan 1 - Exclusive
Parent: Plan 2 - Exclusive
Parent: Plan 3 - Exclusive

If user was now given the URL to Plan 3 they would be able to successfully complete a purchase because the plan is exclusive and not dependent on other top-level or parent plans.

Parent: Plan 1 - non-Exclusive
Parent: Plan 2 - non-Exclusive
Parent: Plan 3 - non-Exclusive

In this scenario there is no top-level exclusive plan allowing selective purchase to all of the plans (could subscribe to all 3 at once) freely. If give then URL to plan 3 then purchase would be successful as there is no dependency.

Parent: Plan 1 - Exclusive
Parent: Plan 2 - Exclusive
Child: Plan 2a - non-Exclusive

Now if user was given URL to Plan 2a it would fail, because they need to have the parent of Plan 2 in order to purchase 2a. This means your URL would need to also include the ID to Plan 2 as well as 2a in order to subscribe to 2a successfully.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Templates - CBSubs - Hosting - Forge - Incubator - GroupJive
--
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 EST to 4:00 PM EST. 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.
8 years 5 months ago #148146 by jhaines
Okay, thanks for the detailed examples and clarification. It would be great to see this level of example and many more like it in a future release of the documentation. Thanks!

Julian
Moderators: beatnantkrileon
Time to create page: 0.407 seconds
Facebook Twitter Google LinkedIn