5 years 3 months ago - 5 years 3 months ago#1by James Dekle
I have 7 fieldgroups with a number of fields in each, some required, some optional. I direct people to this after they have registered but not as part of the Joomla user user registration process.
It's essential to be sure that all user profile data required is completed before they can use our site.
Since I've just started using this component, it's possible I am missing something but here are two issues that are a problem:
The problems I have run into:
Within a fieldgroup, required fields show an error if they are not filled in. However, there is nothing that ensures a user complete all the fieldgroups. This means there can have many required fields that are not filled in.
The Terms and Conditions is in it's own fieldgroup. The field is required but a user can leave the fieldgroup it is in without completing it just by clicking cancel. Once checked, it can't be changed but being able to ignore it and leave the page without acknowledging it defeats the purpose of having it. I did note that the fieldgroup set this filed as required but also included it in Registration. Would that have caused this behavior?
How can this system be configured to ensure that all field groups have no required fields incomplete once a user starts editing?
If this is currently not possible, would it be possible to modify the functionality of the "Save" button on a multi-filedgroup form to "Next" that saves the current data and then opens the next field group in turn or some similar strategy?
It seems some confusion is there.
If you want to be sure tat user must fill all the fields of JoomProfile, then use registration of JoomProfile.You can have registration for in JoomProfile as well, you just need to map the Joomla core fields in config of JoomProfile.
Please let me know if I understood something wrong.
I installed and activated the jp-registration-plugin, added the registration fields and mapped them so the Fieldgroups and their fields are now part of the user registration process.
I am transferred as expected to begin filling out the Fieldsgroups.
Here is the problem. I can quit without completing all Fieldgroups and their required fields.
All I need to do is click out of the registration process (i.e., go to the Home page via the menu) and leave dozens of required fields uncompleted.
Since I cannot have an incomplete profile with required fields not filled in, it's a huge problem.
Logically, if Fieldgroups are used, the "Save" button (Perhaps it should be called "Next Group") and save the user's data and then open the next group. A user should not be able to leave that Fieldgroup if they have any unfilled fields in it.
In other words, force going through all the Fieldgroups and filling in the required fields.
If a user is allowed to abandon the form, the entire concept of required profile fields is defeated.
The only way I see to make sure that the entire profile is filled in is to have only one fieldgroup so all the required fields would have to be filled in.
Or, am I missing some way to prevent an incomplete profile where field groups are involved? Or, is this something more complicated to accomplish?
You are right. I wonder why it didn't come in my mind and no one else reported it.
Well, the solution will be giving a cancel button on each fieldgroup. so that user can cancel the registration any time and can go to home page.
Will it be okay?
Thanks for the open mind on this and quick response. But I think maybe it's a bit more complicated and issue, here's why:
Your "Cancel Button" solution would give people an obvious way to cancel filling the form but that will not address the core problem, having people abandon filling in their profile before it is filled out.
Maybe i didn't understand how you planned to solve that flaw in the way that multiple Fieldgroup profiles work now (where anyone can abandon the form without fully completing it.)
I suggest you add the following functionality to the plugin and make it the best solution out there for extending user profiles (I've tried at least 5 or 6 major components that can be used to extend user profiles and only two work like the need to, EasyProfile and Community Builder although they are less than ideal for other reasons.)
I would recommend you add the following functionality:
1. Set up a field in the profile database that your component could query to determine if the user had completed filling in every required field in the profile. (Community Builder takes this idea a step further and will open each of its "tabs" - your Fieldgroup - where a required field is not filled in or a field has an error. That ensures all the data submitted is complete and valid.)
2. Your component query that or another database field to determine if the user's profile has been fully completed. If the site uses your login form (or your Registration Validation Pro plugin), it should take the user to Joom Profile until the user profile has been completed correctly.
This would provide two important advantages to users:
a) ensuring a completed form and
b) having a field in the database we can query to determine if the form is usable for customization in our application.
3. Modify the functionality of the Fiedgroup to automatically open the next Fieldgroup when the user SAVES the Fieldgroup. That behavior will encourage the user to "walk through" and complete their entire profile.
4. Add a CANCEL button along with the SAVE button. However, I would not display the Cancel button until the profile has been fully completed. At that point, the user would be maintaining their data and likely only one or two fields being modified so giving the user the able to save or cancel out and return to the main menu of the site would make sense.
If you can add these features to Joom Profile you'll have the best solution to user profile management I've seen (and I've been working with a lot of solutions searching for the ideal answer) to extending the user profile.
Your component has the potential to sweep away the competition by finally delivering a robust solution that is bootstrap stylable, light weight and able to manage the messy and incomplete data users are notorious for...
Hope this clarifies things and are features you will add to this already very good component. I'm glad to help clarify any of these ideas and help if I can.