Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove PHP requirement from the IBCM simulator #99

Open
wants to merge 34 commits into
base: master
Choose a base branch
from

Conversation

winstliu
Copy link

@winstliu winstliu commented Mar 11, 2020

The branch name no longer makes sense, as I ended up ripping out all the PHP, haha :P.

Anyway...as JavaScript has a FileReader API, we can leverage that to do all the processing locally instead of requiring a server.

Some other changes I performed along the way:

  • HTML files are now HTML5
  • Printing now respects the CSS file
  • Modernized the JavaScript code to not use sprintf (we have padStart and stuff like that now 😊)
    • This raises the requirement to browsers released 2018 and onwards

TODO

  • Get rid of eval (yikes)
  • Pretend to "load" the file when clicking Load, instead of loading it immediately
  • HTML/CSS modernization? There is absolutely no reason the simulator needs to have that many tables!
  • Better solution to the watchdog timer (workers?)

This raises the browser requirement to:
- Firefox 52 (March 2017)
- Chrome 57 (March 2017)
- Edge 16 (October 2017)
- Safari 10.1 (March 2017)
@winstliu winstliu marked this pull request as ready for review March 17, 2020 02:37
@winstliu
Copy link
Author

Note: This was more of a fun experiment, so I won't be discouraged or anything if you don't end up merging it for Reasons, but it does work!

@aaronbloomfield
Copy link

I really like this, and plan to include it. But with the course just moving online, and there being less help available to the students as a result, I'm hesitant to change this right before the students are going to start on the lab. So I'll merge this in in a few weeks. Thanks for all your work on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants