Overview An accounting firm must notify its clients about the due dates to file their HST return and the cooperate tax. The due date of the return is determined by the client's reporting period that...

1 answer below »
Overview An accounting firm must notify its clients about the due dates to file their HST return and the cooperate tax. The due date of the return is determined by the client's reporting period that can be monthly, quarterly and annually. CRA demands penalties and interest when an individual fails to file their taxes on time. The accounting firm hires you to build an application to keep track of their clients with the option to inform their clients about their filing periods. The company would like to set a schedule for each client and send an automatic notification, either email or SMS, before the filing due date. The application you are building must have the following management modules: • Clients Manager – To manage client's information o Adding a new client o Modifying the client's information o Update status (inactive or active) • Notification Manager – this module provides functionalities to o Add new notifications type (email, SMS, Push Notifications,…) o Modify a notification – update status (enable /disable) and update notifiction name. • Client's Notification Manager - managing clients' notification types and their frequency. o Manage client’s notifications (add / update) o Change status of a client's notifications. (enabled / disabled) • Employee – Manage company's employee o Add a new employee o Modify the employee information o Update status (inactive or active) Requirements Only authorized users with the correct username and password can access the application. Except for a login page, there are no public pages. For this application, you must use PHP and store the information in the database (MySQL) Clients characteristics (minim fields) to store: • * Company name COMP1230 ADVANCED WEB PROGRAMMING PAGE 3 OF 5 • * Business number • * Contact's first name • * Contact's last name • * Phone number • * Cell number (to use for SMS notification) • * Carriers ( See the list and domain name here) • HST number • Website • Status – Inactive / Active (default Active) Notifications characteristics (minim fields) to store • * Name (to identify the notification) • * Type – example SMS, email • Status – Enabled \ Disabled (default Disabled) Clients events characteristics (minim fields) to store • * Client (client id) • * Notification (notification id) • * Start date/time • * Frequency – example, every 30 days/ every 120 days / every 365 days – the client should add any integer as the number of days. • Status – Inactive / Active (default Active) Employee characteristics (minim fields) to store: • * First Name • * Last Name • * Email • * Cell number • * Position: Manager, Senior Accountant, Junior Accountant, Chartered Accountant, Book Keeper • * Password (must be hashed) • Picture (Good option to have - uploaded and resized plus keep the original image) • Status – Inactive / Active (default active) – Employee cannot log in when the status is inactive. - Implement authentication and authorization. Your application must redirect any unauthorized access to the login page with an appropriate error message. (Please hardcode the username and password in the login form for instructor access. You will receive zero grades if your instructor cannot log in. ) - Log (dtabase) all operations (add/update/view per model) on all four modules (Employee, Client, Notification and ClientEvent) Format: Employee ID, module name, action, DateTime, IP 1, client, add client, 2021/11/12 11:31:56, 99.240.11.100 1,client, update client, 2021/11/12 21:31:56, 99.240.31.100 12,notification,diable status, 2021/11/22 11:21:16, 9.240.31.100, Create a page to view the log data. (Include a link to this page on the navigation). COMP1230 ADVANCED WEB PROGRAMMING PAGE 4 OF 5 - Changing a client's status to Inactive should change the status of all the events that belong to that client, and vice versa o For example, you may implement logic in your code to prevent events from firing (like preventing notifications from appearing) o Or for example, you may update the status of all the client's events who have had a status change from active to inactive, or vice versa. - You must use PHP for data validation (No JavaScript validation allowed –Might not be practical but trust me, you will learn more this way) - Users must be able to perform the following operations for each module. o Add/ View / Edit / Search / Change Status. - Any status change must be confirmed before proceeding with the action. "Are you sure?" message - All mandatory fields * must have value to update any record.
Answered 2 days AfterNov 23, 2021

Answer To: Overview An accounting firm must notify its clients about the due dates to file their HST return and...

Ketaki answered on Nov 26 2021
125 Votes
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here