I need a PHP system that works with an existing DB. We need to migrate.
These are the requirements
1. Login system: 3 type of users
2. “Starting Application” Form
The form is open to the public and is protected by Google Recpatcha v3
The form has 15 fields (name, phone, email...) / Email field is mandatory as well as ID number.
When a form is filled out, it starts a process
A. It creates a username (same as email) and password is generated. User role is end-user.
B. Data is uploaded to DB
3. Editor role, when logged, has access to a similar form as mentioned in point 2 but with 2 exceptions.
A. Google recaptcha is not needed.
B. Email address is not required
4. Admin interface has many features
A. list of all users, grant roles to users, delete pr edit users
B. List all end-users. Edit their data. Delete data.
C. Search feature in the list of end-users
D. A similar form as point 3, meaning no captcha or email field as mandatory
5. List of end-users in admin interface has a check box. Admin is the only one can enable. When enabled, the original “starting application” is transformed into “full application”. That means that 40 additional fields are added to the form. These fields are hidden always unless the check box is marked.
6. End user recover password, change password and login
A. When users are logged they can also view the form they have filler out. User is able to update info.
If checkbox is marked, they will be able to update the additional forms
Also the forms for admin and editor must work that way. They should be able to fill out the new fields.
Also.. the edit feature in admin interface should be able to edit those fields.
7. Migrate old db to new db. All users must have correct login info, or new perms should be created.
This is a very important project. Should be finished in 15-18 calendar days. Person in charge should be available at working hours ( Latin American hours) at least 4 hours per day. Not mandatory, but end-client might want small changes from one day to another.
70 000 entries already exist in current db