TODO: - Admin - define "school year" based on school dates of Apr 30 - Mar 31 - Create school years from 1998 - 2021 - Main page: - For each menu and sub-menu item, make sure there is a landing page - For the first fold, make "Slider images" section so fold becomes dynamic. Allow admin to edit picture / slogan - For the second fold, make sure there is a landing page for each "Read more" section - For the 3rd fold, 3 random pictures should be picked up from the last 6 events - For the 4th fold, there should be 4 sections - News, Events, Awards, Photos. They should be dynamic and be entered by Principal's dashboard - Ability to create news: date, news title, picture, news description - Ability to create photo album: date, event name, upload selected pics - Ability to create event: date, event name, event description, post-event report, link to picture album - Ability to create awards: event name, award name, awarded student, award description / benefit - Display "photo gallery" by event. Sort albums in date order, display albums as a grid of large icons - put search box to narrow down choices - put drop down to select events / albums by school year - Display "events". Sort events in date order, display as a grid of large icons - put search box to narrow down choices - put drop down to select events / albums by school year - Display awards given to students all year long at various events, including at annual day - put search box to narrow down choices - put drop down to select events / albums by school year - teacher attendance and payroll - student registration, fee management, reports - expense management - classroom definition, classteacher definition - syllabus definition, lesson plan definition, lesson materials - homework submission and evaluation, class prep Key features / purpose of the website - Staff and students details are captured in database - Teacher's attendance and payroll are managed - Student's attendance and fee payments are managed - Accountant can look at fees collected, expenses made, and process payroll - Inventory of books, chairs, desks - Analytics across academic years - photo and video gallery on front page - digital syllabus, exam sheets and learning resources - Classwork evaluation and Homework management system ADMIN account - Key functionality - Add and manage Staff members - capture key attributes like bank account info, aadhar, PAN - Add and manage Administrators - Add and manage roles for staff members - alias into any staff member's account - Add and manage classes - Add and manage events - Add and manage students fees by academic year - TODO: Add and manage academic years (academic_year_id, academic_year_name, academic_year_start, academic_year_end) - TODO: Add and manage class teaching materials (material_id, class_id, subject_name, material_name, file_name, material_type, academic_year_id) - Add documents with attributes: Doc name, Class, Subject, Academic year - Add Lesson plan and Syllabus by subject (use material_type column in DB. Possible values - "lesson plan", "syllabus", "Unit test", "Quiz", "Class material", "Half-yearly exam", "Final exam" - Table should display Document name (Unit test, Lesson plan X (includes a quiz), half-yearly exam, final exam. - Teacher can download entire set by zipping all files - TODO: Add and manage time table - Define periods (period_id, day_id (Mon, Tue, Wed...), period_name, start, end) - Define periods to teachers (period_id, staff_id) - Interface to assign teachers to periods - View time table as a grid (rows are days of the week, columns are periods from start of day to end of day). Teacher name is in cell - Key features: - Login button not obvious to staff members - view all MySQL database tables and create views STAFF account (by role) - ANY Staff - Add and manage self attendance - TODO: View salary history, EL, PF contributions and payslips - Teacher role (extra menu on Dashboard) - set the attendance of her classroom, and also view it - TODO: view time table specific to the teacher - View entire time table as grid - View self time table (remove other teacher's names) - TODO: view documents specific to the classes they are teaching - class notes, syllabus, lesson plans, quizzes, tests, resources - HR role (extra menu on Dashboard) - TODO: View all staff data in table - Set hire date, base salary, bonus, status (temporary or permanent), type (teacher or help staff) - TODO: View attendance of teachers in terms of hours worked every month - update attendance for all staff - TODO: calculate salary automatically per month, with breakup. Approve the salary (sends notice to accountant) - Accountant role (extra menu on dashboard) - Student accounting - upload single and bulk student payment reciepts - Display reciepts by receipt no - date, no., name of student, adm. no., Class, month, purpose - filter by date range, month, year, class, admission no, purpose - Display annual view: based on chosen academic year - class, count, name, adm. no, admission fee, copies, diary, uniforms, books, Apr'21, May'21, Jun'21, Jul'21, Aug'21, Sep'21, Oct'21, Nov'21, Dec'21, Jan'22, Feb'22, Mar'22 - filter by: class, Name (adm.no.) - ability to export current view - TODO: Staff Payroll accounting - view payment amount to be paid to each teacher by month / year - mark salary as paid when salary is paid out, recording date of payment - Admissions role (extra menu on dashboard) - Add each new admission individually - bulk-upload students - view and filter students - Principal dashboard - View all staff's details - assign teachers to become class teachers of specific grades - assign teachers to subjects that they can teach of a particular grade - Create a time table - Current academic year definitions - Roll over students to new academic year - photo gallery by event - classroom definition - classteacher definition