I need a web application that resemble with a mailbox where users can store documents received from companies registered with the site. Basically a user signup up with the site then he will follow a register process with a chosen company (each company can have different signup processes). After the 'trust' link is established (has to be confirmed by the other side), the company can send the user documents (PDF files). User can view the file, move it to another folder or delete it. At any time the user can break the 'trust' link and he will not receive documents from that company anymore. Trust links can be initiated by the companies as well and user has to approve it.
1) All PHP, HTML and Database structure files 2) The following functionality: a. Register form on main page b. Verify email form c. Members area with the following functionality: c1. List documents in current folder c2. Folder management (Create/Delete/Rename) c3. View a document c4. Move a document to another folder c5. Delete a document c6. Update personal profile (First Name, Last Name, Email, Password) c7. Select companies from the list and fill-in the required data for each company c8. List the approved companies and request status d. Companies menu d1. List customers and pending requests where they can approve or deny links d2. Create new request (customer has to approve it) d3. Send a document d4. Create a batch, List batches d5. See statistics for a batch (number of documents sent, number of documents delivered, number of document read) e. Admin area e1. List pending requests (user or company intiated) e2. Search for members (keyword, registration date, other fields) and see their profile e3. See a company links (Pending and Approved) e4. See statistics about documents (sent, received, read) e5. Add new companies and setup their extra required fields (each company can have a number of extra fields required during 'trust' link creation. Field type can be: text, date, number).
The program must be created in PHP, using PEAR as Database connection interface and Mysql/Postgresql as backend database. The application will run on Linux server with Apache web server.