Commit Graph

3767 Commits

Author SHA1 Message Date
Ralf Becker
a8bf31c274 "fixed handling of query parts in dirname and basename" 2009-04-27 11:49:50 +00:00
Ralf Becker
e003dfd82a "fixed an other accounts_ldap problem: too many entries returned on 2. and further pages" 2009-04-23 11:49:44 +00:00
Ralf Becker
4245df1f29 "only check callback, if defined" 2009-04-23 09:48:03 +00:00
Ralf Becker
94190a81f7 "also cache the languages" 2009-04-23 09:47:22 +00:00
Ralf Becker
defe88e0cf "fixed not / only partialy working lettersearch in Admin >> Manage groups" 2009-04-23 06:24:58 +00:00
Ralf Becker
561f5e5aac needed for check_load_extension (session-handler gets included before regular include via the header.inc.php) 2009-04-22 10:35:31 +00:00
Ralf Becker
660ab41661 "- egw_vfs::check_access() using resolved symlink to call check_extended_acl on backend
- mime_magic"
2009-04-22 10:02:18 +00:00
Ralf Becker
86b126ef3a "quietent \"Warning: mb_convert_encoding() [function.mb-convert-encoding]: Illegal
character encoding\" reported on the devel list"
2009-04-22 04:33:12 +00:00
Ralf Becker
a45c874f72 "added explicit init(false) calls for methods called by setup (they dont call init() as eGW does)" 2009-04-21 13:26:40 +00:00
Ralf Becker
3da8703202 "fix for bug #2049: PHP Extention error since last SVC update..." 2009-04-21 05:20:04 +00:00
Ralf Becker
2d438c6dc5 Caching provider for memcached using PHP's memcache extension 2009-04-20 14:33:31 +00:00
Ralf Becker
aca05a32e3 using new check_load_extension function 2009-04-20 12:43:44 +00:00
Ralf Becker
bf036043b2 - making all methods of translation class static
- caching the phrases in new egw_cache on Tree level
--> a good speed improvment on my devel system
- also added a global function
check_load_extension($extension,$throw=false)
2009-04-20 11:59:39 +00:00
Ralf Becker
fd9856ebf5 Class to manage caching in eGroupware:
It allows to cache on 4 levels:
a) tree:     for all instances/domains runining on a certain source path
b) instance: for all sessions on a given instance
c) session:  for all requests of a session, same as egw_session::appsession()
d) request:  just for this request (same as using a static variable)

There's a get, a set and a unset method for each level: eg. getTree()
or setInstance(), as well as a variant allowing to specify the level as first
parameter: eg. unsetCache()

getXXX($app,$location,$callback=null,array $callback_params,$expiration=0)
has three optional parameters allowing to specify:
3. a callback if requested data is not yes stored. In that case the
   callback is called and it's value is stored in the cache AND retured
4. parameters to pass to the callback as array, see call_user_func_array
5. an expiration time in seconds to specify how long data should be cached,
   default 0 means infinit (this time is not garantied and not
   supported for all levels!)

Data is stored under an application name and a location, like
egw_session::appsession().
In fact data stored at cache level egw_cache::SESSION, is stored in
the same way as egw_session::appsession() so both methods can be used
with each other.

The $app parameter should be either the app or the class name, which
both are unique.

The tree and instance wide cache uses a certain provider class, to
store the data eg. in memcached or if there's nothing else configured
in the filesystem (eGW's temp_dir).
2009-04-20 11:50:45 +00:00
Ralf Becker
7ae9317be1 "fixed not working stream_open() $mode == 'rb', was requiring write rights as != 'r'" 2009-04-19 07:30:26 +00:00
Ralf Becker
70f2d64273 "missing static" 2009-04-18 10:54:39 +00:00
Ralf Becker
1a8b605c17 method to create user friendly label for a mime type, eg. "PDF file (application/pdf)" 2009-04-18 09:53:36 +00:00
Ralf Becker
a694662838 "file_exists for vfs" 2009-04-18 09:51:51 +00:00
Ralf Becker
f12a0dc307 making whole mime_magic class static, for easier use and better caching by byte code caches 2009-04-17 06:25:33 +00:00
Ralf Becker
7233f87413 "fixed not updated modification time, if file get's updated (eg. replaced via a new update in filemanager)" 2009-04-16 16:32:30 +00:00
Ralf Becker
5629c10e12 "charset independent case-sensitive comparison for mysql, using BINARY operator now" 2009-04-16 07:38:16 +00:00
Ralf Becker
9e34658599 "fixed not working egw_vfs::dirname if result should be '/', eg. egw_vfs::dirname('/home)" 2009-04-15 21:09:04 +00:00
Ralf Becker
03e7348896 "fixing commit r26783/4 for mysql:
using octal numbers with mysql leads to funny results:
select 384 & 0400 --> 384 not 256=0400
--> converted 0400, 040 and 04 to 256, 32 and 4 for mysql"
2009-04-15 11:21:44 +00:00
Ralf Becker
e20bd1703b "fix for bug #2041: Postrgresql error when I try to access a file in sqlfs
\"CEST ERROR:  argument of AND must be type boolean, not type integer\"
"
2009-04-15 07:50:14 +00:00
Ralf Becker
3795ae9a98 "fix for bug #1867: Several problems with non-ascii as first char in filename:
that char is skiped in dir creation, rename or filecreation"
2009-04-09 13:24:34 +00:00
Ralf Becker
5291d0ac39 Fixing the fix ;-)
shadowLastChange has to be an integer
2009-04-09 08:11:24 +00:00
Ralf Becker
7698d3ef65 Fixed not (always) updated last password change date 2009-04-09 06:41:41 +00:00
Ralf Becker
bd8ba08bc3 allowing stream-wrappers to specify an other mime-type for directories 2009-04-08 09:54:13 +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
e21fdcc3fc "- docu update
- adding some options to quite stats
- using stat-cache only if it contains a positiv response or $eacl is not set"
2009-04-07 19:42:46 +00:00
Ralf Becker
abc2de958a "Reimplemented stream_open, to ensure our url_stat gets called, which fills the stat-cache with our eAcl" 2009-04-07 19:32:27 +00:00
Ralf Becker
fcb8f3497c Finally fixed creation and rename of home directories:
- 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
2009-04-06 13:46:45 +00:00
Ralf Becker
c314069e0c "using path's instead of url's were possible" 2009-04-04 19:20:21 +00:00
Ralf Becker
1c11bfcf55 using a session for basic auth (not session aware) clients for WebDAV
and GroupDAV. The "sessionid" get's constructed from the basic auth
credentials and is not random (as the clients dont store them).
--> speeds up the use of *DAV
--> stops *DAV handlers to created numerious sessions
2009-04-04 08:38:56 +00:00
Christian Binder
b20b78e07e quitened a logging message which slows down eGW 2009-04-03 20:12:35 +00:00
Ralf Becker
a6836fb367 "some more info for error_log on Exceptions: Instance, User & URL causing the exception" 2009-04-03 13:29:47 +00:00
Ralf Becker
646931dc8a fix for bug #1838: problem with utf-8 data in all csv imports
- fgetcsv only works correct, if setlocal is called with an existing and
  correct local
