- 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 :-)
- check and give error message if perms could not be changed
- added sudo feature to file preferences allowing to get VFS root access
+ setup config user/password can always be used
+ further eGW users can be configured in setup >> configuration
--> allows eg. to create free folders in the vfs root
--> should be used with caution and respect to users privacy
- added file preferences icon to opened directory (eg. for the root dir)
+ path with clickable components
+ human readable size, mode, ...
+ mime icon with integrated thumbnail creation
- link widget uses now vfs-mime for it's icons
- thumbnail creation is now switched on with size 32px by default, it can
be switched of by the admin or user, in doing so explicitly
- mime-icons are moved from filemanager to etemplate, as not everyone
installs filemanager
- filemanager has now 3 display modi:
+ Current directory (with subdirs always on top)
+ Subdirs sorted in
+ Files from subdirs (shows recursive all files and you
can click on the path components thanks to new vfs widget)
allowing to set an arbitrary uid, gid and mode for the vfs (like
mounting a dos Filesystem under Linux).
Can be used to mount eg. an upload dir writable only by Admins:
filemanger/cli.php mount --user root_admin --password whatever \
filesystem://dummy/var/www/html/uploads?group=Admins&mode=075 \
/uploads
Please note that you can NOT use filesystem:/something!
Fixed the vfs-classes to deal correctly with get-parameters used as
mount-options.
- more descriptiv labes in sidebox:
+ Your home directory
+ Home directories
+ Base directory
- make some phrases translatable and use placeholders instead of
concating partial phrases with the variable content
-added missing? language strings
-translated new and missing? language strings to german
-fiddeled with the settings for yes/no select box to show the preset values for the users setting, if preset by admin
#filemanager supports the configuration of a different startfolder (other than users home directory)
#preferences for filemanager
-define links to folders, that show in sidebox menu
-specify the display characteristics in filelisting (default (all sorted), or forced folders first)
#configuration options for filemanager
-you may specify how many links to folders can be configured in filemanagers preferences
YOU HAVE TO RUN Search and Register Hooks of all Applications, and you may have to login/logout.
noticed while working on it:
- memory size error, when renaming a file after posting the list (eg.
clicking on home icon)
- renaming (moving) one file on an existing filename, put the file in an
inaccessible state
- renaming more then once, did not work
--> ToDo: add some ajax to notify the user, when he tries to overwrite
an other file while renaming one
- dropped all old code, images and translations
- the former comments are savely stored in the sqlfs table, but are currently not available via the GUI
- read rights are not checks in each traversed directory (via sql in a single query to locate the path)
- diropen additionally checks for execute rights
- fopen checks for read or write depending on the mode
- chmod, chgrp, chown methods in sqlfs and egw_vfs/vfs plus an egw_vfs::$is_root var used to grant root rights (no access controll and chown or chgrp without being the owner of a file)
- find method (some more params to come) to recursivly search and optionaly execute some callback
- egw_vfs::remove doing a "rm -r" / recursive remove or dirs and files
- new files or dirs inherit the perms and ownership from the parent directory (no umask)
- files/dirs the user has no read rights, in a directory where he has no write rights, get hidden (eg. not showing all the other users / groups home dirs
- many new cli commands (chmod, chgrp, chown, find), recursive option for most commands and the ability to use it with root rights, see the usage message if called without options
- "cp -r -p" to copy a whole tree incl. ownership and perms, eg. backing up /home to /backup
- caching the information for dir_open vfs_sql::ls() to use it in url_stat, to not read it again from the db
- implemented a static touch method, which is not (yet) part of the stream-wrapper interface
and start with a search for all objects that are created since the day before. This is not committed into 1.4. If you think this feature is of
any help for 1.4 too, let us know.
- folders can have comments now
- folder selection is now sorted alphabetically
- fixed handling of unknown mime-types and application/pdf
- some performance fixes"
- konq: webdav://localhost/egroupware/filemanager/webdav.php/home
- win: http://localhost/egroupware/filemanager/webdav.php/home
You can now you drag and drop to updload files or complete folders and you can edit files directly in the filemanger
translation file (only those not translated in simplified Chinese).
This is because
1) most simplified Chinese readers can read traditional
Chinese. If some phrase doesn't have simplified Chinese translation,
egroupware better fall back to traditional Chinese then English.
2) Translation can be easier (just pick up the unfamiliar traditional
translation and change to simplified form)
The change is made by using
> find . -type d -name "setup" -exec /tmp/merge_tradition.sh {} \;
where merge_tradition.sh is:
#!/bin/sh
cd $1
if [ -f phpgw_zh.lang ] && [ -f phpgw_zt.lang ]; then
mv phpgw_zh.lang phpgw_zh.lang.old
join -a 1 -t " " phpgw_zt.lang phpgw_zh.lang.old | \
awk -F " " \
'{ OFS = FS; if (NF == 7) print $1, $5, $6, $7; else print $0 ;}' \
> phpgw_zh.lang
fi
Kiang if you like the idea you can merge my translation to your lang
file too. And it's even better if the language engine can be changed in
the way that, as a phrase has no translation for current language,
choose the nearest language before falling back to English. Say, when no
translation in zh, use zt before trying English.
Could it be better that this apply to pt too? (pt-br and pt)
Translation of Traditional Chinese in UTF-8 version
I've tested it with the version RC5. Somebody in taiwan
who offered a series of functions to convert the
encoding from big5 to utf-8. It works fine~ Should I also
upload it for anyone who would like to understand the
big5 encoding??