I know Dokuwiki requires lowercase for both page names and user IDs, I really don't see a "why" discussed anywhere.
Is there a reason that lowercase is the requirement and mixed case is not an option? I can see how it is a distinct advantage with page names since it no longer matters how I address a page -- and I definitely don't have a reason for [[puzzles]], [[Puzzles]], and [[PUzzles]] to refer to three pages rather than one. And it is simpler to say everything is lower case than to look for a mixed case match and re-using the existing page. Besides, normally the page Title or a "reference text" is shown to users, not the ID, anyway so people care even less that its only lower case for pages files.
However, it appears to me that User IDs must be handled the same way //only// because one function is used to enforce validity -- cleanid(). Again, the possible problem could be the case of the users with the same ID in different cases which is a support headache. But, seen a different way, this is a security hole since you've just greatly reduced the combinations of characters to combine for a valid userID. As I recall, Windows was forced to change a similar behavior for WinXP.
My problem is that I have more than a decade of legacy users from a previous website to support. We had a system that allowed not only mixed case, but some odder characters, as well. Rather than change how several hundred users worked, I had to bend Dokuwiki: I created a copy of cleanid() //just// for user IDs that allows mixed case (and a couple odd characters). It wasn't bad; there are only three places my function is used instead of the original cleanid() which still cleans up page references. I'd like to see this more formally built in as an option into the lower workings of Dokuwiki. There are some things I could do, for example, the check for an existing user should be case insensitive, too, to prevent user IDs that are duplicates in everything but case. Just my opinion; if its just me, then I can alter thee function calls as part of my upgrade process. If its not just me, then maybe this should be a feature request.
Kite webmaster@xxxxxxxxxxxx Paul Webster wrote:
Hi List, I just moved Dokuwiki (latest from darcs) from a Windows-Apache environment to an Linux-Apache environment and noticed that files using upper-chased chars are not recognized (pages, and media files). If I copy a file with upper-case chars via samba for example into the media directory I see the filename correct in the mediabrowser and the Link (in the edit view) is correct as well, but as html the link is converted to all lowercase and the file is not found when I click on the link. Is there anything I am doing wrong or can i change that behaviour? Thanks in advance, ThomasThe file and folder names in the data directory must all be lower case. Dokuwiki converts all namespaces and pages to lower case. Short of writing a script to recurse the data directory and rename everything, I'm not sure how you would resolve this. One other thing to check when copying files onto a Linux machine over samba is the resulting permissions on the Linux system, which in turn, depends on how you have samba set up. Make sure Apache on Linux has at least read access to the files and folders. It is also entirely possible that you may be able to configure samba to force lower case names, or vice versa on windows, but I'm not sure. Paul W
-- DokuWiki mailing list - more info at http://wiki.splitbrain.org/wiki:mailinglist