Jump to content

A national registration system. Is PW up to the task?

Guy Verville

Recommended Posts

We have been asked by a potential client to conceive a national registration system. The client: a sport association that is divided into divisions, districts, clubs, and, of course, members. While any serious CMS would be able to help with this task, there is an aspect of the registration that puzzles us.

The actual registration form would have mandatory fields, requested by the national organization. However, each division and/or club should be able to add, remove, modify any other type of fields to the same form and leaving intact the mandatory fields (since each divisions or club has its own perquisites). 

There are about 400 clubs in this associations (38 000 members), 5 divisions. So, in theory, there would be 400 registration forms, 400 clubs administrating their own form (which means 400 admin users), 5 divisions being able to add their own fields, etc. Of course, this has to be user friendly...

A complete custom solution (with the help of an established framework) is, at the moment, our choice, but I am wondering if PW could not help us. I see in the Form builder a way to ease the programming process. But is it possible to limit the admin of a club to just the form of their club? Along with this form come all the actions pertaining to administrate membership information, payments, etc.

The system has to be multilingual.

Link to comment
Share on other sites

The idea of clubs creating their own forms is eye twisting, to say the least!

Would you be able to perhaps give them a selection they could choose from? So they click on check boxes to select the form fields they want and be able to change the label. You could use an ordinary template/page combo for that action. Each page representing a particular club.

Then use the results from that to create the actual form - if checkbox, display field, sort of thing.

Link to comment
Share on other sites

Thank you for answering.

The form creation can not be limited. Say, for example, that a club want to add a check box to know if the member would like to volunteer. But another field to know how often he/she plans to go to the club, whatever. The clubs are themselves a moving entity. The division will create, delete clubs... Hence, a club is an entity with a registration attached to it, but this form is malleable.

This is mind boggling, I know... Everything is possible, of course, and it is why that a custom solution might be the only way...

Link to comment
Share on other sites

You can still do it within the processwire environment, I would think, but you would probably want some control so that fields were not being added without good reason and so cluttering up the system with thousands of fields (400 clubs creating 10 custom fields each and you have 4000 unique fields in the database and maybe loads more not being used!) By creating fields in advance, you add some control. This would apply to any system, not just PW.

However, if you wanted to keep field numbers under control (advisable with any system), and the related DB structure too, you could use arrays. So you have your core mandatory fields and then one field for extras.

You then create a template where they list the fields they want - possibly using something like a repeater that has the various values.

This then is used to create the form on the page.

The values from those fields are bunged in an array and then put into your extras field.

Not sure what you do if they want to add more fields later in the middle. It may be a case that new fields are always added to the end of the array, but the display order is changed, or something .... this is where my knowledge runs out completely!

Just as an additional, non technical thought, if you allow them complete freedom they could make a right mess of their forms or end up asking information that is inappropriate or has data protection or security/privacy issues that would probably drop on the head of the association.

It may be better if they are limited centrally to what they can do and ask for.

Link to comment
Share on other sites

This one is really tricky. If you do something like letting them create their own fields in the normal

PW way then you will quickly have thousands of PW tables (one for each field) but even if you tried to do something like a normal DB table with all fields in one table and they add fields in a normal DB method (you'd need to build a nice interface for this) you would still have a table for every group.

You almost need a custom fields table for every groups field info to go into (label, fieldtype and which group the field belongs to) and another table to store the values.

You're limited on what fields you could offer there (the value field would be text or varchar) so you would have integer, text and so on but not image or file.

That's just me thinking out loud, but something like this has the potential to get out of control very quickly.

  • Like 1
Link to comment
Share on other sites

I would look for option where you chain multiple form builder forms, create multipage forms using one form builder form per step. That's works great (we have built pretty big application using that approach).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...