Add email to users and populate from shib.
Set up for use of eppn instead of netid for user uid (so calculate
netid from eppn).
Make 'net_id' of Person expect an email address (instead of net_id) - will
actually change this field to email in the near future.
This is all in preparation for multi-institutional, where we need
something like an eppn instead of just a uid and where we can't just
construct email addresses from a net id. There's more to do, though.
Add gem to validate emails.
Add email validation where appropriate.
Fix code (just one place) and tests to deal with this validation.
Use email rather than uid.
Change _netid fields on Person, Event, ScheduledEvent to _email.
Fix everything related to that.
Remove UIUC information lookups that used netid (as these will
not be applicable more broadly).
Fix form fields I messed up in merge.
When we attempt to create an invalid event/scheduled event fail and
show an error to the user.
Reduce database access to compute repos index page.
another uid to email fix
Move forms for events outside of table to render correctly. I still haven't
made the code use just one form instead of one for each file group, but this
fixes the problem (though is still kludgy) for now.
Add comment (TODO)