Commit Graph

44 Commits

Author SHA1 Message Date
Ralf Becker
04be4c57fe - new registry attribute "file_access_user" to signal "file_access" method understands new 4th parameter $user
- infolog implementation for it
--> allows to check if a given user has access to a files of app/id
2011-06-26 12:32:06 +00:00
Ralf Becker
5864d5f1a1 use vfs:// url, to ensure vfs_add|modified hook get called 2011-06-24 17:38:13 +00:00
Ralf Becker
7282d42f52 - added hooks to general vfs methods to allow apps to monitore file access, creating, modification, removal
- 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
2011-06-23 18:34:47 +00:00
Ralf Becker
fe92979bc1 fallback for egw_link::edit() to use view data, if no edit specified 2011-06-02 19:58:30 +00:00
Ralf Becker
47e2764da0 new javascript method egw_open() to open egw_entries using there registered url and popup sizes from the link registry 2011-06-02 11:13:41 +00:00
Ralf Becker
4cce629666 * fixed handling of + char in VFS filenames (using egw_vfs::decodePath() instead of urldecode()) 2011-03-03 15:41:01 +00:00
Ralf Becker
2a801e61fe always use regular links stream wrapper here: extended one is unnecessary (slow) for just listing attachments 2010-10-12 08:17:10 +00:00
Nathan Gray
1482dbc1be Add the ability to hide and hold deleted links, pending final deletion of linked record. This prevents links to deleted items showing when deleted items are held for purging. 2010-09-27 16:27:48 +00:00
Ralf Becker
1f8e2e93df * allow to pick CC of tickets from addressbook
- also added a different approach allowing apps to register themselfs multiple times in the link registry, was necessary as types approach from Nathan changes the usage of the original app, while this adds sub-types like an arbitrary app responded to the link hook
2010-09-22 09:36:26 +00:00
Ralf Becker
f185382b0a fixed not working link_query call to static callback eg. "someclass::somemethod" 2010-07-29 19:09:55 +00:00
Klaus Leithoff
2768366eb6 fix for cached titles that are empty 2010-07-01 11:14:48 +00:00
Ralf Becker
94c31d9508 missing encoding and decoding for attachments 2010-05-12 18:58:16 +00:00
Nathan Gray
041200a245 Register link hooks for all installed apps, not just the ones the current user has access to. This lets the apps decide if the user has access to the data or not 2010-05-10 19:05:17 +00:00
Ralf Becker
06fb05a891 "- using sqlfs_stream_wrapper::id2path instead of links_stream_wrapper::id2path, as it's the same, but allows to replace links_stream_wrapper with an other class (based on links_stream_wrapper and sqlfs_stream_wrapper)
- using egw_vfs::urlstat instead of links_stream_wrapper::urlstat, to not depend on using links_stream_wrapper
--> required to do versioning on the links"
2010-04-27 07:35:26 +00:00
Ralf Becker
f7ee51f53b "egw_links: remove links user has no access to from result, if $cache_titles is set" 2010-03-10 12:20:51 +00:00
Ralf Becker
0f2eceefb8 Preseed link title-cache for link-list and link-string widget
(Performance improvment, as all titles of an application get queried in
a single query and NOT once for every link)
2010-03-04 17:07:10 +00:00
Ralf Becker
507bad0b92 new registry method edit/edit_id to edit an entry 2010-01-19 22:14:39 +00:00
Christian Binder
86346deefe fixed empty resultset if num_rows option is not defined, removed some weird indents 2009-12-16 13:10:55 +00:00
Nathan Gray
219ae4d224 Can't use ExecMethod2(), it doesn't pass by reference.
Used code to pass options by reference from nextmatch widget so apps can update  array if they need.
2009-12-08 17:56:22 +00:00
Ralf Becker
76e43e442c fixed typo 2009-12-08 08:19:58 +00:00
Nathan Gray
dd1370f97f Implement Ralf's suggestion of an options array to pass extra query parameters 2009-12-07 21:42:20 +00:00
Ralf Becker
0af8b60e39 "Maximum number of titles to query from an application at once (to NOT trash mysql)" 2009-12-07 11:18:13 +00:00
Nathan Gray
7744508999 API changes to support optional link sub-types 2009-11-19 20:09:30 +00:00
Ralf Becker
656ae5713b "fixed not working egw_link::set_cache" 2009-09-29 09:58:05 +00:00
Ralf Becker
8fb60be7d7 checking if attachment or attachment dir exists, before trying to delete it, to quieten warning, also improved warning to be precise if file does not exist, is no directory, or permission missing 2009-07-18 09:12:52 +00:00
Ralf Becker
66ef863bd5 "disabling mime-type and size in link-title of attachments, as it clutters the UI and users dont need it most of the time. These details can allways be views in filemanager." 2009-05-19 10:23:29 +00:00
Ralf Becker
bc65324a7c new type F for egw_vfs::find to return only files or symlinks to files
--> dont show symlinks to dirs as attachements / link-widget
2009-05-04 16:37:10 +00:00
Ralf Becker
2248427e48 "fixed bug reported by Martin Kramer on the German list:
attachments via WebGUI are no longer working: 
File 'links://default/apps/infolog/1265/2009-04-07_1219.png' is not an absolute path!"
2009-04-08 09:10:07 +00:00
Ralf Becker
c314069e0c "using path's instead of url's were possible" 2009-04-04 19:20:21 +00:00
Klaus Leithoff
1f8068eb52 dont use the titlecache if id is an array 2009-03-06 12:28:39 +00:00
Ralf Becker
5cf8a56f02 "fixed problem with title cache causing:
- infolog to display wrong contacts in the list
- double reads of contacts"
2008-10-25 09:06:11 +00:00
Ralf Becker
44c3c3f75a "removed permanent error_log() in set_cache" 2008-10-20 14:52:01 +00:00
Ralf Becker
25b3c3a1f8 Improved cache handling in egw_link class, to cope with excessive multiple
reads of entries from the database: Applications can call

