It seems to be based upon the function IsWikiName() in /wikka.php, which is in turn referred to by
- usersettings.php: for login and changepassword.
- emailpassword.php: which just does a basic check and doesn't seem to be crucial for anything other than making sure it's a wikiname.
Before doing this or any other modification, back your shit up. A no brainer, but I thought i'd say it anyway.
/wikka.php
FIND (unmodified: line 666)
- function IsWikiName($text) { return preg_match("/^[A-Z,ÄÖÜ][a-z,ßäöü]+[A-Z,0-9,ÄÖÜ][A-Z,a-z,0-9,ÄÖÜ,ßäöü]*$/", $text); }
REPLACE WITH
- //MOD: nonwiki usernames : function IsWikiName($text) { return preg_match("/^[A-Z,ÄÖÜ][a-z,ßäöü]+[A-Z,0-9,ÄÖÜ][A-Z,a-z,0-9,ÄÖÜ,ßäöü]*$/", $text); }
- While we're at it - fix the regular expression: the commas don't belong in there! (Unless you want to allow a comma as part of a username, even at the start - probably not!) This is an old bug, actually, only partly fixed in version 1.1.6.0. So the new function should be:
Of course the RE can be further refined (making a difference between starting character and following characters, since for instance ß can never occor at the start of a word - but you get the idea. --JavaWoman
- You're too fast for me! i wasn't even done putzin with it (= it still remains untested, (working other stuff in) but will update when completed.