- new $user parameter for egw_vfs::check_access($path, $check, $stat=null, $user=null) to check access to a file for a user, who is NOT the current user
- # has special meaning in url and is intern always urlencoded as %23
- ? has special meaning in url and is intern always urlencoded as %3F
- % need to be urlencoded as %25, as it's the escape char in urlencoding
(it has not been stored urlencoded in sqlfs so far, there's some
workaround in filemanger_ui to deal with the old unencoded % chars)
- space and + are NOT urlencoded in sqlfs in the DB, they get urlencoded
only for download urls
- " get urlencoded for download urls only as it messes up the html
markup
--> Filenames get urldecoded, before displayed to user
- done manually eg. in messages
- done automatically in new vfs-name widget (both ways)
an infolog attachment), was caused by use of url_stat from sqlfs
instead of links stream wrapper
- fixed wrong mime type / icon in files stored via netdrive from msword
(the first use the extension .tmp, before renaming file to .doc:
sqlfs "detects" mime type only from the extension and did not recheck
it if a file gets renamed, that's now fixed)
- if base is a symlink to a dir, this one is listed anyway
- symlinks to dirs (beside the base) are only descended, if
$options['follow'] is specified
- links are returned for type 'f'
--> removed follow option from find() in filemanager_ui::get_rows()
--> no more infinit symlink loops in filemanager GUI
- egw_vfs::stat and egw_vfs_stream_wrapper::url_stat now both have a
parameter $try_create_home=false, which do not create a non-existing
home-directory by default.
- filemanger_ui calls egw_vfs::stat($path,true) to create an evtl.
missing home dir (in case it does not exist because of previous
problems)
--> fixes not working home-dir creation or rename, because url_stat
already tried to create the home-dir
- all: false (default) = ignore files starting with a dot '.',
true = show all files (. and .. are always ignored!)
- exec: false (default) = do NOT allow to upload or modify scripts,
true = allow it (if docroot is mounted, this allows to run scripts!)
--> deny_script method was added to egw_vfs and calls to it from
filemanager
Other fixes:
- missing write rights of the webserver were not removed from perms
(causing warnings to be displayed in the ui)
- rename was not working due to typos
--> should be backported for obvious reasons to 1.6
- sqlfs can store now symlinks (implements symlink and readlink)
- vfs resolves symlinks before calling a mounted stream-wrapper
--> symlinks can be between different mount-points
- filemanger can create symlinks and follows them
- etemplate vfs_widget displays symlinks (to be improved)
Happy testing :-)