table
- Add complete and year options to the judge manager, filter by ALL, active and
inactive for the current year, or active only.
- Add the "complete" status the the judge info page (the judge info popup page
needs to be integrated with the new judge manager, somehow.. so we can remove
the judges_judges list page).
- Put a total at the top of the judge manager list
- Add to the table editor:
- Change the filter to accept a single argument, so we're not
restricted to the `$k`='$v' syntax, we want to be able to filter on a
table JOIN.
- Add a additionalListTable variable, and additionalListTable()
function, to specify additional tables that should be part of the
table select statement. I guess ideally the class would implmenent
their own if alternative behaviour was desired. But this way is
pretty generic. The table editor can now, for example, select judges
by year.
should be SELECTED in the select type. If the keys are 0, and there is no
data, PHP does a numeric compare and matches them, when they shouldn't
actually be matched.
- Add Load/Save for the judge category preferences
- Enable saving to mysql. It works.
- Update the tableeditor css to use the same colours as sfiab
that allows you to customize the size of the labels to suit _ANY_ label
stock paper.
Add to label generator the option to get judge mailing labels, and award
sponsor mailing labels, and make it easy to add more mailing labels
down the road (students? committee? etc?)
Add two default label stocks (Avery 1"x4" and Avery 2"x4")
- Added a "multicheck" input type for languages (english, french)
- Added a proof of concept cross reference to the judge class, it pulls the
languages out of the judges_language database
- Completely broke the save mechanism.
- Converted the tableeditor edit routines to read from the input class
- Converted the tableeditor edit routines to use assoc arrays, instead of ->
(easier to pull from mysql and then add cross references to it.
- Add the table editor style sheet, and load it in the header (needs editing)
- Add a judge class (not complete)
- Add a judge manager php file that doesn't interfere with what's already in the system
THis is a proof of concept, it sorta works, but the table editor is still reading directly from the judges class. It will be updated to make calls only into the calling class type, thus abstracting away all the SQL stuff, and allowing the group class (judge in this case) to hide
all the cross table references we need to make for loading, saving, deleting, etc.
should contain. If the config doesn't find those variables for the current
year, they are automatically copied in from year=-1. This means that
we can update a database and add new config variables and not have to manually
add each variable to the current year. It also means someone can't mess
up the system and accidentally delete config variables, because they
will be recreated.
looking any further. This significantly reduces the timeslot scheduling time.
In most cases we reach 0 in a couple thousand iterations, but we need high
effort because some timeslot scheduling problems are hard to assign.
prevent a project from getting too many judges in a row, and also a judge from
judging 2 projects at the same time (which would be more of a problem).
Still need to write a verifier to check all the results. But the annealer
tests look pretty good. Unfortunately it takes a pretty long time to run. :(
all issues EXCEPT that the timetable scheduler may assign two judging teams
to the same project at the same time. I will fix that soon. But everything
else should now work.
in the scheduler so we can only select judges that are NOT already part of a
judging team
- Fix a numbering issue where sometimes an divisional team created by the
scheduler wouldn't get created because of conflicting team numbers. Now, use
MAX(num) to find the highest team number and increment team numbers from that
number.
- Missing: Having a project judged more than once by different judging teams is
untested, I don't htink it'll work properly, still working on that part.
- Missing: Auto updating the configuration if any of the variables are missing.
- Missing: A way to preserve judging questions (like willing_chair), so the
user doesn't delete them and break the scheduler, OR, notice saying that the
question has been deleted and the scheduler won't use the chair calculations,
then we need a way to add them back in with the click of a button.