garya / antlog Goto Github PK
View Code? Open in Web Editor NEWAntLog event management for AWS-style double-elimination competitions
License: Other
AntLog event management for AWS-style double-elimination competitions
License: Other
Don't allow events to be created in the past!
Fights view should show completed fights/results for running/complete events.
Completed fights should be greyed out and placed at the bottom of the list so that current/future fights are more visible.
The zip file distribution of v3.0.0beta gives a 404 error when the "Add Entrant" button is clicked on an event entrants page.
The button works in the development system...
Event state field should include future
state and move to registration
on the event day or manually.
This will allow multiple events to be created but still enforce the "only one open event per class" rule.
In double elimination, the finalist from the losers' bracket has to beat the finalist from the winners' bracket twice in order to win the competition.
This means the final fight may need to be repeated to get the final result.
The second fight only occurs if after the first fight the two robots still have one life left. The event only finishes when only one entrant has one or two lives left.
When event draw has been made, add group number to each entrant to enable viewing list of entrants by group.
Allow teams to sign their own robots up to an event. But add an extra stage for the admin to confirm entries, eg tech check or event arrival. This will speed up event starts by allowing most robots to be signed up in advance online
Having the server IP address displayed in the title bar would make remote access at an event easier - title bar may work better than in the 'About' page (as discussed) as then it would be displayed on the projector/screen at all times and would stop people queueing up to go 'what's the address?'.
Extra column in robots
table to allow robots to be retired from active duty. Only active robots may be signed up to a new event.
E. G. most small events will start at 'Round 3' due to all the byes being inserted, which isn't intuitive. Fairly low priority in the great scheme of things (and as discussed would need quite a bit of logic!) but it would reduce confusion to implement it.
Doesn't seem to be set in an 8-robot event, possibly since save() was replaced by update() ?
Should the limit be increased to 100, or even more characters?
It would be much better if only the gridview reloaded (via Ajax) so that the page stayed scrolled to the current record, rather than reloading the entire page. Saves scrolling down a long list every time a robot is entered.
This is the most trivial of issues, but I think maybe having different selectable styles for the projector friendly output would be good - there's quite a bit of variation in projector and screen quality across venues (I'm thinking of the University of Brighton particularly here!) and it also opens up some future uses, such as having (discreet!) sponsorship logos, or having a full-on display with futuristic graphics, web links, etc. for possibly using it at spectator events.
For the time being I'm thinking (although I'm not that experienced with UI design) just plain, normal, high contrast, and high contrast black & white would be sufficient (and possibly even too much!). I'm also willing to give it a go myself given the CSS if time is an issue!
When a new robot is added to the database, the form should default the robot state to "Active". Creation of a "Retired" robot is unlikely!
The user/team view page shows the user's email address. This is inherited from the gii-generated code and needs to be fixed. The team view page should show only the team name and user name, plus the team's robots etc, not email addresses.
Admin should be able to export and import the robots, users, events, entrants and fights tables. This will allow various versions of AntLog to be synchronised with a central database so users and robots don't need to be created for every event.
The Admin password should be shadowed in a separate table so that it is not lost/overwritten when the users table is imported.
Whenever the Admin password is changed it must be copied to the shadow table.
Whenever the users table is imported the Admin password must be restored from the shadow table.
The popup to enter the fight result works OK, but when the result is entered the redirect results in a 404 error.
/localhost/fights/update/nn?winner=n
results in a 404 error from Apache, not from Yii. The redirect needs to be to /localhost/antlog/fights/update?id=nn&winner=n
The antlog
part of the path is missing.
Restriction should be that combination of (robot name AND team ID) is unique in the database.
Robots are always shown in the fights with their team name and have a unique numeric ID in the database so unique names are not necessary.
Should be able to have multiple events open but this will mean changes to the signup logic to ensure the event is selected first
It would be better to add all the entrants from one team to an event in one go.
Team will probably not enter all its robots into one event (different classes, retired robots, etc) so would need to display a form with checkboxes and a submit
button to add/delete robots to/from the event.
The DB export function needs to build the insert statements ensuring that strings are properly escaped - user names, team names, robot names, event names, venues etc.
Use Yii2 query builder to build the insert statements rather than building the strings manually.
User tests are mostly covered by tests inherited from Yii framework, except for user updates. Add acceptance, functional and unit tests.
For a local installation, i.e. at an event, it's not really necessary to have captchas enabled since the site is not connected to the internet.
A site on the internet requires captchas (or similar) to deter spam-bots, but it should be possible for the administrator to easily turn off captchas on a local site.
Robot and team views should allow user to see/reach fights relating to robot/team (both current and historic fights)
For livestreaming events this would be good (although non-essential) - the ability to select the current fight would be especially useful as it's not always the fight that the software says is next up...
The labels for the fields of the event signup form should be "Event" and "Robot" rather than "Event ID" and "Robot ID".
The robots dropdown list should be sorted in robot name order, not ID order.
Add organiserId and venue fields to event table definition and add these two values to the insert statements for the event table
The do_draw_button.js creates a route that doesn't exist.
This could be due to the fact that index.php is now installed as localhost/antlog/index.php
and the javascript folder sits in the antlog/js
folder.
Permissions relating to updating robots should include:
When one table (e.g. Events) is sorted on the home page it can change the sort order of another table.
Maybe Pjax could fix this?
Organiser will be a registered user (team).
Venue as a separate field will make the event title more manageable.
The fights view should include the event in the breadcrumb trail, as the entrants view does.
This is only accessed via the Run Fights
button:
index.php?r=fights/index
The Fights
button shows the same view with the correct breadcrumb trail:
index.php?r=fights&eventId=4
The solution is to add the eventId
parameter to the Run Fights
button link/redirect.
Add Entrants
button to be added to event view if event is in registration state and user = admin
Everything to do with entrants
should be part of an individual event view.
Add Entrants
should return to event/entrants list not entrant view. Returning to entrant detail view is not very useful. Returning to the event view is much more useful as it allows further entrants to be added.
Add column to robots
table to indicate walker or cluster (or blank)
Robots should be chosen only from weight class matching event.
Also allow robots from lower weight class to enter - e.g. fleaweight can enter antweight event but not vice-versa.
Need to filter list of available robots based on class of event and robot.
Would it be possible to develop some sort of process to import and show results from tournaments run solely using AntLog 2 (or even AntLog 1!) to be browsed and shown in AntLog 3? If this can be done - and I can see some issues with robots that don't have an AL3 entry, or worse, where the name gets misspelled at tech check! - I think it might be good for two reasons, albeit fairly long term and low profile:
1: If (as I think would be good for everything - we need a website that shows more external signs of life) AntLog 3 is to be integrated and used to run most or all future AWS events, it would hasten adoption to allow people to still use AntLog 2 if there's computer issues or people are just confused by the web server aspect;
2: Past events can then be integrated, at least up to a point - I think when you go back in time to before people used AntLog, it intersects nicely with the point at which events get small and sensible enough to convert manually based on Oliver's site (in my current state of possibly terminal unemployment I'm happy to do this!)
Double_elim
table (which generates fights
table) needs to be reordered to list by round rather than by group. This is to ensure that upcoming fights are shown in the correct order, running all round 1 across all groups before running any round 2 fights. (Although user can choose any valid fight from list)
It would be good to have an undo button to allow fixing of logging errors in case of operator finger trouble!
How would this track whether an undo is possible? Undo is only possible if neither of the downstream fights have been completed (unless they are byes). Byes would have to be skipped until the next real fight...
Could just allow undo of the latest fight, using sequence numbers, but this is of limited use - better than nothing?
Create or update robot allow setting of type to walker or cluster in the form, but the value doesn't get saved to the database.
If values are set in the database manually, they appear to be correctly handled by the rest of the application.
Needs further testing but appears to go the final replay even if robot from winner stream wins the first match.
When adding a new robot, the default weight class should be Antweight as it is the most likely.
Fights views should appear as part of an event. There should be no top-level fights view.
This is not long enough to allow "Antweight World Series xx". Limit should be much longer, at least 50 and possibly 100+ characters.
The fights view should load a javascript function to auto-reload the page periodically. This will avoid users having to refresh the page after each fight. Updating every 30 seconds should be often enough.
The javascript should only load/run if the user is not logged in as Admin.
Teams should be allowed to create events online.
Teams should then be allowed to edit event details, but not do the draw or run fights.
When the database is downloaded to a local machine for the event the user will be the administrator and can do the draw and run the fights.
Add heading rows for groups of following rows, e.g. Group 1 Round 1
Then list all fights matching the heading, followed by another heading for the next group/round.
This may require an enhanced gridview widget?
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.