/UiTM-Timetable-Generator

Fetch and generate Timetable for UiTM

Primary LanguageJavaScriptMIT LicenseMIT

UiTM Timetable Generator

Fetch and generate Timetable from iCress UiTM

Official website for this project: https://www.uitmtimetable.com/

Created By :

  1. Afif Zafri, Mohd Shahril & Syed Muhamad Danial
  2. Created Date : 24/1/16
  3. Contact Us :

Changelogs

  1. UPDATE 1 : 10/4/16 - Initial design
  2. UPDATE 2 : 13/4/16 - Major code overhaul, updated by Shahril
  3. UPDATE 3 : 20/9/16 - Another major code overhaul, added automatic timetable creator
  4. UPDATE 4 : 20/9/16 - Major design changes by Syed Danial
  5. UPDATE 5 : 1/12/16 - Little update, fixed floating footer issue, and added mobile view support
  6. UPDATE 6 : 22/12/16 - Added feature for saving the timetable to PNG image file (experimental)
  7. UPDATE 7 : 17/3/17 - Added feature for customizing the events colours scheme (background, border, text)
  8. UPDATE 8 : 3/9/18 - Added feature to search for subject code inside the select subject box
  9. UPDATE 9 : 26/2/19 - Added feature to export timetable to Excel spreadsheet file, and also import back the Excel spreadsheet file into the system to render timetable

Credit

  1. Mohd Shahril - Regex code for fetching and sort data (1st version), Major code overhaul and improvement
  2. Syed Muhammad Danial - Great UI improvement.
  3. Timetable.js
  4. html2canvas
  5. blob-select
  6. PhpSpreadsheet
  7. Muhammad Nabil - For sponsoring domain and hosting, thanks!

Installation

  1. Drag and drop all files into your web server directory. For eq; Apache2 for Ubuntu is located in /var/www/html.
  2. Don't forget to set the correct permission as this timetable writes cache file, so do chmod -R 777 /var/www/html.
  3. Install required PHP additional extensions, run sudo apt install php-curl php-mbstring php-zip php-xml and you'll be fine.
  4. Adjust config.php to suite your need. and Voila!

Usage

  1. Select faculty or campus.
  2. Select courses that you want the timetable to generate.
  3. (Optional) Change colour for each subjects.
  4. (Optional) Export the timetable image to your device.

Note! : Automatic iStudent data fetcher is currently on experimental mode, consider manual adjusting if needed.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

This project is under MIT license, please look at the LICENSE file