Invision Power Board 2.3.4 (or 2.3.x)
I have a website running the above, with 800 users.
Due to our circumstances, all users are PRE-registered by the admin, who then gives out their username and temporary password physically to them when they come to our office. (This process cannot be changed).
During the PRE-registration process, the email field for each new member is populated by the with:
change.me-aaa1 at [url removed, login to view]
change.me-aaa2 at [url removed, login to view]
change.me-aaa3 at [url removed, login to view]
This is to try and get them to update their address when they first log in to the site as they see the email address when they log in. (Still many of them don;t bother).
We also now want to to collect 3 items of information from each of our members, (we are a union association), namely
1) Their mobile number in the format +999 123456789
2) Their staff number, which is stricly a 5 digit ONLY number eg. 49911
3) To be confirmed later. Probably a tick box for yes/no question.
Getting these custom profile fields added to each member is no problem. Forcing these fields to be completed as the pre-registration process is being done is also no problem.
What is a problem is forcing the current "older" users of the board to fill out these fields. Because they are already active members, there is no requirement for them to update these fields before they gain access.
What we would like scripted/programmed is a modification to IPB 2.3.4 that does this:
When a user logs in, IPB takes a look at the email field AND the 3 custom profile fields above (all currently in database)
If the email address matches the word "change" or "please", to set a flag.
If ANY of the mobile number/staff number/3rd field is currently blank, set a flag.
If a flag has been set, the board welcomes the member back again (ie allows the member to continue to log in) but presents him with a screen that FORCES them to fill out the information missing/incorrect before allowing them to continue.
Under no circumstances can a member bypass this "requirement for updated information" page and procede to the forums until all fields have been filled out CORRECTLY (ie someone trying to put in 3 numbers into the staff number field instead of 5).
The update page MUST look very straight forward. No need for menus, or anything else to distract from what is being requested - mainly:
1) Why they arrived at this page (Dear member, we must have updated information from you before we can let you continue. Our records show that you have not filled out all of these details correctly. Etc. etc.)
2) Simple form showing what needs to be updated. (Email, 3 custom fields)
3) Simple UPDATE button at bottom.
4) A thankyou page if sucessful then access to forums, or a decent validation routine to show the user where they went wrong whilst trying to update their details.
That's it. Thank you.