# Project Proposal

### Purpose of the Website

My client would like a generic CRM that can be reused to build small basic websites for each department of their organization, and any other projects they start in the future.

### Site Map

![Site Map](https://git.vdm.dev/Llewellyn/WEBD-325-45/raw/branch/master/week-01/project/site_map.jpg "Site Map")

### Story Board

We will have two areas in this generic CRM. The first will be the "Site" area, where you customers will view the various pages of your website. The second will be the "Administrator" area, where your staff will mange the content, and menu relationships of the pages that will be shown in the public site area. Your administrator will also manage your users on this administrative area. We will also by means of xml manage the fields of the item area so that you can per project set your own required input fields.

![Story Board](https://git.vdm.dev/Llewellyn/WEBD-325-45/raw/branch/master/week-01/project/workflow.jpg "Story Board")

### Database Schema

![Database Schema](https://git.vdm.dev/Llewellyn/WEBD-325-45/raw/branch/master/week-01/project/generic_crm_schema.png "Database Schema")

### Schedule

The currently planned schedule looks as follows:

1. Project Proposal – DONE
2. Build public and staff websites – HTML file submissions for the initial requirements
3. Log In – Create the log in pages as well as PHP scripts for staff to gain access to the staff
website when they have a successful log in attempt. Planning to build the Request Account
feature as well for new users to send their request via email to the administrator.
4. Content management items (subjects) – Submit complete scripts to manage multiple items
on the website. All necessary CRUD functionality will be included to maintain the item
categories on the public site.
5. Content management menus (pages) – Submit complete scripts to manage multiple menus
that will be associated with items to display as pages in the public website. All necessary
CRUD tasks will be included to maintain the item categories on the public site.
6. Add user and log out – Submit complete scripts and pages needed to add new users.
7. Testing and finalizing – Final debugging, testing, and debugging

**Reference:**

- Giles, Stephan. Project Requirements & Overview. https://champlain.instructure.com/courses/1838628/pages/project-requirements-and-overview. Accessed 27 Mar. 2022.
- Images created with: Flowchart Maker & Online Diagram Software. https://app.diagrams.net/. Accessed 27 Mar. 2022.

