Client
Client Intake Documentation
Accessing The System
Note: This is a demo appllication locked behind a password to avoid spam and trolling efforts. If you are a client who wants to test the application, please contact the Developer.
- Open a web browser and navigate to the Client Intake Application URL.
Client URL: https://client-intake-mb0l.onrender.com/
Completing The Form
- Enter the Demo password (Demo only)
- Click Unlock form (Demo only)
- Complete the intake fields:
- Your name: Your first and last name
- Work email: Your professional email address
- Business name: The name of your company or business
- Job site address: Street address and zip code
- Send staff notifications to: The business-side email address to receive job notification (Demo only)
- Type of work: Select the type of work that you need
- Approximate size: Select the size of the job site
- When do you want to start?: Select the approximate start date range
- Project budget: Select the approximate budget range
- Tell us about the space: Add any details that are important to the project that have not already been included
Submitting The Form
- Click the Request a site visit button
- If successful, you will be forwarded to the Request received page
- If you do not see the Request received page, check your inbox for the confirmation email
- If no confirmation email was received, please resubmit the form or reach out to the Developer.
Receiving Updates
Request Received page
Potential clients are forwarded to the Request received page upon successful form submission.
- Project status: A status page created for each project that clients can bookmark and follow for status updates
- Copy link: Automatically copies the link for the Project status page
Project Status page
The Project status page displays the data submitted in the intake form and the current status of the project. This page is updated by the administrator as the project progresses.
Administrator
Accessing The Admin Page
- Open a web browser and navigate to the Admin Page URL.
- Enter the Password (Demo only)
Note: The admin page has only a password for demonstration purposes. A finished application will require a username and password for each administrator.
Admin Page URL: https://client-intake-mb0l.onrender.com/admin.html
Finding Jobs
The default display settings for the admin page lists the 5 most recently added jobs in desccending order acccording to the creation date. There are multiple ways to search and sort existing jobs.
Search jobs
Search returns only the jobs that match the search criteria. Only 3 fields are searchable:
- Business: The name of the business
- Contact: The name of the business contact
- Email: The email address of the business contact
Type in your search criteria and click the Search button to search, or click the List All button to list all jobs. If more than 10 jobs are present, only the first 10 jobs will be displayed per page. Use the Next and Previous buttons to navigate through the pages.
Sort
The Sort option allows admins to sort jobs according to the selected criteria.
- Newist first: Most recently created jobs in descending order
- Oldest first: Created jobs in ascending order
- Company A-Z: Alphabetical order by business name
- Company Z-A: Reverse alphabetical order by business name
Status
The Status filter allows admins to filter jobs according to the current status of the project.
- Any status (Default): Displays all jobs regardless of status
- Received: Displays only jobs with a status of Received
- Scheduling site visit: Displays only jobs with a status of Scheduling site visit
- Estimate sent: Displays only jobs with a status of Estimate sent
- Scheduled: Displays only jobs with a status of Scheduled
- Declined: Displays only jobs with a status of Declined
- In construction: Displays only jobs with a status of In construction
- Completed: Displays only jobs with a status of Completed
Managing Jobs
The primary purpose of the admin page is to track and manage jobs.
- Status: Select the status from the drop down to move the project to the selected status
- Received: A newly received job that has not been updated
- Scheduling site visit: A job for which a site visit is being scheduled
- Estimate sent: A job for which an estimate has been sent
- Scheduled: A job that has been scheduled
- Declined: A job that has been declined
- In construction: A job that is currently in progress
- Completed: A job that has been completed
- Remove: Deletes the job from the form.
- IMPORTANT: This action is permanent and cannot be undone.
- Client Status page: Routes to the status page where clients view the project status
Backup and Restore
Backup and restore functionality is available for administrators to backup the database and restore it if necessary. Backup files are CSV files that can be opened in Excel or other spreadsheet applications. The backup file contains all the data for the jobs in the database.
Backup
Clicking the Backup button will open a prompt, allowing you to select a location to save your backup file. The file will save in a .csv format.
Restore
IMPORTANT: Restoring a backup file will overwrite the current database with the data from the backup file. This action is permanent and cannot be undone.
Click the Restore button and locate a backup file to restore the database. Mandatory fields must have a value.
Fields
| Field | Description | Mandatory | Notes |
|---|---|---|---|
| id | The unique identifier for the job | Yes | Auto-generated by the system |
| name | The name of the business contact | Yes | Entered by the client in the intake form |
| The email address of the business contact | Yes | Entered by the client in the intake form | |
| notify_email | The email address to receive job notifications | Yes | Entered by the client in the intake form |
| company | The name of the business | Yes | Entered by the client in the intake form |
| site | The job site address | Yes | Entered by the client in the intake form |
| project_type | The type of work requested | Yes | Entered by the client in the intake form |
| square_footage | The approximate size of the job site | Yes | Entered by the client in the intake form |
| timeline | The approximate start date range | Yes | Entered by the client in the intake form |
| budget | The approximate budget range | Yes | Entered by the client in the intake form |
| message | Additional details about the project | Yes | Entered by the client in the intake form |
| status | The current status of the project | Yes | Entered by the client in the intake form |
| created_at | The date and time the job was created | Yes | Auto-generated by the system |
| updated_at | The date and time the job was last updated | Yes | Auto-generated by the system |
Note: The above table is inaccurate regarding the demo version regarding required fields. Production versions will require all fields to have values as the business would only use imports to restore previoius backup files.
Support
Common Issues
Search does not return expected results
When searching for a job that is known to exist, the search returns unexpected resutls or no results at all.
Solution
Verify the following:
- The record exists in the database (List All or check Backup File)
- You are searching by the correct field. (Business name, Contact name, or Email)
- You are searching for the correct value. (Check for typos)
If all of the above are true please contact the Developer with a detailed description of the issue.
Previous jobs have been removed after a backup restore
Jobs that were present in the admin page before a restore are missing after the restore.
Solution
This is expected behavior. A restore completely overwrites the current database with whatever is contained in the backup file. If you would like to keep jobs that have yet to have been backed up, please create a backup before restoring the previous file. You can then copy the records from the new backup file to the file that you would like to restore. Please contact the Developer if you need assistance with this process.
Clients receive duplicate status update emails
A client received a status update email more than once for the same status change.
Solution
This is likely to occur if a backup is restored after a status change. If the job is updated after the back up, the restore will revert the job status upon completion. Correcting the status will result in another email notification being sent. If this was not the case, please contact the Developer.
Scope of Support
Support scope widely depends on service contract (ongoing, one-time, etc.) and where the issue occurs.
Developer Responsibility
Issues that occur within the application itself are the responsibility of the developer. This includes issues that occur due to direct changes to the application code, database, or server configuration. The developer is responsible for fixing any issues that arise from these changes at no cost to the client.
Examples
- The import fails due to logic in the JavaScript code
- Jobs fail to submit due to an issue in Render (database backend) or Make (automation backend)
Business Responsibility
Issues that occur due to actions made by the business are the responsibility of the business to resolve. Involving the developer will require a fee unless the service contract includes support for these types of issues
Examples
- A business user inadvertently deletes important data requiring investigation for a potential restore
- A business user imports an incorrect file and assistance is required in resolving the issue
Third Party Responsibility
Issues that occur due to third party services are the responsibility are out of the control of both the business and the developer. Developer fees may or may not be required depending on the issue.
Examples
- Render (database backend) or Make (automation backend) is down and the application is not functioning properly
- Render or Make pushes aconfiguration change that breaks the application
Contact Developer
Contact the developer for any issues related to the application code, database, or server configuration.
Developer Email: kenjsdev@pm.me
Developer Phone: +0 (000) 000-0000
Additional Features
This is a demo application and therefore I have left out features and functionalities that would typically be requested or included in a business application
Examples
- Duplicate control: A queue can be added for newly submitted items that compares them against one another to block dupliate entries, spam, and trolling efforts
- Unsubscribe from emails: Users can opt out of receiving email notifications
- Create and update for import: Users can select Create or Update options during the import process, enabling users to create jobs via import
- Automated backups: Regular automated backups can be scheduled to ensure data safety
- Notification confirmation: Business users can confirm whether or not to send a notification upon a status update