{"action":"closed","issue":{"url":"https://api.github.com/repos/jfly/ccm/issues/51","labels_url":"https://api.github.com/repos/jfly/ccm/issues/51/labels{/name}","comments_url":"https://api.github.com/repos/jfly/ccm/issues/51/comments","events_url":"https://api.github.com/repos/jfly/ccm/issues/51/events","html_url":"https://github.com/jfly/ccm/issues/51","id":49857567,"number":51,"title":"Registration and check-in","user":{"login":"jfly","id":277474,"avatar_url":"https://avatars.githubusercontent.com/u/277474?v=3","gravatar_id":"","url":"https://api.github.com/users/jfly","html_url":"https://github.com/jfly","followers_url":"https://api.github.com/users/jfly/followers","following_url":"https://api.github.com/users/jfly/following{/other_user}","gists_url":"https://api.github.com/users/jfly/gists{/gist_id}","starred_url":"https://api.github.com/users/jfly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfly/subscriptions","organizations_url":"https://api.github.com/users/jfly/orgs","repos_url":"https://api.github.com/users/jfly/repos","events_url":"https://api.github.com/users/jfly/events{/privacy}","received_events_url":"https://api.github.com/users/jfly/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jfly/ccm/labels/registration","name":"registration","color":"009800"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/jfly/ccm/milestones/1","labels_url":"https://api.github.com/repos/jfly/ccm/milestones/1/labels","id":774643,"number":1,"title":"Phase 1","description":"cubingusa+cubecomps replacement, no automated data entry or anything","creator":{"login":"jfly","id":277474,"avatar_url":"https://avatars.githubusercontent.com/u/277474?v=3","gravatar_id":"","url":"https://api.github.com/users/jfly","html_url":"https://github.com/jfly","followers_url":"https://api.github.com/users/jfly/followers","following_url":"https://api.github.com/users/jfly/following{/other_user}","gists_url":"https://api.github.com/users/jfly/gists{/gist_id}","starred_url":"https://api.github.com/users/jfly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jfly/subscriptions","organizations_url":"https://api.github.com/users/jfly/orgs","repos_url":"https://api.github.com/users/jfly/repos","events_url":"https://api.github.com/users/jfly/events{/privacy}","received_events_url":"https://api.github.com/users/jfly/received_events","type":"User","site_admin":false},"open_issues":40,"closed_issues":50,"state":"open","created_at":"2014-09-02T02:21:53Z","updated_at":"2015-01-17T09:21:14Z","due_on":"2015-03-01T08:00:00Z","closed_at":null},"comments":0,"created_at":"2014-11-24T05:27:43Z","updated_at":"2015-01-17T09:21:14Z","closed_at":"2015-01-17T09:21:14Z","body":"First off, some definitions:\r\n\r\nRegistration is the thing that competitors do online before a competition. (They'll pick the events they're interested in, maybe pay for those events, and may volunteer to judge and scramble, and may say they're going to bring guests.)\r\n\r\nCheck-in is something that AFAIK, happens at every competition. This is when competitors show up and pay for the events they registered for but didn't pay for, and score cards are possibly filled out, or reorganized. When we get around to Phase 2, this may be when we give competitors their id card for the competition =).\r\n\r\n@jbcm627's addition of a Registration collection is designed to handle registration. However, in order to enter times for a competitor, we need there to be an document in the Results collection for them. Registration does *not* place a competitor in any Results collection. Check-in will copy competitors from Registration to Results so that a competitor's list of registered events will equal the list of events they're \"checked in for\".\r\n\r\nHere's a rough sketch of what the check-in table will look like:\r\n\r\n| Name       | 333 | 444 |   |\r\n|--------------|-------|------|-----| \r\n| Jeremy     |    X  |        |  Check in button |\r\n| Jim           |    X  |  X    |  Check in button |\r\n| Devin       |        |   X   |  Check in button |\r\n\r\nEach row corresponds to a competitor. Every cell is a checkbox that is checked if the competitor is registered for that event (if an organizer clicks this checkboxes, it will togger the competitor's registration for that event). If registered != checked-in for any cell, then we color the background of the cell red to draw attention.\r\n\r\nIf a competitor's registered events != their checked in events, we show either a \"Check in!\" button, or an \"Update check in\" button according to whether they've already checked in.\r\n\r\nNOTE: In the interest of not ever deleting data without it being very obvious beforehand, we will disable checkboxes corresponding to events for which times have already been entered."}}