Commit Graph

4851 Commits

Author SHA1 Message Date
Ralf Becker
256163ba98 "check for a valid eGW session" 2008-04-15 08:04:26 +00:00
Ralf Becker
a58cd51617 "- remove index.{html|php} added by apache, which causes the upload/browsing in some apache configs to fail
- check for a valid eGW session"
2008-04-15 08:04:11 +00:00
Ralf Becker
30c265a5c7 "remove index.{html|php} added by apache, which causes the upload/browsing in some apache configs to fail" 2008-04-15 08:02:13 +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
Nathan Gray
540901e9c7 Fix config to correctly remove empty values 2008-04-11 13:38:37 +00:00
Klaus Leithoff
3b874ad66f added fields created/modified to the retrieval of the single account info.
added accountstatus/created/modified to the retrieval of the account list.
2008-04-10 09:06:24 +00:00
Klaus Leithoff
5693038f9f added fields created/modified to the retrieval of the single account info.
added accountstatus/created/modified to the retrieval of the account list
2008-04-10 09:06:00 +00:00
Klaus Leithoff
6dd130a1f3 fix for the problem, that allowed attribute values where stripped, due to the security bugfix 2008-04-02 08:47:42 +00:00
Ralf Becker
801d387582 "if links of multiple id's of one app were queried and there was a link between two of them, it was only returned for one" 2008-04-01 15:49:30 +00:00
Ralf Becker
d2024f053f "added some debug code (switched off by default)" 2008-04-01 15:47:37 +00:00
Ralf Becker
7e22bf1347 "New method try_lang(), usefull for exception handlers or early stages of the initialisation of the egw object,
as calling lang would try to load the translations, evtl. cause more errors, eg. because there's no db-connection."
2008-04-01 10:47:50 +00:00
Ralf Becker
3d909d4776 fixed fatal error "Exception thrown without a stack frame in Unknown on line 0", if DB does not exist when calling the regular eGW url 2008-04-01 10:33:54 +00:00
Ralf Becker
868345fcb6 "added static to encrypt_pasword" 2008-03-25 17:05:38 +00:00
Ralf Becker
8a9e4d3d9d "removing unnecessary instancations" 2008-03-25 17:05:08 +00:00
Ralf Becker
bf31f4e94a "removing unnecessary instancations" 2008-03-25 17:02:09 +00:00
Ralf Becker
2cd4742695 "removing unnecessary instancations" 2008-03-25 17:00:56 +00:00
Ralf Becker
0c37486b65 "static html methods and other modernisations" 2008-03-25 16:58:50 +00:00
Ralf Becker
1c4b1f9636 "using the global db object" 2008-03-25 16:54:16 +00:00
Ralf Becker
ed5db11312 show session restore time 2008-03-22 16:22:11 +00:00
Ralf Becker
eb2303adc8 "prevent that anyone switches the global db object to an app != 'phpgwapi' (you have to clone it before doing that)" 2008-03-22 12:32:24 +00:00
Ralf Becker
ea3ae107d1 added minimal egw object (egw_minimal), which is shared between egw and setup 2008-03-22 09:29:29 +00:00
Ralf Becker
9553da2f63 "fixed typo: translations --> translation" 2008-03-22 09:25:41 +00:00
Ralf Becker
a02a89fbdb "stoped permanent error_log of loaded classes" 2008-03-21 21:02:00 +00:00
Ralf Becker
ac04409df7 dynamically autoloading sub-object of egw-object, moved __wakeup methods to concerned classes and other "modernsations" ;-) 2008-03-21 20:50:13 +00:00
Ralf Becker
3bf9ad5efa dynamically autoloading sub-object of egw-object, moved __wakeup methods to concerned classes and other "modernsations" ;-) 2008-03-21 20:11:59 +00:00
Ralf Becker
3108861db0 "using global db object" 2008-03-21 17:15:02 +00:00
Ralf Becker
de74e8b6ce "using global db object" 2008-03-21 11:49:28 +00:00
Ralf Becker
e71d16ed28 "fixed not working rename of dirs in the old vfs" 2008-03-20 14:21:13 +00:00
Ralf Becker
2912ec7c61 "fixed broken image title" 2008-03-20 08:32:29 +00:00
Ralf Becker
dc1797f41a update from 1.4.003 2008-03-19 13:12:13 +00:00
Ralf Becker
af72b6ea54 fixed problem pointed out by lukasz.pilorz(at)allegro.pl 2008-03-19 11:09:27 +00:00
Ralf Becker
b98808f87f "added todo's (concept) for extended ACL, WebDAV properties and locks" 2008-03-18 13:17:13 +00:00
Ralf Becker
4f94d5837d use of global db object and new headers, made all methods of the auth class static 2008-03-15 17:27:36 +00:00
Ralf Becker
78624aa9e9 "using the global db object" 2008-03-15 15:52:27 +00:00
Ralf Becker
0927d90e09 "using the global db object" 2008-03-15 15:30:15 +00:00
Ralf Becker
81a0b796d9 "using the global db object" 2008-03-15 15:11:48 +00:00
Ralf Becker
ec042e0f4d "using the global db object" 2008-03-15 15:00:15 +00:00
Ralf Becker
426fc2825e "using the global db object" 2008-03-15 14:52:26 +00:00
Ralf Becker
7272868ab5 "using the global db object" 2008-03-15 14:19:06 +00:00
Ralf Becker
3f5c03f91a "removed double include of mounted dirs in egw_vfs::find" 2008-03-14 15:37:33 +00:00
Ralf Becker
68dfe96fed "new method download_url" 2008-03-14 15:00:06 +00:00
Ralf Becker
e79c4b3e6a removed left over line, causing name2id to fail and stopping all logins 2008-03-13 20:08:37 +00:00
Ralf Becker
37a12ac183 "using global db object" 2008-03-13 19:37:09 +00:00
Ralf Becker
04160dda86 dont search of titles if no ids given 2008-03-13 19:31:31 +00:00
Ralf Becker
c01818daa1 egw_db::expression searches for a table_def in all (loaded) apps, not just the current) 2008-03-13 19:30:01 +00:00
Ralf Becker
12cdb8820d remove empty or null values from the config-table 2008-03-13 19:28:44 +00:00
Ralf Becker
14bc5239b7 "fixed not found first entry of result-set" 2008-03-13 19:12:14 +00:00
Klaus Leithoff
259f6d5cab fixed a problem in the old vfs_sql class in acl_check, a var group_ok is checked to verify permissions but never set. this did lead to empty
downloads in some cases. This was sponsored by PX2@Medien GmbH & Co. KG
2008-03-13 12:48:43 +00:00
Ralf Becker
ae1cabebf7 "new optional param to get_3links to return just the app_id's and not the full link-records" 2008-03-13 11:27:48 +00:00
Ralf Becker
e7d9ca5532 "suppressed warning if ADORecordSet::fetchSingle() has nothing to fetch and docu" 2008-03-13 10:59:57 +00:00
Ralf Becker
3760ea8608 fixed not found tabledefinition if no app-name given and a search of the table was requested (type in var-name) 2008-03-10 21:32:13 +00:00
Ralf Becker
5ea6f9dc1f search every id only once 2008-03-10 21:02:11 +00:00
Ralf Becker
5042a302d6 fixed typo, preventing links with a certain app to be found 2008-03-10 21:01:28 +00:00
Stefan Becker
62ad7b05eb added new countrys like AALAND ISLANDS or SERBIA AND MONTENEGRO and
marked old contrys with 'former'
2008-03-10 16:41:55 +00:00
Ralf Becker
b0ce76ad83 "added some aliases for iso-8859-1 which seemed to be used in some mails" 2008-03-10 12:57:27 +00:00
Ralf Becker
d4a1075c68 "fixed bug reported on the german list by webmaster-at-kmu-tools.de" 2008-03-09 21:14:05 +00:00
Ralf Becker
0da675bf6e made all methods from html class static and removed the unnecessary singleton 2008-03-09 14:35:48 +00:00
Ralf Becker
97f63b43ff some compatibility stuff for ADOdb<->PDO 2008-03-09 14:22:02 +00:00
Ralf Becker
0ac46f72c7 reworked to call egw_link (static) 2008-03-08 23:21:42 +00:00
Ralf Becker
6cfde1148b "added (depricated) $link_table var" 2008-03-08 23:17:10 +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
15ca7e90ed eGW wide index over all applications (superindex)
This index allows a fulltext search over all applications (or of
cause also a single app).
Whenever an applications stores an entry it calls: 

             boolean egw_index::save($app,$id,$owner,array $fields,array $cat_id=null)

