Forum OpenACS Development: Re: Possible issue in file storage
Thank you for these pointers. Normally, i try to avoid file-storage. I've added a function
ad_urlencode_path to handle the differences between aolserver and naviserver and added these to the folder_chunk in file-storage (btw., the encoding was not done consistently there either, some branches used the encoding for $title, some not).
This version is no supposed to work with both servers for viewing sanitized and non-sanitized names.
I've not touched the inconsistency of the names for uploading single files vs. uploading via zipped files. It seems to me, as if the original intention was to permit arbitrary names in the name attribute of the content repository, but to convert these when downloading via
fs::get_file_system_safe_object_name, but folder-chunk does it the other way round, sanitize the file_upload_name with
fs::remove_special_file_system_characters, which is a helper of
fs::get_file_system_safe_object_name. This would mean that the zip-behavior is as intended.
i would not wonder if one could get as well different names when downloading single files vs. downloading via zip.
Not sure what could be the safest approach about this for a through revision... Letting people have special chars in filenames is fancy and we have the procs to make it work quite easily, but then comes "that special case" and we go mad again...