Ralf Becker
5b3d0c3ca2
fixed behavior of GET or HEAD with If-None-Match returning "304 Not Modified" instead of "412 Precondition Failed", if no If-Match header given
2011-10-08 18:27:02 +00:00
Ralf Becker
b2fa12eb3e
remove unusual and unnecessary "EGw-...-wGE" prefix/postfix from etag and ctag
2011-10-08 11:34:55 +00:00
Ralf Becker
b2ea1a7d05
new method groupdav_principals::url2uid to convert a principal url to a calendar uid, fixes emclient uses urn:uuid urls in outbox posts to get freebusy
2011-10-07 06:02:30 +00:00
Ralf Becker
e654d3fbfb
correctly handle uid/name-part of path containing #%?
2011-10-06 07:51:24 +00:00
Ralf Becker
e05ce4d614
enclosing etag in quotes, as most servers do
2011-10-05 08:15:24 +00:00
Ralf Becker
8cce6075bd
fixed iCal parser to unescape escaped separators AFTER spliting by them, causing eg. semicolons in vcard N property (name) to fail
2011-10-05 06:27:24 +00:00
Jörg Lehrke
b65428b153
* Fix WBXML encoding issue (community bug#3020)
2011-10-04 21:21:38 +00:00
Ralf Becker
b227e61236
removed certain properties defined only on the principal
2011-10-04 11:37:44 +00:00
Ralf Becker
c670740a71
fixed encoding issue with group-name containing a space, causing eg. OS X iCal to not display proxys
2011-10-04 07:27:33 +00:00
Ralf Becker
60ba2b9628
fixed admins not having access to all accounts, if account_selection was none or groupmembers, from which admins are explicitly excepted
2011-10-03 13:40:41 +00:00
Ralf Becker
175197d7c0
* CalDAV: no METHOD:PUBLISH for CalDAV outside the inbox
2011-10-03 12:53:28 +00:00
Ralf Becker
0837c263ff
CalDAV principals: fixed wrong namespace causing iOS5 iCal to NOT autocomplete participants
2011-10-03 09:59:50 +00:00
Ralf Becker
700143eef8
if we have NO password, eg. because we run by async service outside a regular user session
...
--> fall back to the default profile / mail config from setup
2011-09-29 15:26:13 +00:00
Ralf Becker
4eaf9609c1
fixed docu-typo
2011-09-28 15:41:42 +00:00
Ralf Becker
bb4b9819b0
* CalDAV/GroupDAV/InfoLog: making synced InfoLog types configurable and moved getctag method to infolog_bo in preparation of InfoLog eSync support
2011-09-28 12:35:53 +00:00
Ralf Becker
aac290a330
fixed typo: record-type is "users" not "user"
2011-09-26 17:08:36 +00:00
Klaus Leithoff
db3f408f18
if ldap with fallback sql, we may be able to fetch and set the password last change date, if we are on primary, so check if the method exists instead of returning false.
2011-09-26 15:20:40 +00:00
Klaus Leithoff
740758d026
check if method exists for the fallback_auth, before calling get/setLastPwdChange
2011-09-26 11:01:16 +00:00
Ralf Becker
7443fdc639
* GroupDAV/KDE assume KDE 4.7+ uses native Akonadi resource, while below pre-Akonadi GroupDAV resource is used: unfortunately both have contradicting requirements
2011-09-26 10:20:27 +00:00
Klaus Leithoff
ac2279d933
* API: is_a compatibility vs. php5.3.8 resolving to instanceof operator for most common basic classes
2011-09-26 09:52:43 +00:00
Ralf Becker
b791b23f08
fixed typo causing to not announce addressbook outside of addressbook folder
2011-09-26 06:39:13 +00:00
Ralf Becker
14dde4c1ff
iOS iCal sends now pricipal-property-search reports to autocomplete participants, but not (yet) displays the result, for whatever reason ...
2011-09-25 12:00:20 +00:00
Ralf Becker
b4b04844fe
added two more match-type values from CardDAV:text-match
2011-09-24 21:15:44 +00:00
Ralf Becker
0a7b7e40c8
- improved principal-property-search report to support test=(allof|anyof) and match-type=(contains|starts-with) attributes used by iOS iCal to autocomplete participants
...
--> participants are - thanks to CalDAV scheduling - now setable for new event, thought searching for them does NOT yet work, no idea why ;-)
- added somehow missing calendar-query report to supported-report-set
2011-09-24 21:10:53 +00:00
Jörg Lehrke
f6f47e586b
* Fix SyncEvolution issue (community bug#2975)
2011-09-24 17:33:35 +00:00
Ralf Becker
3f830b2bff
- implemented principal-property-search report required for WebDAV ACL and used by Lightning to search for calendar-home-set
...
- had to implement a workaround for Lightning, as it wrongly interprets principal-property-search for calendar-home-set in the principal-collection-set
matching our *DAV root returning all principals, as all have a matching calendar-home-set, as NOT supporting CalDAV scheduling
--> search only current user's principal, when Lightning searches for calendar-home-set
- OPTIONS / return now calendar-auto-scheduling too, as Lightning only searches there, to check if server supports CalDAV scheduling
- fixed outbox freebusy request to cope with no X-CALENDARSERVER-MASK-UID and a single attendee
2011-09-23 12:04:21 +00:00
Klaus Leithoff
53c78cd9e2
as the timestamp used for ldap is not the unixtimestamp, we just use time for updating the session cache on auth_alpwchange_val
2011-09-23 11:10:05 +00:00
Klaus Leithoff
ac22466ba0
set the session cache for auth_alpwchange_val in methods for changepassword too
2011-09-23 09:56:12 +00:00
Klaus Leithoff
6bff18eadd
set the session cache only when not in admin mode
2011-09-23 09:41:03 +00:00
Klaus Leithoff
b860d7fb50
set the session cache for auth_alpwchange_val on setLastPwdChange
2011-09-23 09:29:59 +00:00
Ralf Becker
b5269738d7
read-free-busy, schedule-send and schedule-deliver privileges
2011-09-22 18:46:16 +00:00
Klaus Leithoff
afb4dff864
* API/CheckPasswordAge: new approach to the issue, as we have to take into account that the timestamp of the last password change may not be provided by the auth system. We fetch the timestamp from the authsystem if the method is implemented for the auth method configured (instead of juggling with account_lastpasswd_change or account_lastpwd_change)
2011-09-22 15:29:41 +00:00
Ralf Becker
c26fcffda7
first step for CalDAV scheduling
...
- principal reports scheduling-inbox-URL /<username>/inbox/ and scheduling-outbox-URL /<username>/outbox/
- outbox collection contains no events
- outbox correctly answers POST for freebusy information
- outbox respons to all other POST with "204 No Content", ignore client request to deliver invitations
- inbox collection contains events of unknown status (PARTSTAT=NEEDS-ACTION)
- inbox responds to DELETE with "200 Ok"
--> iCal under OS X now shows freebusy times :-)
(had to add "write-content" privilege for calendar collections user has edit rights for, to allow adding events)
2011-09-22 15:22:52 +00:00
Ralf Becker
1f39e5c562
- added WebDAV ACL props supported-privilege-set and current-user-privilege-set
...
+ currently only standard WebDAV privileges: read, read-current-user-privilege-set, write-content, bind and unbind used
+ they get only queried for collections, thought we dont report any write* on collections, as we dont allow to create calendars or change properties
- new groupdav::add_resource() method used to add all resources (incl. collections) to propfind or report requests
- improved autoindex to show nicely indented hierarchical properties
2011-09-21 20:08:21 +00:00
Ralf Becker
d5f9c5b93c
- show user collections /<username>/(addressbook|calendar|infolog)/ in propfind
...
- only define addressbook-home-set and calendar-home-set for principal-collections
- advertice /addressbook/ as addressbook-gateway (searchable collection for all contacts accessible to a user)
2011-09-20 19:16:24 +00:00
Ralf Becker
8b74af09c5
correctly handle (forced) user preference account-selection "none" or "groupmembers": do not show other groups or users
2011-09-19 14:15:33 +00:00
Ralf Becker
b848d23ef3
fixed no longer possible direct access/mount of VFS root via WebDAV after r36606
2011-09-19 11:39:46 +00:00
Ralf Becker
03ed1d3ddb
- refactored code to use a single add_collection method in groupdav class
...
--> app groupdav classes now get calling groupdav object as parameter
Had a quick test with iOS & OS X addressbook, calendar and with Lightning
2011-09-18 10:56:56 +00:00
Ralf Becker
b49aae4675
- using now associative properties for easier extending, which get converted at end of add_collection to HTTP_WebDAV_Server properties
...
- added addressbook-findshared report to principals
2011-09-17 12:31:47 +00:00
Ralf Becker
f61e4dfcfa
added collection to /principals/ resourcetype and principal-collection-set to root
2011-09-17 12:29:51 +00:00
Ralf Becker
7f7e84afaa
activating calendar-proxy in OPTIONS
2011-09-16 11:48:28 +00:00
Ralf Becker
2a7127a4c3
show real namespaces instead of not (visibly) defined shortcuts
2011-09-16 10:21:40 +00:00
Ralf Becker
6ce0906838
* CalDAV: implemented calendar proxy support and cleaned up principals tree
2011-09-15 22:45:00 +00:00
Klaus Leithoff
f616b34f58
API: introduce register_single_app_hook to be able to add or update one hook for an required app. register added/updated hooks with ->location; calendar and addressbook are using this to insert export_limit hook if not available. use app hook to fetch app specific export limit with import_export side_menu additions too
2011-09-15 16:53:20 +00:00
Ralf Becker
93b7e6885c
check if we are already trying to unlink the entry, to avoid an infinit recursion
2011-09-15 16:35:28 +00:00
Klaus Leithoff
d9905d3fb4
calendar/addressbook/API: introduce hook to fetch the export_limit to be applied for an app; introduce method to test if a specific hook exists for an application; fetch the export_limit via hook where appropriate
2011-09-15 14:46:56 +00:00
Ralf Becker
bd06c4c9d5
* Filemanager/WebDAV: understand Windows7 modification time attribute and setting and returning is as vfs modification time
2011-09-15 12:14:20 +00:00
Ralf Becker
abac9e96fe
fixed fatal error, if there are no parameters
2011-09-14 14:22:17 +00:00
Ralf Becker
516b977472
ability to queue ajax requests on the client and send them as a single ajax request every N ms to the server
...
a) instead of a single request like: new egw_json_request(menuaction, params).sendRequest(true, callback, context);
b) you call: egw.jsonq(menuaction,params,callback,context)
The server callback is identical for both kinds of requests. All egw_json_response methods can be used and the callback is optional.
2011-09-13 17:27:02 +00:00
Ralf Becker
2ed73047df
fixed serveral issues around cached config:
...
- changing config in setup did not update or unset the cache --> instance was NOT using it
- new installs failed, because cache was not configured
- cache command to not configured cache gave fatal error, now they throw a (catchable) exception
2011-09-13 09:25:25 +00:00