which calls, as the application do when is deletes an entry (!), 

             boolean egw_index::delete($app,$id)

and then splits all fields into keywords and add these to the index by 

             boolean private egw_index::add($app,$id,$keyword).

Applications can then use the index to search for a given keyword
(and optional application):

             array egw_index::search($keyword,$app=null) or

             foreach(new egw_index($keyword,$app=null) as $app_id => $title)

To also allow to search by a category or keyword part of it, the index
also tracks the categories of the entries. Applications can choose to
only use it for category storage, or cat do it redundant in there own
table too. To retrieve the categories of one or multiple entries: 

             array egw_index::cats($app,$ids)

Applications can use a sql (sub-)query to get the id's of there app
matching a certain keyword and include that in there own queries:

             string egw_index::sql_ids_by_keyword($app,$keyword)

Please note: the index knows nothing about ACL, so it's the task of
the application to ensure ACL rights.
2008-03-08 21:51:12 +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
Ralf Becker
407b4defad static strip_array_keys method to strip a colum-prefix from a result, docu update about depricated functions which use the internal result-set 2008-03-08 21:31:12 +00:00
Klaus Leithoff
85c7be0259 checking if apparray exist in __autoload, before looping through 2008-03-07 10:18:17 +00:00
Ralf Becker
108cb59d3c fixed bug introduced by Connys performance stuff: function returned limited resultset with unset or empty start parameter 2008-03-06 16:11:49 +00:00
Ralf Becker
4f941b5a61 (hopefully) final fix: default for select() is now again ASSOC, but next_record() adds numerical indexes again, if they are required. That is a slight penality for old code, but gives full speed / lowest memory for new code. 2008-03-06 14:20:47 +00:00
Ralf Becker
046713e00f temp. fixed problem introduced with last egw_db commit (db::f() not working with db::select()), thought I want to check how often that is used, as an only asociative fetchmod needs half the memory 2008-03-06 13:33:38 +00:00
Ralf Becker
e03425c90b fixed an error with the initialisation of the static $db var (under LDAP and php4-restore sessions) and or by using the global db object without cloning it 2008-03-06 11:43:45 +00:00
Ralf Becker
9de6c2884f added fetchmode parameter to query() and set it to ADODB_FETCH_ASSOC for select(), also added comment about how to avoid cloning the global db object and looping over result sets via the returned result object 2008-03-06 11:42:21 +00:00
Ralf Becker
42688f5cd2 removed unnecessary checkAuth function, because the regular eGW session cookie got not recogniced and all checks are done by the header include anyway 2008-03-04 08:33:08 +00:00
Ralf Becker
b638e9117b set old vfs as default again for easier testing of the new UI 2008-03-03 12:17:08 +00:00
Ralf Becker
d2094b8958 search, lettersearch, merge content of subdirs (recursive display) 2008-03-03 12:16:11 +00:00
Ralf Becker
0af252ad55 ordering and limited resultsets 2008-03-03 07:53:43 +00:00
Ralf Becker
4df4fd9f06 first work on UI for a new filemanager and some vfs bugfixes and improvments 2008-03-02 21:44:15 +00:00
Ralf Becker
7da0cd0dd0 fixed static use of config::save_value() 2008-02-29 07:36:29 +00:00
Ralf Becker
3cd2ce8dd2 fixed mount command and enhanced egw_vfs::find() 2008-02-29 07:27:49 +00:00
Ralf Becker
ea5cda5310 fixed typo preventing non-root access 2008-02-29 07:23:14 +00:00
Ralf Becker
a0e5556c62 hooks to create, rename or delete user+group home-dirs (you need to run Admin >> register hooks!) 2008-02-27 10:33:48 +00:00
Ralf Becker
640ee3ab93 hooks to create, rename or delete user+group home-dirs (you need to run Admin >> register hooks!) 2008-02-27 10:20:48 +00:00
Ralf Becker
8afe9094b7 More improvments of the sqlfs code and the command line interface:
- 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
2008-02-26 08:51:42 +00:00
Nigel Vickers
d81d9bce03 Mutexed memcache handler. Traps race and memcache memory conditions on large scale Fastcgi farms.
Attribs: Stephan Becker: Code, identified the Javascript culprits
         Wim Bonis: Code, Race condition
	 Klaus Leithhoff: Code, mbstring writes a different length to that that it reads
	 Lars Volker: Code, Debug memcache slab memory,  memcache add as lock.
