User Detail App allows to collect additional details from users. You can even ask different details to user as per the selected plan.
When the details being asked is related to user and this information is stored with user in PayPlans.
The data entered by user is visible at PayPlans->Users->On particular user screen under Details section in the back-end and can be altered by admin from back-end if required. User Details information is editable for user as well in Dashboard->My Account tab in front-end.
Steps to configure this app
Step 1 : Once you install the User Detail app, create app instance. Write xml in User Parameter field on app instance screen, for this you can take reference from Setup Instruction section and Save app details.
Step 2 : For displaying additional details collected using user-detail app, create an app instance of Dashboard-Widget app for User Details App.
Now, subscribe the plan and fill the additional details asked on Invoice Checkout page then check out.
User details in backend : User Details will be shown in backend User’s edit screen in Parameter section.
For example : If you want that when user selects Plan1 they should be asked details like gender, contact number, country and address. Create an app of user-detail type. Attach this app with Plan1 plan in plan parameter. In user parameter field, you need to specify the content you want to ask from your user in XML format as mentioned below.
<config> <fields name="params"> <fieldset name="params"> <field name = "address" type = "textarea" rows = "4" cols = "25" label = "Shipping Adress"/> <field name = "contact" type = "radio" default = "0" class = "btn-group" label = "Contact me before shipping"> <option value = "0"> No </option> <option value = "1"> Yes </option> </field> <field name = "work" type = "text" size = "30" label = "Work Phone"/> <field name = "mobile" type = "text" size = "30" label = "Mobile Phone"/> <field name = "reference" type = "list" label = "Reference"> <option value = "0"> Website </option> <option value = "1"> Newsletter </option> <option value = "2"> Online Advertisement </option> <option value = "3"> TV Ad </option> </field> </fieldset> </fields> </config>
Related KB's :
Add user detail parameter on Invoice
To show user details on invoice you need to use tokens, as follow-.
1. Go to PayPlans -> Configuration -> Customization tab.
2. In parameter Custom Content on Invoice you will see a multil-ine textbox, click on the below link View Tokens. Now, you will find the token of user detail app in User Details tab.
3. Copy the required tokens and paste them in above text box and Save the Configuration.
4. Now, in front-end login as a user and check the token on invoice.
If you want to hide those token which are blank then go to PayPlans->Configuration->Customization tab and set parameter Show Blank Tokens to No and Save the configuration.
General Issues & Queries
QUES #1: Is there a way that we can include the Title not the Id, in case of list field?
ANS : You can put the Title as a Value in User Detail App xml field, so that it will show title on invoice. In below xml example have the Title as Value in options of a list.
<field name = "reference_users" type = "list" label = "Reference"> <option value = "Website"> Website </option> <option value = "Newsletter"> Newsletter </option> <option value = "Online Advertisement"> Online Advertisement </option> <option value = "TV"> TV Ad </option> </field>
QUES #2: How to make any field as required field while collecting additional information?*
ANS : You need to apply 'required' class for those fields which you want to make required as in below example.
<field name = "work" type = "text" size = "30" label = "Country" class="required form-control"></field>
QUES #3 : How to add "placeholder" in the fields?*
ANS To add placeholder for the field you need to add hint="Placeholder here" in the field. For above field place holder can be added as follow -
<field placeholder="Full Name" class="placeholder required" name = "fullname" type = "text" size = "50" label = "Full Name" hint="Placeholder here"></field>
QUES #4: Date Validation in User/Subscription Detail Apps?*
ANS It would not possible to apply this kind of validation. It uses the Joomla fields and there is no option for validation of date.
QUES : I am trying to set up user detail but it is not showing up on the registration page?*
ANS : User Details and Subscription Detail Apps are made to collect additional details on Invoice Checkout page, not on Registration page. To achieve your scenario you need to use One Click Checkout plugin of PayPlans. So that Registration page and Invoice Checkout page will come together on one screen as you need.
If you are using registeration method other than Quick Registration then above solution will not work, like- EasySocial, Joomla, etc.