$100 to the first person that adds the following:
Add the ability to display the persons’s real name in the upper-right as opposed to login id. I started doing this myself by adding the fields fname and lname to the users table. All that would need to happen really is check to see if those fields exist or are null, if they are, display the username, else display the person’s real name.
LDAP authentication - this is probably the biggie. I’m presuming ruby already has an LDAP module. All I’m asking for is that instead of using the users table (or in addition to), allow the user to specify a base dn in the config, and then run an LDAP search. Authenticate this way - currently the login field would be pulled from uid element, password would probably be an MD5 hash, but extra credit for allow other auth types. You would then use the uidNumber element for the users/id table field. I’m debating whether to create a custom LDAP element named tracksAdmin. I can use that as a boolean, and you can replace the is_admin field with that. You would then pull lname and fname fields from Surname and Name elements, respectively, or possibly just pull the cn element as a single string.
What this allows for is keeping centralized authentication in a business a bit more simple, and would integrate Tracks into Apple’s OpenDirectory, and Microsoft’s ActiveDirectory. I’ve been playing around with this:
http://dataspill.org/pages/projects/ruby-activeldap
—————————————
Side bounty - getting things to where if a user “is_admin”, the user can view other people’s user accounts. I’m also willing to perhaps fund a developer maturing the multi-user functionality in Tracks a bit. The ability to share your tasks with one or more users, assignment of tasks to others, smarter “waiting for” context, etc.