2008-02-25 14:13:45 +00:00
Nathan Gray
cc210e9dae config->save_value() was overwriting the cached array values with a single value 2008-02-22 16:42:20 +00:00
Carsten Wolff
3304616642 Circumvent a bug in some distributions of apache/mod_php, where an apache
child, that has executed a php script with mbstring.func_overload=7 once, will
overload substr() in a later execution of another php script, even if the
Location context of that script has mbstring.func_overload=0 set. Since the
WBXML decoder works byte-by-byte to determine substring length, it fails, if
mb_substr() is used. This patch prevents this.
2008-02-19 09:55:59 +00:00
Ralf Becker
e71608d8cc new sqlfs stream wrapper, as replacement for the old vfs class (it uses the PDO extension, as PDO allows to access BLOBs as streams), the update create a new egw_sqlfs table and fills it with the content of the old vfs (egw_vfs table), BOTH use the same files in the filesystem, so beware if you delete something in one or the other, this is definitly NOT for production systems 2008-02-18 06:52:07 +00:00
Ralf Becker
9c649da978 WebDAV can use now the new stream wrapper interface, thought its switched off by default in filemanager/webdav.php (see the comments at the end of the file) 2008-02-18 06:43:49 +00:00
Cornelius Weiß
1b3eff88ea fix typo asterix -> asterisk :-) 2008-02-12 19:44:20 +00:00
Cornelius Weiß
ed6fea6f5b performance enhancement: accounts::search 2008-02-12 15:57:39 +00:00
Cornelius Weiß
86f6654c8c fix the "to many categories" problem with ldap backend 2008-02-12 15:55:26 +00:00
Lars Kneschke
252f2a964b use the global instance of the accountsClass and create a own connection to the accounts backend 2008-02-08 11:21:32 +00:00
Lars Kneschke
09f1287d6c using the singleton passtern to get a instance of the accounts class and call the setAccountId function to set the accountId 2008-02-08 11:20:50 +00:00
Lars Kneschke
51f14c8d82 don't resolve group grants when using the addressbook, as resolving group memberships is currently extremly slow, with bigger installations
maybe we can also fix it different
2008-02-08 11:19:41 +00:00
Lars Kneschke
31f2ea4a07 minor formating changes 2008-02-08 11:16:40 +00:00
Lars Kneschke
844936d19b added singelton pattern to the accounts class and added function to set accountId without needing to call the construtor 2008-02-08 11:16:09 +00:00
Ralf Becker
e3ee4fb7dc new egw_vfs class, with many static methods to access the new vfs, see the documentation in the header of egw_vfs 2008-02-07 06:37:45 +00:00
Ralf Becker
b2be83b0da new id2name parameter $item="path" to get a / delimited path of the cat hierarchy (names of the parents) 2008-02-07 02:40:43 +00:00
Klaus Leithoff
4fd4d8fb6a update functionality to regard the new sized fields org_name, contact_email and contact_email_home 2008-01-31 12:39:05 +00:00
Klaus Leithoff
6ea71715f8 new egw_addressbook definition because of table alterations of that table 2008-01-31 12:37:16 +00:00
Klaus Leithoff
e1214a3896 increment version, because of table field alterations in egw_addressbook 2008-01-31 12:35:15 +00:00
Klaus Leithoff
08e5fa0497 prevent the mb_convert_encoding to return with an empty string, for the failing of the conversion in that function results in an empty string as
well.
2008-01-31 12:31:18 +00:00