jpschewe / fll-sw Goto Github PK
View Code? Open in Web Editor NEWFIRST Lego League scoring software
Home Page: http://jpschewe.github.io/fll-sw/
License: GNU General Public License v2.0
FIRST Lego League scoring software
Home Page: http://jpschewe.github.io/fll-sw/
License: GNU General Public License v2.0
We should be able to edit all global parameters
We don't need to require java 8, but apparently our version of bcel doesn't work with java 8.
This way one can see the division in the title of the tab when it gets chopped off instead of just seeing "Playoff ...".
When running the scheduler from the script I don't see any challenge descriptions to choose from when printing the score sheets.
To handle multiple head to heads the run numbers in the playoff table have been modified. The AJAX code for dynamically updating the playoff brackets doesn't always take this into account. So sometimes the wrong scores are displayed.
I found a bug on this tonight and negative scores were showing up when the minimum was 0. Need to add a unit test for this.
Right now this class is all static methods. We should make it into a class and probably an interface. This would allow at least two things:
See if we can make the playoff table assignment algorithm know about previous table assignments and start at the next table in the rotation instead of starting over again.
Perhaps store this in the database too? Maybe track how many times each table pair is used and then sort on that key when selecting the tables to use?
At the 2013 MN FLL state tournament it seems that the bracket numbers weren't correct for the A-C playoff division.
If someone renames a display, the old name should go away. One might also want to be able to delete displays from the system, although we need to be able to have some feedback to make the display reset it's name to unset.
Use this to test the subjective app on android
At the MN 2013 FLL state tournament we did the finalist schedule before the playoff divisions were created. We then created the playoff divisions and told the finalist schedule app to reload the data. It didn't get the new divisions.
Since we have 2 groups of finalists at state we need to be able to display both schedules at the same time on the screen. This may need to scroll back and forth like the playoff brackets do.
This is a test
When an error occurs in the scheduler the SchedulerUI needs to display at least the message of the exception.
Currently the schedule constraint checker is hard coded to 3 performance rounds. This should be made generic like the parser.
If a schedule is loaded we should be able to display/print the full schedule and the detailed schedules.
The scheduling algorithm isn't perfect. We need to be able to override the schedule before it's saved with custom changes. Ideally this would involve dragging and dropping of the teams into cells. If the same team is to be in 2 places at once the user should be prompted if this is intentional and allow the user to approve this action. This may occur when we are combining judging sessions.
If a team is a "No Show" in some categories and shows up for others, the total score should still be computed with the "No Show" categories treated as zeros.
This is in the JSON API.
Caused by: java.lang.NumberFormatException: For input string: "Schedule"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at fll.web.api.TournamentsServlet.doGet(TournamentsServlet.java:68)
The subjective Web app depends on judging groups. It should check if they are assigned before loading data and output an appropriate error message.
When there is an error loading data, the error message should say what data was being loaded.
Some tournaments don't have performance columns our we don't care about them. One example of this is REC. It would be nice to support this.
FullTournamentTest
for changes to upload schedule workflowStart scrolling at most recent score, then scroll to
bottom, jump to top, scroll to most recent and then
refresh.
It should be possible to detect when to advance the playoff brackets for the currently-selected division automatically, by querying the playoff data table to see which rounds are populated by valid teams.
Document how the scheduling application works so that others can use it. Also document what the spreadsheet needs to look like. Also try and document the properties format.
If there is already a user with the specified name, then report back a reasonable error message.
When you are prompted for the number of teams to be scheduled for finalists for non-scored categories, the number of teams to enter should be the number of teams entered times the number of judging groups. So if the user enters "1" and there are 3 judging groups, then the user should be prompted for 3 teams.
At the 2013 state tournament we ran divisions A through C, then D through G. When we got to the final 8 I checked the 3rd & 4th place bracket checkbox. However when the brackets came up they didn't have 3rd and 4th place. My guess is that when creating a custom playoff division this form attribute isn't properly passed along.
I get errors when trying to load the new Excel files. Probably just need an update to the library.
It seems that the plugin that I've been using has gone completely commercial and I can't download it anymore. I need to decide what to do about our database diagram.
Sometimes the top 10 only shows 8. So I think the title should be top scores. A also might want to show more than 10 if there is room.
The ranking reports should be sorted by team number
Currently when scores are not entered in the subjective
scoring app we remove the scores in the XML document.
This is ok, however when we put these values in the
database we put in a row of NULLs and then there need
to be a few special cases in the queries that total
scores to handle this. It'd be better if we could just
delete these rows when the data is uploaded.
Make it clear that the order needs to be:
This ensures that the bracket printout has the table assignments.
Both on the website and in the scheduling application
Check # of expected scores vs # entered scores in the subjective application. Allow
one to override.
Also check this in the website on upload.
There is a manual check in the compute summarized scores workflow. Take a look at this for ideas.
We've got a number of places that when there's an error
we just throw a RuntimeException (both in the Java and
the JSP scriplets). It'd be a good idea to make the
non-serious ones goto an error page that doesn't have a
full stacktrace on it.
When there are no teams that have fewer than 3 seeding rounds there should be some text that states this.
When generating the detailed schedules the name of the round "technical", "presentation", "perf X" should be in the header. If the schedule has been associated with a tournament, then the tournament name should be in the header as well.
If there is only 1 team in a judging group the score standardization fails. The error message there should be nicely readable so that it's clear what the problem is.
Dan finds this useful at the state tournament
Have the software automatically assign the playoff
rounds to tables.
Check to make sure the documents are equal on import.
Judges and Refs need 45 minutes for lunch
At the 2013 MN FLL state tournament it seems that sometimes the printed flag wasn't getting set when scoresheets were printed.
When running the SchedulerUI from a shell script I get a bunch of warnings about hidden classes.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.