Code Monkey home page Code Monkey logo

plan-b's Introduction

Plan B

A minimalist substitution plan for WebUntis

  • Requires a PHP Server (developed with PHP 7.4) to run.
  • Modify the values of $api_schoolName and "formatName" in php/getData.php to get data from a different organization. (If you have any questions about these data fields, feel free to contact us, as the people behind Untis are apparently quite secretive about their API: [email protected] )
  • For license info have a look at LICENSE.txt

Unstable auto-deployed for testing here

plan-b's People

Contributors

antricks avatar finnkuhn avatar spyrexde avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

plan-b's Issues

Sorting for teachers is strange???

I can't really see how substitutions are sorted in teacher mode. Didn't we already implement that at some point? The primary factor should be alphabetical order of teachers, the secondary factor should be the lesson, which obviously is not working well.

Also sort by subject

Sort by class, then subject, then time?
Or Class, time, subject?

However, subject should be relevant

Add selected filter element to cookie

I think it‘s a good idea to add the selected class / teacher to the cookies so people don‘t have to reselect their class / themselves every time.

Don't show 'cancelled' lessons, if they actually are replaced with an exam (?)

(A good example is on Monday, 06. December 2021)

At least RCS doesn't want us to show the cancelled lessons in this case.
I'm not even sure if it's really sensible to do that though, as (at least) my Physics course was actually cancelled then. I wasn't affected by any of the exams, so it was actually a good thing for me that this cancelled lesson was shown.

Visually connect substitutions of same teacher or same class

It would improve readability if we somehow showed substitutions that correspond to each other. For example, we could use the interchanging background colour for that, so corresponding substitutions get the same background colour. This should also work together with issue #9

Add nicer PWA icon

We‘re currently just using the normal favicon which isn‘t really optimized for App launchers.

Refactor settings system

@SpyrexDE
The current settings system (also in object-oriented-refactor) is pretty messy in my opinion.
I think it might be a good idea to rewrite this whole part. Do you want me to help with that?

Improve white theme

Tbh, I hate our current white theme:
It's looking kinda dirty and dry

I just created a prototype in the dev tools:
How I would like it to be

Changes in subject not shown clear enough

If for example a class is split in Latin and French and only the French part of the class actually has a substitution, it appears like the whole class has a substitution. Fortunately, we're not lacking data to detect such a situation - we can use the (so far unused) data field course_long (defined in drawing.js:175).
It's formatted the following way: "SUBJECT_CLASS_TEACHER" - We only need to parse this and check for differences. If there's a difference, we should add some indication about this change.

course_long can't be trusted

It appears that the long form of course names does not necessarily feature the newest information. So in some cases, using that field actually creates wrong information. We should not touch it anymore and only use data from other fields.

Add Caching

Without caching the user experience will decrease a lot, due to relatively long loading times.
I suggest to always cache one day before and two days after the currently shown day.

just show class once in a substitution collection

Adding the class to every substitution in a collection is unnecessary because they are grouped by exactly that - the class. I think it would improve readability if we somehow showed it just once, maybe on the left of the collection or so...

Show next day in the afternoon

(Depends on #6 ) We should show the next day, maybe automatically switching when in monitor mode - at least in the afternoon. For that we obviously need to pre-load the next and the current day, which is already mentioned in #6

Remove snapping restart of autoscroll

It would be awesome if the auto-scroll mode wrapped the substitutions back around, so there's no jumping or moving back. Moving back is also an option of course, but it wouldn't be so cool.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.