- improved projectmanager method guess_local and moved it to
  common::setlocal, which takes now the charset, lang and country of the
  user into account
- csv-import also displays now the conversation done and reads usernames
  in brackets
- added some missing fields
2009-04-03 12:26:32 +00:00
Klaus Leithoff
b8601d92d7 njv: phpgwapi/groupdav work to improve groupdav compatibility and various sync proplems connected 2009-04-02 12:39:52 +00:00
Klaus Leithoff
27891f2803 making sure rows is an array in id2path 2009-04-02 10:18:05 +00:00
Klaus Leithoff
dd5376c41f making the charset param optional, with preset to utf-8 in decodeMailHandler 2009-04-02 08:15:50 +00:00
Klaus Leithoff
1092f3213e move decode header functionality from FeLaMiMail to phpgwapi/translation to be available for other applications 2009-04-01 15:20:32 +00:00
Ralf Becker
b1f0863d81 A scheme is not allowed to contain an underscore, but allows a dot and a
class names only allow or need underscores, but no dots
--> we replace dots in scheme with underscored to get the class-name
2009-04-01 14:08:20 +00:00
Ralf Becker
039cf26d22 "- replaced self::SCHEME.'://default' with self::PREFIX
- added log calls to mount and umount
- fixed not working remount of a path with a different url (returned true but did not changed the fstab)"
2009-04-01 14:06:50 +00:00
Ralf Becker
923c98f079 "imporved array2string to give a type-specific output (eg. TRUE or FALSE for boolean)" 2009-04-01 09:32:35 +00:00
Ralf Becker
8f7f89666f New options for filesystme stream-wrapper:
- 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
2009-03-31 11:30:12 +00:00
Ralf Becker
637b6557fb "- symlinkCache_resolve failed on other mounted dir (eg. from the filesystem stream-wrapper), as it removed the scheme
--> now done only for vfs scheme
- quitened readlink to not complain if backend does not support links"
2009-03-31 08:43:12 +00:00
Ralf Becker
b93a450394 "- added more licenses with urls (LGPL, PHP, GPL3)
- fixed not displayed information, if setup info is in an other apps setup file (eg. GroupDAV or Website)
- added support different navbar icon name"
2009-03-30 14:06:39 +00:00
Ralf Becker
873ee33dc7 "- fixed not working symlinks to other symlinks
- added a symlink cache (only per request) to cut down db accesses"
2009-03-30 11:18:58 +00:00
Ralf Becker
d006ef24f9 "as PDO allows to use named params without colon prefix, switched to that, as it's close to the way we use our own db class" 2009-03-30 11:17:30 +00:00
Ralf Becker
b976659346 "removed unnecessary ambersand in url creation, if no extravars" 2009-03-30 08:17:28 +00:00
Ralf Becker
7f9aace528 "- sqlfs is now fully case-sensitiv (before it was partly case-insensitiv)
- symlinks are now read by url_stat and dir_opendir and stored in the stat cache, to minimize DB accesses
- negative url_stat calles (not found) are now stored in the stat cache too, to minimize DB access
- added new log level 3, which adds method-name and line number to the sql statements"
2009-03-27 19:10:16 +00:00
Ralf Becker
881225849d "fixed not shown comments and other properties, if path contained a symlink" 2009-03-27 19:03:29 +00:00
Ralf Becker
9e8ef4d851 "some permanent logging (switched off by default) and only running chown, chgrp, chmod if mkdir succeeds" 2009-03-27 18:05:42 +00:00
Ralf Becker
b54d0dab25 "fixed invinit recursion (causing a segfault) when trying to create a home directory" 2009-03-27 17:39:37 +00:00
Ralf Becker
3b0f5e5ab2 PDO compatibilty function fetchSingle() was renamed in PDO to
fetchColumn($column_num=0): now both are available in ADOdb, thought
fetchSingle is depricated and should no longer be used!
2009-03-25 09:03:36 +00:00
Ralf Becker
cc9d7445c3 "fix concat to allow filenames containing \"..\"" 2009-03-24 17:19:38 +00:00
Ralf Becker
5501dd0fc3 "fixed some problem with the new symlinks (specially between different stream-wrappers) and added a permanent loggin facility" 2009-03-24 13:58:01 +00:00
Ralf Becker
e966c73feb "make profind and get_eacl fail silent, if backend does not support them" 2009-03-24 13:56:22 +00:00
Ralf Becker
55d2aaa3ee Implemented symlinks for eGW's VFS:
- 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 :-)
2009-03-19 20:12:35 +00:00
Ralf Becker
97126e417f Make all methods of common class static, to allow an easiert use.
eg: $owner_label = common::grab_owner_name($uid);
2009-03-16 12:49:31 +00:00
Ralf Becker
01e2e1fa72 "removed extension of the accounts class, which is not used since r24948" 2009-03-13 12:55:40 +00:00
Ralf Becker
efb3189b49 "fixed CreateObject to not suppress the error, if it cant find a class file or there are eg. syntax errors in it
--> now you can find the error in the error_log and dont get only a blank page
(also optimized it so far, that we first try to autoload the class and use the diverse \"magic\" only if that fails)"
2009-03-13 12:47:53 +00:00
Klaus Leithoff
1f8068eb52 dont use the titlecache if id is an array 2009-03-06 12:28:39 +00:00
Ralf Becker
dd41d422e9 "fixing high minimize memory usage (important for huge number of accounts)" 2009-03-05 15:17:45 +00:00
Ralf Becker
b413a39b49 "some more compatibility stuff (table-name as variable)" 2009-02-25 14:35:43 +00:00
Ralf Becker
8ff2025051 "resetting array pointer for old code relying on it" 2009-02-25 12:59:28 +00:00
Ralf Becker
bdcb10ea2d Enable etemplate to mark rows of a grid / table as part of the header or
footer to repeat them on each printed page.
2009-02-23 13:21:28 +00:00
Klaus Leithoff
f62eccd9a7 fixing a problem regarding the passing on of the charset information, as some clients get confused if there is a blank between the word charset and the equual sign. 2009-02-09 15:17:26 +00:00
Klaus Leithoff
be859fa1f6 fixing various webdav problems, regarding pathbuilding 2009-01-29 18:58:52 +00:00
Nathan Gray
c2ca3760b7 Work around bug in Safari (OS X) Version 3.2.1 (5525.27.1) on multi-domain sites 2009-01-27 18:31:28 +00:00
Klaus Leithoff
87247b6ca4 adding some debug and have it commented out to research the issue in tracker #1876 (Timesheet, in detail view, not shows link to the owner project) 2009-01-27 15:14:56 +00:00
Klaus Leithoff
d330fe9934 bugfix for typo in class-var 2009-01-13 11:41:56 +00:00
Ralf Becker
a40b1c6bfb Reworked the categories class to query all cats from the database once
per session and then operate on that cache.
This deliminates ~25 database queries for each sitemgr page.

Test carefully before applying this to a production sytem!
2008-12-17 20:05:19 +00:00
Klaus Leithoff
76faf17eb0 strange phenomenon with existing debug variable 2008-12-09 15:25:26 +00:00
Klaus Leithoff
0ec64072a2 enabling more info FOR THE ERROR_LOG 2008-12-09 14:02:22 +00:00
Klaus Leithoff
5cf2da77fa directing debug to error_log 2008-12-09 14:02:17 +00:00
Klaus Leithoff
80c3da850d enable debug for send class to be passed to phpmailer/smtp 2008-12-09 14:02:13 +00:00
Klaus Leithoff
91c5e6d23c print out the standard substitutes, if debug is switched on 2008-12-09 13:07:29 +00:00
Klaus Leithoff
f28eed1973 enabling debug in some cases, switched off, as default 2008-12-09 12:59:03 +00:00
Klaus Leithoff
e025a14a08 putting some debug into the send class to find problems more easily 2008-12-05 10:26:07 +00:00
Ralf Becker
1eb956fdf5 "- do not send session data for clients doing no sessions to memcached
- use 10min session lifetime for GroupDAV as for anonymous sessions"
2008-11-25 19:36:02 +00:00
Ralf Becker
6f442ea296 "check if we really need to convert the charset, as it's not perfect and can do some damage" 2008-11-23 13:08:06 +00:00
Ralf Becker
0123dc5d89 "dont log failed login attempts for the anon user, as it is a simple dos to sitemgr" 2008-11-22 08:14:59 +00:00
Ralf Becker
92c5157b90 add grant host to db creation 2008-11-18 19:58:11 +00:00
Ralf Becker
8dcc91a390 typos and missing file 2008-11-16 15:36:37 +00:00
Ralf Becker
1baa158195 Big SyncML patch from Philip Herbert <pherbert(at)knauber.de>:
- change the processing of slowsync, to use the content_map instead of
  trying to build a new one. This caused duplication issues on the
  client if multiple similar records where stored, because only the first
  one found in the server-db was matched, These duplicate entries at client
  side had no entry at serverside, so deleting the wrong one
  on the client (the content with a valid map entry) could cause
  unwanted data loss at server side, because it is impossible for the
  user to see what is a duplicate, and what is not.

see also: 
http://www.nabble.com/again---syncml-duplication-issue-to20333619s3741.html

- reenabled UID from syncml clients, because it was partly used this caused
  issues during SlowSync if the content was changed. 

- infolog, calendar if a uid is found in the provided data, allway try to
  find the corresponding content first   using only the UID, instead of
  using the content-id taken from content_map.

also fixed:

- a few fixes in ./notes
- creating an entry on the client that can not be imported,
  (Example, Nokia E Series Appointment without a Title)
  will no longer create an invalid content-map entry
  However, at client side this is still counted in the Protocol as
  Server-Add
2008-11-16 10:42:29 +00:00
Ralf Becker
fde8fc7b27 CAS (Central Authentication Service) login for eGroupware 2008-11-15 10:54:39 +00:00
Ralf Becker
04502ddc97 "fixed displayname property to contain just the basename of the file/dir, as davfs displays this (funny names if there's a full path) as pointed out by Hans Jürgen on the devel list" 2008-11-15 07:46:59 +00:00
Ralf Becker
ee623e72d3 "made some permanent error_logs configurable" 2008-11-15 07:40:25 +00:00
Ralf Becker
505fe07669 "function to analyse memory usage in the session" 2008-11-13 16:57:16 +00:00
Ralf Becker
59aa84f761 "switch logging to 2 (only errors) again" 2008-11-13 06:35:18 +00:00
Ralf Becker
f0a4de499b "fix for boolean options" 2008-11-12 18:40:10 +00:00
Ralf Becker
a658d7c8ed Store config_user&_passwd of domain as hash, to be able to use them
inside eGW (without having them in cleartext available)
2008-11-09 16:15:42 +00:00
Ralf Becker
9d9bd270a2 "- fix for bug #1817: file in a searchable directory was always readable
- changed chgrp and chmod, to allow admins to modify files/dirs owned by root"
2008-11-09 16:10:36 +00:00
Ralf Becker
43f860ba8f Reworked GroupDAV and iCal/vCard handler to set 'GroupDAV' as product
manufacturer and the recogniced GroupDAV client as product name.
This way we are able to handle different GroupDAV clients, as we
allready do with different SyncML clients.
Also removed the no longer needed code enabling the use of the real UID, 
as SyncML does no longer misuse the UID for it's GUID.
2008-11-03 09:36:20 +00:00
Ralf Becker
71edd1c938 Big patch from Philip Herbert (Knauber) modifying the SyncML code to no
longer use GUIDs containing eGW's install_id, as the information is
irrellevant for SyncML and cause doublications of entries if the
install_id changes.
I plan to have a new rc4 Wednesday or Thursday containing these changes.
2008-11-03 07:44:02 +00:00
Ralf Becker
9f3d5f4b4c "longtext need to be handled like text" 2008-11-02 09:46:42 +00:00
Ralf Becker
9689e1b822 "fix fatal error in SyncML, reported by Philip Herbert from Knauber" 2008-10-30 06:51:14 +00:00
Ralf Becker
e3efd9ce22 "removed unneccesary cloning of the db object by
- adding the application ('syncml')
- replacing next_record()/f() with fetch()/fetchSingle() or looping over the result object
Thanks to Philip Herbert from Knauber for testing it"
2008-10-29 07:41:02 +00:00
Ralf Becker
ba5d176520 "fix for bug #1796: Various config values not stored
now only unset or empty strings are not stored, but 0 is"
2008-10-27 15:11:15 +00:00
Ralf Becker
814eb013f1 Allow HTTP basic auth user to contain a domain to switch instances, as
it's done in the webgui login (for WebDAV or GroupDAV)
2008-10-26 12:18:57 +00:00
Ralf Becker
fa73ad5339 Improved exception handling:
- exceptions get now always logged to the error_log
- in the webgui it's now configurable, if the message contains a
  stacktrace (incl. function arguments) - default no (security)
- command line interfaces get detected and contain no html anymore
- webdav and groupdav send the exceptions as basic auth realms to the
  client
- webdav and groupdav login failures contain the reason as part of the
  basic auth realm
2008-10-26 12:13:01 +00:00
Ralf Becker
6764a6ec24 "removed html tag from exception message, as they should work independent of the web gui" 2008-10-26 11:05:30 +00:00
Ralf Becker
59b4f49e58 fixed errors in creating the home dirs of standard groups in sqlfs during setup 2008-10-26 07:37:37 +00:00
Ralf Becker
4694b6e917 "prevent fatal error if only egw_minimal is instanciated in $GLOBALS[egw], eg. setup" 2008-10-26 07:34:21 +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
ff16b360f0 "using exceptins (instead of depricated egw_db::hold_on_error attribute) to deal with not set up eGW" 2008-10-25 05:43:59 +00:00
Ralf Becker
9ba17c163c "documentations update on how to use exceptions instead of depricated hald_on_error attribute" 2008-10-25 05:36:25 +00:00
Nathan Gray
01e04e6fc3 Make sure redirect gets sent, in case something fails in the shutdown 2008-10-24 18:39:30 +00:00
Klaus Leithoff
deb6edda9b behave more gracious if database tables are not existing, or outdated. Otherwise we chrashed completely with a invalid SQL Statement (Table
does not exist), without further info/adwise for the user/admin.
2008-10-23 08:31:51 +00:00
Klaus Leithoff
859e1206e4 preparation to use senderinformation specified with the smtpusername if set (appended to the username in the orm of:
smtpusername;mailadress@thatisownedbysmtpusername.com)
2008-10-21 11:57:52 +00:00
Ralf Becker
e54f9ee079 Fixed encoding problems in WebDAV and vfs:
- egw_vfs::download_url as not encoding + or ' ' in pathes
- HTTP_WebDAV_Server was urldecoding $_SERVER[PATH_INFO], which is
  wrong, as it is NOT encoded
- HTTP_WebDAV_Server was NOT urlencoding the pathes in PROPFIND
  responses, causing eg. cadaver not to be able to use dirs containing
  + or space
2008-10-21 11:57:26 +00:00
Ralf Becker
375c328453 Fixed bug pointed out by lluis <lluis.faja-at-gmail.com>:
sqlfs stores files with fs_id < 100 directly under /sqlfs in the files
dir. They conflict with directories created for fs_id >= 1000.
--> fs_id < 100 are now in a directory /sqlfs/00
You need to run the 1.5.016 update or you will not find the content of
files with fs_id < 100 anymore!
2008-10-21 07:08:12 +00:00
Ralf Becker
44c3c3f75a "removed permanent error_log() in set_cache" 2008-10-20 14:52:01 +00:00
Ralf Becker
c635c11f32 "fixed not working file upload after my commit from sunday: vfs & stream-wrapper use posix rights, egw_link::file_access uses EGW_ACL_{EDIT|READ}!" 2008-10-20 14:51:19 +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
abc26d61ee "fixed error introduced with postgres fix from this morning, sorry ;-)
"
2008-10-15 10:02:30 +00:00
Ralf Becker
303699d341 "fix for postgres problem reported by peter goerzen
"
2008-10-15 06:00:38 +00:00
Ralf Becker
2e66d3b093 "use a default for the host in resolve_url, as we otherwise get an invalid url (scheme:///path/to/something)!
"
2008-10-14 14:57:35 +00:00
Ralf Becker
60b85adcbc "reworked _get_css debug message:
- was given if no css function as defined (correct use)
- explain a bit more what's wrong"
2008-10-13 18:23:02 +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
9b4e06c998 "fixed stream open mode 'rb' was treated as a write mode: now 'b'=binary is ignored, as all operations are binary" 2008-10-10 17:00:03 +00:00
Ralf Becker
5322acf455 "fixed type causing sitemgr reloads to fail: PHP Fatal error: The script tried to execute a method or access a property of an incomplete object." 2008-10-10 13:11:37 +00:00
Klaus Leithoff
900ee97db1 adding error_log info about _get_css -> deprecated functionality related to the setting of the GLOBALS Array on CreateObject in
phpgwapi/inc/common_functions.inc.php which is no longer supported.
2008-10-10 09:19:21 +00:00
Ralf Becker
71063707a4 "found and fixed the real cause, appsession got called after session was commited (and therefore encrypted), these calles get now silently ignored" 2008-10-09 12:24:41 +00:00
Ralf Becker
8edc407e4d "quitent error_log from commit_session" 2008-10-09 12:12:48 +00:00
Ralf Becker
d9c93f845d "hopefully last fix for session encryption:
- flag in session if it is encrypted to prevent calling the encryption more then once, which stalls the session-content
- egw_session::session_comit() method calls now encrypt() too, as it closes the session, before the destructor is called
- hack to fix PHP Fatal error: Cannot use string offset as an array, which happens sometime in felamimail under php5.2
- some more docu"
2008-10-09 11:55:09 +00:00
Ralf Becker
d7f5835422 "fixed problem with lost password in session, when using session encryption" 2008-10-09 09:54:24 +00:00
Ralf Becker
2349c28fa8 phpgw --> egw 2008-10-08 18:40:01 +00:00
Ralf Becker
94da0682cd re-added session encryption:
- it now also encrypts the egw object and egw_info array, stored in the session
- it no longer encrypts every egw_session::appsession() call, but the
  whole array at once when the egw_session object gets destroyed
- mcrypt algo and mode are currently hardcoded to tripledes and ecb, as
  we dont have the database connection, when they are needed. You can
  add it as egw_info[server][mcrypt_{algo|mode}] in the header.inc.php
- fixed a bug, which let the session grow around 400k(!) each request
- if mcrypt or the selected algo/mode is not availible the session
  encryption is switched off automatic, but an error is logged
2008-10-08 18:38:30 +00:00
Klaus Leithoff
8f6cf0ac8f quitening warnings, if charset is unknown (mb_convert_encoding), as it may happen, with parts of emails (header information, ...) 2008-10-08 11:18:43 +00:00
Ralf Becker
d60d8376e1 - classnames according to new naming schema
- file_access method
- updated version and dependencies for 1.6
2008-10-07 17:57:50 +00:00
Ralf Becker
9bca7a7689 moved phpgw compatibility stuff into common_functions.inc.php 2008-10-07 15:50:53 +00:00
Ralf Becker
fa1996a0c9 uiinfolog --> infolog_ui 2008-10-07 12:56:18 +00:00
Ralf Becker
c3e40ade99 added an array of replacement names to ease the transition to the new class naming scheme: app_class 2008-10-07 08:51:14 +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
401c0de336 - renamed key of property value to 'val' like in HTTP_WebDAV_Server
- support for propfind and proppatch for WebDAV
2008-10-05 19:01:49 +00:00
Ralf Becker
0a7d4f9782 Comment and custom fields for filemanager / sqlfs 2008-10-05 17:07:36 +00:00
Ralf Becker
1d7f34ff62 "fs_modifier was not updated (it's currently not available, as no posix attribute, but for a dms it's quite usefully)" 2008-10-05 09:01:20 +00:00
Ralf Becker
b6a9e16bcd SQLFS (eGW's default VFS system) stores the content of the files now in
a hashed directory structure based on the fs_id and not longer on the
path (which can not be recovered, once the filesystem get's corrupt)
--> Make backups (db AND files directory), before attempting the update !!!!!!!!
2008-10-03 12:18:19 +00:00
Ralf Becker
f0c47082a2 "allways add stat array as last parameter to egw_vfs::find() callback" 2008-10-03 11:06:41 +00:00
Ralf Becker
6b1841dccb "remove eACL on rmdir also for STORE2DB" 2008-10-03 08:30:40 +00:00
Ralf Becker
dec9991bbf "icons matching only the first part of the mime type were not displayed" 2008-10-03 08:14:35 +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
7ac2a20db3 "fixed problems of egw_vfs::find with query-part in url's" 2008-10-02 11:03:26 +00:00
Ralf Becker
22a6325531 "mkdir was loosing the query-part when recursivly creating directories" 2008-10-02 11:01:28 +00:00
Ralf Becker
c38cb2da76 "an other small fix for egw_vfs::concat" 2008-10-01 18:02:23 +00:00
Ralf Becker
0baa7f22e3 "finished implementation of storing vfs/sqlfs files in the database:
- the used storage (default filesystem) can be switched via a get-parameter in the url mounted (eg. sqlfs://default/?storage=db)
- please note the current (php5.2.6) problems:
a) retriving files via streams does NOT work for PDO_mysql (bindColum(,,PDO::PARAM_LOB) does NOT work, string returned)
(there's a workaround implemented, but it requires to allocate memory for the whole file!)
b) uploading/writing files > 1M fail on PDOStatement::execute() (setting PDO::MYSQL_ATTR_MAX_BUFFER_SIZE does NOT help)
(not sure if that's a bug in PDO/PDO_mysql or an accepted limitation)
--> now we need to implement an easy switch in setup to allow admins to use the db backend (does NOT require an directory outside the docroot)
currently you need to use filemanager/cli.php mount"
2008-10-01 18:01:45 +00:00
Ralf Becker
f128866a37 "concat with query was not working if path ended in a slash" 2008-10-01 11:39:38 +00:00
Ralf Becker
396b1212ad "global stream wrapper (makes variables available as streams) is now mbstring.func_overload save" 2008-10-01 10:06:49 +00:00
Ralf Becker
e76f20f665 New stream-wrapper to mount the regular filesystem into the vfs while
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.
2008-09-30 11:52:56 +00:00
Ralf Becker
cebdeab490 "fixed notice in cron call: Undefined index: egw_unset_vars" 2008-09-29 06:55:25 +00:00
Klaus Leithoff
e4c29d36fc fix/improve the filter handling for querying all accounts, due to problems with unlimited querys, and/or large groups 2008-09-19 09:12:30 +00:00
Nathan Gray
0044736e0f - Preserve existing times when working with an existing job schedule
- Preserve values of 0 (previously set to */1)
2008-09-16 21:47:08 +00:00
Klaus Leithoff
e9fb294676 groupdav: switching of debug 2008-09-12 11:10:13 +00:00
Ralf Becker
3b5d46022d "common::email_address() dont add @domain, if not domain (mail_suffix) specified" 2008-09-11 07:48:49 +00:00
Ralf Becker
ea295a1165 not used any more 2008-08-29 16:12:10 +00:00
Ralf Becker
1fbb260ad3 not used any more 2008-08-29 16:05:04 +00:00
Klaus Leithoff
5db4d77067 use the static function randomstring instead of the egw->common object (which may not be instanciated at the time) 2008-08-29 13:34:41 +00:00
Klaus Leithoff
1d48d7d217 define/declare randomstring as static function 2008-08-29 13:31:33 +00:00
Ralf Becker
ff32c498c6 "read handler need to return '' (empty string) for a not found session!" 2008-08-29 13:29:57 +00:00
Klaus Leithoff
755ba2245c after session_destroy, we need to (re-)load the eGW session-handler, as session_destroy unloads custom session-handlers 2008-08-29 13:00:18 +00:00
Klaus Leithoff
fbffb3baca fixed a bug that came with the new session handling, since session save and session restore cant handle objects, we have to serialize them first
and unserialize them on retrieval.
2008-08-29 12:43:30 +00:00
Klaus Leithoff
b2ae4fe5c7 fixed a typo that prevented the ldap creation and modification timestamps to show in accounts listview 2008-08-21 07:31:34 +00:00
Ralf Becker
e433a67c7a "only allow valid order criteria" 2008-08-21 05:56:46 +00:00
Ralf Becker
0f2b4d7914 "fixed bug reported by Philip Herbert from Knauber: error when killing a session" 2008-08-20 14:55:53 +00:00
Ralf Becker
c475f86147 - get session list for session.save_handler='files' working again
- sessions are sorted by default with session_dla DESC (newest updated
  sessions first)
2008-08-19 11:54:35 +00:00
Ralf Becker
a18f6d1b85 "Fixed problem reported by Uwe on the German list: SyncML is no longer working" 2008-08-19 05:43:57 +00:00
Ralf Becker
96f19c6290 "allways use init_session_handler function (not only for php5.1)" 2008-08-18 13:44:48 +00:00
Ralf Becker
630b81235e "- try loading memcache extension, if not loaded
- allways use init_session_handler function (not only for php5.1)"
2008-08-18 13:43:51 +00:00
Ralf Becker
9d2016ebf6 - php5 static and protected for egw_framework
- new feature allowing apps to specify with index-page and icon to use
--> allows to install sitemgr-link icon without an extra application
(which was a symlink and got lost in every version upgrade)
2008-08-18 09:00:19 +00:00
Ralf Becker
ca3245043b "check if pdo extension and DB specific driver is loaded AND try loading it if not (to be consistent with checks in setup/check_install.php)" 2008-08-17 05:41:49 +00:00
Ralf Becker
7696e91011 "fix to work around an other php5.1 bug/problem: class methods seem not be able to call session_set_save_handler
It returns false and the session_handler is not changed. It's working in php5.2 (at least on my OpenSUSE 11.0 with php5.2.6)"
2008-08-16 07:58:02 +00:00
Ralf Becker
11b1ce5bb1 "fix to work around an other php5.1 bug/problem: class methods seem not be able to call session_set_save_handler
It returns false and the session_handler is not changed. It's working in php5.2 (at least on my OpenSUSE 11.0 with php5.2.6)"
2008-08-16 07:52:59 +00:00
Ralf Becker
3090f728d6 session_list & session_count have to be public static 2008-08-16 06:04:18 +00:00
Ralf Becker
ab01e4d818 "dont let php's session handle set the session-cookie" 2008-08-16 06:03:10 +00:00
Ralf Becker
93e98f3e1a "egw_session::create(): generate new session-id, if not running SyncML (were is already happend in the Horde code)" 2008-08-16 06:00:34 +00:00
Ralf Becker
1fcb14b03c "- test if $GLOBALS[HTTP_(GET|POST)_VARS] is set to prevent warning
- removed php4 clone function, as we require now php5.1+"
2008-08-16 05:58:33 +00:00
Ralf Becker
61df6f2a15 fixed bug reported by Martin Kramer on the German list 2008-08-15 14:37:34 +00:00
Ralf Becker
04ddf51d90 "fixed typo causing session list to contain all sessions" 2008-08-14 12:29:39 +00:00
Ralf Becker
b63928d7f0 "fixed problem reported on some installs with api >= r25860:
PHP Fatal error:  egw_db::connect(): The script tried to execute a method or access a property of an incomplete object ...
Problem was that session restore is now used regardless if it's explicitly switched on, egw_db::connect() only registered the required class, if it was explicitly switched on. Therefore it worked everywhere, where session restore was configured before, but failed everyone not used it before ;-)"
2008-08-13 05:20:23 +00:00
Ralf Becker
db577d0330 "suppress debug message on session destroy" 2008-08-12 15:36:10 +00:00
Ralf Becker
7888b3f616 "fixed some typos" 2008-08-12 09:01:01 +00:00
Ralf Becker
48060983f2 "changes requested by Vietnamese translator nhatnamnv(at)gmail.com: short day-names can now be constructed (additionally) by separate translation of the 3-char english shortcut. You can still use the translation of the long name with the number of chars to use for your language." 2008-08-12 05:15:59 +00:00
Klaus Leithoff
871116b6e1 if you pass the style to htmlarea, and the htmlarea is available, then style is used as switch for the fck editor-mode. If not passed extended is
used as default.
2008-08-11 09:28:37 +00:00
Ralf Becker
8860cf8ea7 "list_sessions --> session_list" 2008-08-09 06:26:32 +00:00
Ralf Becker
666e6793a7 "added empty method delete_cache, as it get's called in some places - thought it does nothing" 2008-08-09 04:24:54 +00:00
Ralf Becker
1dcce48a46 "fixed typo causing posted froms to fail" 2008-08-08 06:32:16 +00:00
Ralf Becker
e50bd2e966 "re-added copyright and author of the old phpgwapi/inc/class.sessions(_php4).inc.php, I missed last night" 2008-08-08 06:02:45 +00:00
Ralf Becker
88827a3f3d using new egw_session::init_handler() 2008-08-07 21:14:00 +00:00
Ralf Becker
907e24d227 Refractured session handling in eGW:
- DONT UPDATE ON A PROCUDTION SYSTEM (for the next few days)!
- eGW support from now on only php session handling
- custom session handlers (like the memcache one) can now be
  implemented as classes and dont need to change any other code
- the class get's autoloaded and the name need to be configured 
  eg. in the header.inc.php as $egw_info[server][session_handler]
- session restore is now enabled by default (it's way faster and
  works well with php5.1+)
- a db-bases session handler follows soon
2008-08-07 21:12:44 +00:00
Ralf Becker
e568a02b2e new constructor, which can be passed the connection-data as an array 2008-08-07 20:38:57 +00:00
Ralf Becker
4db172a6c2 - dont update the session dla, for the xajax notifications query, as it
stops sessions from timing out
- hook to be called when sessions get terminated
2008-08-05 11:36:06 +00:00
Ralf Becker
7ce97ba699 - .ics extension for todos and events
- new GroupDAV v2 component-set attribute for collections
- getlastmodified & getcontentlength properties for infolog propfind
- fixed propfind on a single infolog entry to return just that entry
- getcontenttype of vevent and vtodo collection returns extra component
2008-08-04 19:08:09 +00:00
Ralf Becker
49f86c41c3 PHPGW_SERVER_ROOT/phpgwapi/inc --> EGW_API_INC 2008-08-04 10:59:06 +00:00
Klaus Leithoff
cb8cd0f3e6 when having multiple lines descriptions in contacts or calendar, these are not correctly encoded in vcard.
The problem seems to be line [784] of trunk/phpgwapi/inc/horde/Horde/iCalendar.php
$value = str_replace($this->_newline, '\n', $value);
When removing this line, the description value is correct on the client.

I could not find any sideffects during my tests, if some clients have
problems with this, I assume this would then have to be fixed at a higher
level, because the current state with this line just causes broken output.

From wikipedia regarding Linebreaks in QuotedPrintable:
If the data being encoded contains meaningful line breaks, they must be encoded as an ASCII CR LF sequence, not as their original byte values

Vcard extract without the reported line code:
DESCRIPTION;ENCODING=QUOTED-PRINTABLE:Desc 1=0D=0ADesk 2=0D=0A=0D=0A

Vcard extract with the reported line of code
DESCRIPTION;ENCODING=QUOTED-PRINTABLE:Desc 1\nDesk 2\n\n

pointed out by Philip Herbert. Carl Knauber Holding GmbH & Co KG
2008-08-04 08:42:19 +00:00
Klaus Leithoff
16cb2097fc Some Devices (Nokia S60) ignore the entire vcard, if the vcard contains
formal error.

This breaks sync for single contacts from egw to client.
example: photo in addressbook without blank line after the property value.
This way the devices are not compliant with RFC2426 (Vcard Version 3)
5. Differences From vCard v2.1
[...]
. Inline binary content must be "B" encoded and folded. A blank
line after the encoded binary content is no longer required.
[...]
This was pointed out by Philip Herbert. Carl Knauber Holding GmbH & Co KG
2008-08-04 08:18:49 +00:00
Ralf Becker
d90ce31491 hook to intercept session creation 2008-07-30 13:29:19 +00:00
Ralf Becker
ac38fe77ff "fixed problem of under some conditions not loaded adodb classes for php4-restore" 2008-07-29 12:13:07 +00:00
Ralf Becker
5b705e6bc6 fixed bugs report by Frank Becker on the german list and some more I
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
2008-07-27 18:58:41 +00:00
Ralf Becker
b40382df80 exception handler for xajax and ability to use static methods as ajax callbacks eg. filemanager_ui::ajax_check_something 2008-07-27 12:48:39 +00:00
Klaus Leithoff
42e4f1facd egw_async: handling the ##last-check-run## problem during restore. The line will be skipped. 2008-07-25 09:37:15 +00:00
Klaus Leithoff
832d65ab70 fix for a PHP Warning: preg_split() [<a href='function.preg-split'>function.preg-split</a>]: Compilation failed: nothing to repeat at offset 14 in
phpgwapi/inc/class.egw_index.inc.php on line 183
not sure why it occurs, but the fix works around it and seems not to break anything
2008-07-24 12:56:11 +00:00
Stefan Becker
1999c90df4 "fix for JScalendar, to bei schown, under under the Menupoint \" Grant Access\"" 2008-07-23 13:59:16 +00:00
Stefan Becker
1569576645 "Patch for IE 6/7 checking if the Calendar Element is loaded" 2008-07-22 14:04:23 +00:00
Stefan Becker
8727151c9a PNG Bugfix for IE 6 is working on IE 7 (browsercheck) 2008-07-21 14:40:54 +00:00
Ralf Becker
16c5ce05ac fixed "There's NO ADOdb object!" error in DB backup/restore via
setup-cli.php
2008-07-21 09:40:58 +00:00
Ralf Becker
95d15246b5 fixed not working SyncML, if NTLM auth is enabled: now both working together 2008-07-17 06:55:47 +00:00
Ralf Becker
9374ade6f5 "reverted SyncML part of my NTLM commit from yesterday, as it breaks SyncML: session::verify() is necessary to restore the eGW session (it's NOT used to verify the session)" 2008-07-17 05:51:46 +00:00
Ralf Becker
b5c28fba48 1. NTLM Single Sign ON
NTLM SSO removes Windows users on a PC, which is a member of a Windows
domain and who are logged into that domain, from the need to explicitly log
into eGW.  They simply point IE to the eGW URL (eg. http://domain.com/egroupware/)
and start working. They can of cause explicitly log out and log in as an
other user.
For more information look at the README at
http://www.egroupware.org/viewvc/trunk/phpgwapi/ntml/README

2. different authentication for SyncML and/or GroupDAV
You can now use eg. an external auth provider for the login via the
WebGUI (eg. ADS) and the passwords stored in SQL for SyncML.
2008-07-16 09:29:13 +00:00
Ralf Becker
5477c71045 "silenced autoloaded class ..." 2008-07-15 06:48:59 +00:00
Klaus Leithoff
9dfa6f6d4c Since having problems with the new phpmailers EncodeQP function and its Char and Line/WordWrap Handling, I reintroduce the functionality of the old
class.
2008-07-08 08:38:56 +00:00
Ralf Becker
510f9baf94 "KAddressbook still has problem with self URL in propfind of /addressbook/ collection contains GroupDAV resourcetype, disabling it only for KAddressbook " 2008-07-08 05:52:04 +00:00
Ralf Becker
4296d0c31f dont avoid empty fields, as some are required by vCard, eg. FN 2008-07-04 11:22:25 +00:00
Régis Leroy
b68e7f0041 missing closedir, can lead to Too many open files bugs 2008-07-02 07:57:13 +00:00
Ralf Becker
21c9e960df not the problem is fixed AND setup is still working :-) 2008-06-27 09:44:48 +00:00
Ralf Becker
e89917f860 reverting my last commit, as it breaks app update/install in setup 2008-06-27 09:40:32 +00:00
Ralf Becker
f82bdd9492 "fix for error in setup-cli: egw_minimal::__get: There's NO ADOdb object!" 2008-06-26 20:27:18 +00:00
Ralf Becker
50b5c16a5d "Streamwrapper allowing to use a global variable as stream" 2008-06-26 11:34:04 +00:00
Klaus Leithoff
ecd3948175 some improvements for the smtp class regarding TLS protocoll 2008-06-20 10:51:59 +00:00
Klaus Leithoff
88f99c5eb6 importing the new class.phpmailer.php as class.phpmailer.inc.php v2.1 for PHP5 and adapting eGroupWare specific changes 2008-06-19 16:25:23 +00:00
Klaus Leithoff
a43593c431 importing the new class.smtp.php v2.1 for PHP5 and adapting eGroupWare specific changes 2008-06-19 16:21:54 +00:00
Klaus Leithoff
e5f5feddf1 enable the use of the active mailprofile (if set) 2008-06-19 11:44:31 +00:00
Ralf Becker
bdf7f84a23 fix for bug #1261: PostgreSQL: eGW ignores setting to dont care about case sensitive usernames 2008-06-07 08:25:28 +00:00
Ralf Becker
70e540d71b constants for the capabilities array, easier lookup in IDEs, table name aliaes to eg. move some tables to other databases 2008-06-07 08:24:18 +00:00
Ralf Becker
4edd90a8bf "removed php < 5.1 fallback function" 2008-06-05 07:42:21 +00:00
Klaus Leithoff
b0fe8d229e -patch by Jon Crawford to enable ssl connections for smtp
(phpgwapi/inc/class.phpmailer.inc.php )
 example: hostname: ssl://smtp.servername.country
	  port: 465
2008-06-03 09:30:44 +00:00
Ralf Becker
a5a7c2d30e Additional password crypt types for ldap:
- MD5_CRYPT (9 char salt prefixed with $1$)
- BLOWFISH_CRYPT (16 char salt prefixed with $2$)
- EXT_CRYPT (9 char salt, no prefix)
2008-05-31 06:25:04 +00:00
Ralf Becker
45f895d048 "use static html methods" 2008-05-31 06:03:34 +00:00
Ralf Becker
bb08afcc9f "API change caused already-obsoleted call to sessions_::create() to fail.
Thanks to Peter Goerzen <pgoerzen(at)hustlerturf.com>"
2008-05-31 05:47:26 +00:00
Ralf Becker
e2b84e8c32 dont try oids for new postgres versions 2008-05-30 07:08:19 +00:00
Ralf Becker
2d1b53b835 "using standard md5() instead of hash('md5',...), as it's only a pecl extension" 2008-05-27 20:02:56 +00:00
Stefan Becker
aa4e4be631 "add Country Code for Montenegro and Servibia" 2008-05-27 11:28:00 +00:00
Ralf Becker
ae044a9a08 allow to instanciate the historylog with a given user or 0 for
changes by the system itself (eg. async service). bo_tracking passes on
it's user param of the constructor.
2008-05-27 09:25:25 +00:00
Ralf Becker
62ca85a1b8 "phpdoc file header and __constuct()" 2008-05-24 06:59:35 +00:00
Ralf Becker
17b8868698 "shorten index names longer or equal to 64 chars for all db types" 2008-05-24 06:37:19 +00:00
Ralf Becker
f7bb40b8a4 "docu und todo update" 2008-05-20 05:16:49 +00:00
Ralf Becker
9f30e824b0 enforce a certain strength of uid, as some clients set quite weak ones) 2008-05-20 04:59:26 +00:00
Ralf Becker
3f6d4f41c2 "- call_user_func requires php5.2 and we want to be php5.1 compatible
- also allowing handler to not define an extra_properties method"
2008-05-18 19:16:33 +00:00
Ralf Becker
a659e4eb6b propagate base_uri and debug level to handlers 2008-05-17 12:54:26 +00:00
Ralf Becker
9008414fff "- array2string() to format arrays (or objects) as string, eg. for error_log()
- allow apps to specify their own autoload handler, only tried after the standard one does not find the class"
2008-05-17 07:34:16 +00:00
Ralf Becker
dfc7176959 "- correct handling of depth: 0 in /
- initialise $files['files'] = array() to quiten some warning if propfind returns nothing"
2008-05-17 07:05:57 +00:00
Ralf Becker
6d37a25089 "returning the supportedlock property causes Windows DAV provider and Konqueror to not longer work" 2008-05-13 13:13:38 +00:00
Ralf Becker
fe054923e6 "REALM constant" 2008-05-13 08:34:19 +00:00
Ralf Becker
dd787255fb "fixed bug in webdav upload, found by skyfredox(at)hotmail.com" 2008-05-13 05:50:11 +00:00
Ralf Becker
48352f6963 "dont return mountpoints (like eg. /apps) twice" 2008-05-10 21:47:16 +00:00
Ralf Becker
5cfc38b4f6 moved webdav handler in the root dir, as its now a general service and not only used by filemanager 2008-05-10 21:15:46 +00:00
Ralf Becker
f0f056420f "return only the self URL for propfind on app folder with depth 0" 2008-05-10 20:32:03 +00:00
Ralf Becker
0afb2d0324 pricipals and groups collection for WebDAV Acl, to improve support for Apple iCal, you can now use http://domain.com/egroupware/groupdav.php/pricipals/username as account-url in iCal 2008-05-10 20:15:02 +00:00
Ralf Becker
496f8b9c1a "extra param to session::create() to not create a session, eg. for GroupDAV clients know to not support cookies, eg. Apple's iCal" 2008-05-10 20:04:37 +00:00
Ralf Becker
6d274a7aca "switching of error_log in _parseDateTime()" 2008-05-10 19:00:31 +00:00
Ralf Becker
4885518b88 autoloading of addressbook classes 2008-05-10 12:06:15 +00:00
Ralf Becker
6587e340fc Some modifications required by CalDAV 2008-05-08 20:33:09 +00:00
Ralf Becker
d2e9143213 First version of new CalDav/CardDAV/GroupDAV access for calendar and
addressbook (infolog will follow).
CalDAV is tested so far with lightning 0.8 and Apple's iCal. Please note
that both distinguish between iCalServer and CalDAV!
The URL is currently http://domain.com/egroupware/groupdav.php/calendar/
2008-05-08 20:31:32 +00:00
Ralf Becker
3a5b24dfda "fixed bug reported by matsie(at)terra.es: fatal error on ical export in calendar:
was cased by browser/inc/class.browser.inc.php having top priority in autoloading, which was never intended"
2008-05-06 05:57:21 +00:00
Ralf Becker
f6a883713f locking for eGW's WebDAV (and later on CalDAV).
no recursive (depth infinit) locks atm.
2008-05-01 11:44:55 +00:00
Ralf Becker
9df4251058 "- fixed bug introduced with r25260: connection charset for PDO connection was not longer set, causing utf8 filenames written to mysql, which thinks we are talking latin1 (mysql default)
- also fixed wrong DSN for mysqlt"
2008-04-30 19:00:14 +00:00
Ralf Becker
a3a7503c0f "new static hook methods (class::method) are navitvly supported from php5.2.3+ on, so we need to add some compatibility for our required php5.1
"
2008-04-27 11:55:11 +00:00
Ralf Becker
4ecce4f5ae allow all php callables (eg. "class::method" for static calls) for ExecMethod, ExecMethod2 and as methodstring for hooks 2008-04-25 18:54:06 +00:00
Ralf Becker
a8b924696f removed some depricated and as far as I know nowhere used methods and make many functions static 2008-04-25 18:52:33 +00:00
Ralf Becker
46325b070c fixed fatal error happening on some installs when deleting a dir in sqlfs 2008-04-24 15:19:42 +00:00
Ralf Becker
92c1bf9bfa "also check if the required classes are set for the session restore, fixes a problem with groupdav" 2008-04-22 10:11:49 +00:00
Ralf Becker
80367bb943 removed not longer used old vfs classes and the first stream_wrapper (oldvfs://), I have not yet droped the vfs table, to give the update script more testing with the change to restore 2008-04-21 17:38:39 +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
1eb9acec27 enable sqlfs_stream_wrapper to run under setup 2008-04-21 15:37:11 +00:00
Ralf Becker
cf4cd2aa3f restore current egw_vfs::$is_root and egw_vfs::$user 2008-04-21 15:36:30 +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
2a1d86911b allow to call download url with an vfs-url instead of an path 2008-04-21 11:05:34 +00:00
Ralf Becker
a5b58e57e8 "allow to use link, redirect, redirect_link, invalidate_session_cache static" 2008-04-20 19:31:51 +00:00
Ralf Becker
689ffe18a9 create sqlfs dirs /, /home, /app and removed old vfs entries 2008-04-20 16:44:04 +00:00
Ralf Becker
523997b43e moved filescenter vfs2 tables and classes to filescenter and added index tables 2008-04-20 16:34:16 +00:00
Ralf Becker
b08b584a76 silently add home dirs, if they dont exist (they get now created by a hook, when a user/group get added 2008-04-19 09:46:58 +00:00
Ralf Becker
2a62e73df1 added required params, to suppress warnings 2008-04-19 09:46:02 +00:00
Ralf Becker
9fe5314ed6 fixed not working removal of home dirs, if acocunt/group get deleted 2008-04-19 09:15:46 +00:00
Ralf Becker
24989686df implemented moving of data to an other account on deleting an account 2008-04-19 09:14:59 +00:00
Ralf Becker
13cf2edabb use default fstab, also for an empty one 2008-04-19 09:13:50 +00:00
Ralf Becker
40f32b5d74 "function_backtrace:
- dont output first function param for unserialize()
- limit output of function param to 64 chars"
2008-04-18 14:59:59 +00:00
Ralf Becker
c60b632541 "small fix for webdav running on a non apache server" 2008-04-18 10:41:44 +00:00
Ralf Becker
8590b35fdf "additionally using the port for the pdo connection and remove password from stacktrace of failed connection" 2008-04-18 09:08:48 +00:00
Ralf Becker
48734de102 "additionally using the port for the pdo connection and remove password from stacktrace of failed connection" 2008-04-18 09:08:38 +00:00
Ralf Becker
b86449d359 "fixed problem of perp working with sqlfs or links (use mysqlt driver instead of stock mysql one)" 2008-04-18 08:42:11 +00:00
Ralf Becker
f3181308c5 "added quoting" 2008-04-16 11:37:47 +00:00
Ralf Becker
0a5be8a725 moved mime_icon method to egw_vfs 2008-04-16 07:07:31 +00:00
Ralf Becker
be2fa1c923 "update to fck 2.6" 2008-04-15 12:23:32 +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
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