Ideal solution:
username is always lowercase
original capitalization is stored in the database in the user profile
this avoids any SQL TOUPPER (always tolower the input text via
JavaScript or similar before feeding to SQL) and allows the user to
see "BoB" everywhere. You might also want to strip away punctuation
and whitespace, so that "Boba Fett!!" is mapped to "bobafett".
For extra points, allow the user to edit the stored, case sensitive
username and treat it as a separate entity from the all-lowercase
name (a la Mac OS X installer screen).
Reid
On Dec 11, 2006, at 13:45, Jared Rhine wrote:
There's a lot of possible combinations of capitalization behaviors.
When you start to try to "fix" capitalization, in my experience,
you find all sorts of nooks and crannies, with differing technical
constraints. Sometimes you wind up with some performance-impacting
changes, like SQL TOUPPER across a whole database table. Seems
like an area to avoid, prior to Preview at least.
I currently favor avoiding, pre-Preview, making Cosmo be case-
insensitive everywhere. But adding a hack to avoid creating 2
users with varying capitalization should be pretty simple. This
approach would address the specific complaint:
It seems to Priscilla and I that having multiple users with the
same username no matter what the casing was confusing.
while keeping run-time capitalization checks only in the rarely-
used "create new user" code path.
At the end, we'd still have a case-sensitive Cosmo. You'd need to
put the correct path/username in Chandler's account dialog. URLs
would need to have the right capitalization in any username parts
(and everywhere else, actually). But a create-new-user would fail
if an existing user already existed with differing capitalization.
So, without analyzing all the possible combinations, this proposal is:
* Leave Cosmo as-is, except:
* Enhance CMP create-new-user to fail if a user already exists with
differing capitalization
-- Jared
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design