michael-maltsev / cheese-fork

A scheduling helper web application for Technion students
https://cheesefork.cf
GNU General Public License v3.0
50 stars 13 forks source link

Calendar subscription updating - can be more informative #14

Open NeatNit opened 4 years ago

NeatNit commented 4 years ago

I was originally going to post this as a comment on #11 but in the end, here we are!

As I've already said elsewhere, the synced calendar absolutely rocks. But there is, as you've said, the requirement to re-open the export window every time there's a change - either from the user changing their schedule or from incoming updates from UG. This is not ideal, but I understand from reading this conversation that there isn't really an alternative that wouldn't require hosting server-side code, which is currently out of scope for this project. That's fine.

However, the way this is presented right now is a bit confusing and uninformative. The only information is a short paragraph within the export window itself, and no offense, but it's not written super-clearly.

I think there is an easy way to make this clearer: highlight the export button if there's a change that hasn't been exported. This can easily(?) be detected by hooking into both (a) the code that controls the Undo Changes button, and (b) the code that makes the UG updates thing show up. Raise a (separate) flag for each of them, and if either flag is active the export needs to be refreshed. Once the user clicks on it, both flags can be cleared.

I would have loved to do this myself and make a pull request, but I have no idea how to set up a testing environment :(

michael-maltsev commented 4 years ago

The only information is a short paragraph within the export window itself, and no offense, but it's not written super-clearly.

No offense taken. I can understand that it's not ideal that you have to open the window to update the calendar, but can you be more specific about what's not clear in the text? Do you have a better suggestion for the text in the export window?

highlight the export button if there's a change that hasn't been exported

That's a nice idea, I'll look into implementing it.

I would have loved to do this myself and make a pull request, but I have no idea how to set up a testing environment :(

You can just clone the gh-pages branch and open index.html. You might need to use a local http server for the backed services (authentication, hosting) to work. Using python -m http.server is one option.

Note that the code is a bit messy, especially the cheesefork.js file. I'd like to refactor it one day, but I spent way too much time on this project already, so I'm not sure it's ever going to happen :)