egw_link::set_cache($app,$id,$title,$file_access=null)

from their search or read method, to eliminate the need to query the
entries again, when the egw_link class, link widget or links stream wrapper
needs title or file_access values later.
This offloads the caching to the link class, and improves performance a
lot, specially for infolog.
The cache is stored in the session and modified or deleted items get
removed, when the link class get notified about that anyway.
2008-10-19 11:28:21 +00:00
Ralf Becker
868c532beb "link registry parameter with an extra options to egw_vfs::find, to eg. remove some files from the list of attachments" 2008-10-10 17:02:43 +00:00
Ralf Becker
0218ffb751 - new vfs-widget to encapsulate common vfs/file related stuff
+ 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)
2008-10-06 17:43:42 +00:00
Ralf Becker
4328a0c906 Fixed links stream wrapper and link class, to work with storage=db 2008-10-02 11:04:51 +00:00
Ralf Becker
9e838a4068 fixed infinit recursion on deleting entries with linked files, first reported by Peter Goerzen 2008-04-21 16:55:52 +00:00
Ralf Becker
0080dc39f0 special mkdir of links_stream_wrapper, so the entry dirs do not inherit the other read/browse rights from the app dir 2008-04-21 11:06:45 +00:00
Ralf Becker
501df49cbb stream wrapper interface is now eGW VFS interface
- if you already run the 1.5.003 update (AND modified anything in the VFS), you have to re-run it, to not loose your modifications or risk an inconsistent VFS (DB does not match filesystem)
- to re-run the 1.5.003 update (only if your version is already 1.5.003 or bigger!) run the following sql:
UPDATE egw_applications SET app_version=1.5.002 WHERE app_name=phpgwapi
- the new vfs supports now an extended ACL, if that is supported by the backend (sqlfs only currently)
- eacl allows to set separate recursive acl rights for different users or groups on a directory (and subdirs)
- former group grants of group dirs are converted to eacl, thought we only support read or read+write access (no extra add or delete)
- attachments via the links class now also use a stream wrapper interface (links_stream_wrapper) and WebDAV as download handler (which requires no longer filemanager run rights)
2008-04-14 05:52:24 +00:00
Ralf Becker
d2024f053f "added some debug code (switched off by default)" 2008-04-01 15:47:37 +00:00
Ralf Becker
04160dda86 dont search of titles if no ids given 2008-03-13 19:31:31 +00:00
Ralf Becker
5ea6f9dc1f search every id only once 2008-03-10 21:02:11 +00:00
Ralf Becker
b1c2d9ac47 titles was not caching the returned titles and new param for get_links_multiple() to cache the titles of all found links 2008-03-08 22:38:09 +00:00
Ralf Becker
a515bdeffb reworked link classes:
- new public egw_link class, which has only static methods and can NOT be instanciated
- depricated bolink class, for existing code instanciating the bolink class in $egw->link
- new method and application hook *titles* to retrieve the title of multiple entries of an app in one go
- new method *get_links_multiple* to retrieve all links of multiple entries of an app
2008-03-08 21:41:20 +00:00