Commit Graph

4870 Commits

Author SHA1 Message Date
Nathan Gray
5e84ddd935 Change admin column selection to allow setting / clearing / forcing column selection 2013-04-22 22:32:40 +00:00
Klaus Leithoff
fa091d879c adapt preg_match to recognize IE 10 2013-04-18 14:21:32 +00:00
Klaus Leithoff
7b1047aacb reintroduce r23367 (setFocus capability) and r29752 (oversized events) 2013-04-18 13:22:35 +00:00
Klaus Leithoff
38e5f6e29e remove call of setFocus as currently not provided 2013-04-18 13:00:41 +00:00
Ralf Becker
ad4776c78e allways using filemtime for timestamps appended to urls to force loading of current version, as mixed use of file{c,m}time causes wired errors due to double loading eg. on OS X where they are different 2013-04-13 07:17:36 +00:00
Ralf Becker
a1d90ea237 get regexp to play nice with opening script tag without attributes 2013-04-09 12:47:44 +00:00
Klaus Leithoff
4ac1cd196c * API: introduce optional parameter to pass java script to be executed after CKEDITOR instance ready 2013-04-08 12:48:45 +00:00
Ralf Becker
f7a9c20e1d fixed typo in cache-control header, causing pages not getting cached, if clients used it in favor of Expires header 2013-04-05 10:23:58 +00:00
Klaus Leithoff
983c1e358d * API/eMail/HTMLawed/CKEditor: tidy eats away even some wanted whitespace, so we switch it off;we used it for its compacting and beautifying capabilities, which resulted in better html for further processing 2013-04-04 12:32:53 +00:00
Ralf Becker
da32eb81fb using egw.LAB.wait for jscalendar 2013-04-03 07:49:04 +00:00
Klaus Leithoff
16a1970cca add egw.LAB.wait to tree creation, as dhtmlxtree object may not be loaded on time 2013-04-02 13:36:58 +00:00
Klaus Leithoff
07f21d1291 make sure CKEDITOR is loaded, using egw.LAB.wait 2013-04-02 12:13:27 +00:00
Ralf Becker
6e28933f18 missing onLoad attibute in body tag, causing all sorts of things to fail 2013-04-02 08:13:37 +00:00
Nathan Gray
a20f7651a0 Wrap some more js 2013-04-01 22:19:10 +00:00
Nathan Gray
ef2a5d377d Use LABjs throughout framework to load javascript - prevents a lot of undefined / timing errors 2013-04-01 19:14:52 +00:00
Ralf Becker
a29b69edae using HTTP status 500 for exceptions, to ease detection of errors with externals tools 2013-03-29 09:44:03 +00:00
Ralf Becker
220650b53a ckeditor 4 needs toolbarCanCollapse=true to honor toolbarStartupExpanded=false 2013-03-27 07:58:42 +00:00
Ralf Becker
84b3edbfcb * Filemanager: fixed not working "Save as" for Internet Explorer (all versions), gave PHP Fatal Error 2013-03-25 18:26:57 +00:00
Klaus Leithoff
9425c1da14 * API/CKEditor: allow link dialog in simple-with-image feature mode (email) 2013-03-21 16:20:16 +00:00
Klaus Leithoff
77c15b226c * API/CKEditor: allow more space for html-editable area (by setting smaller margin) 2013-03-21 11:06:51 +00:00
Klaus Leithoff
892910a76d documentation on wanted functionality for allowed method fetch on egw_link::get_registry possibly provided by search_link 2013-03-21 10:27:12 +00:00
Nathan Gray
732351a539 Remove debug logging 2013-03-20 16:43:07 +00:00
Ralf Becker
8ca1d8297b * Filemanager: fixing problem creating new directory with cyrilic name, also generating etag for directories as required by ownCloud 2013-03-20 12:56:44 +00:00
Ralf Becker
da800182cb * Projectmanager: showing again global categories and their color from all apps, do no remove datasource category when element get stored and no category is selected 2013-03-20 11:06:23 +00:00
Klaus Leithoff
229b09da8d handle missing v2 skin 2013-03-18 16:02:35 +00:00
Klaus Leithoff
6204999b19 allow better config options for spell checking in ckeditor (add BrowserBased only) 2013-03-18 15:36:27 +00:00
Klaus Leithoff
8f2c59ac45 * API: enable browsers native spellchecker as default for HTML Editor, if e.g.: aspell fails - to use browsers native spellchecker, you have to hold CMD/CTRL button on rightclick to access the browsers spell correction options 2013-03-18 09:59:21 +00:00
Ralf Becker
428e71daad documented required rewrite rule for Apache FCGI 2013-03-18 08:14:47 +00:00
Klaus Leithoff
382b12b29a missing fallback on skins 2013-03-14 17:00:34 +00:00
Klaus Leithoff
a3ef1985ec switch to CKEditor4 2013-03-14 16:30:55 +00:00
Nathan Gray
68529ce692 Load et2 CSS in at the top level so it's available for sidebox 2013-03-12 22:45:58 +00:00
Klaus Leithoff
203316af08 improve focus management by forcing carent in all browsers to be placed at the start of the loaded document 2013-03-08 13:14:14 +00:00
Klaus Leithoff
a2e75c3ca4 further work regarding the editor focus 2013-03-06 09:17:21 +00:00
Ralf Becker
93710e09e1 * Setup/API: improved diagnostics about db connection problem and not installed EGroupware
- removed deprecated egw_db->Halt_On_Error handling in favor of just exceptions
- added a couple of exceptions extending egw_exception_db to be able to detect different problem areas
- fixed setup to use / catch exceptions
- new egw_exception_db_setup displays link to setup below exception message, to cope with no longer allowed html in exception messages
2013-03-05 10:50:43 +00:00
Klaus Leithoff
2b27946d6f * eMail/api: attempt to fix the focus on body issue with FF; thanks to CKEditor support 2013-03-04 11:50:17 +00:00
Ralf Becker
ea6e8c8e94 * ImportExport: do NOT complain about wrong charset, if text contains only standard ascii chars 2013-03-01 09:51:02 +00:00
Klaus Leithoff
3fcc703375 do not try to break out of egw server root when iterating over all apps 2013-02-26 11:08:20 +00:00
Ralf Becker
59e60c523b error-handler to throw recoverable errors (eg. catchable fatal error from type hinting) as ErrorException 2013-02-25 14:36:44 +00:00
Ralf Becker
84ed911c97 * CalDAV/CardDAV: removed unnecessary (double) etag generation and improved calendar etag generation for recurring events 2013-02-25 11:17:59 +00:00
Ralf Becker
a50f785224 fixed wrong call name2id to get account_lid of owner, causing lot of database access and returning nothing, as account_id for given 2013-02-25 10:30:44 +00:00
Ralf Becker
1d2a4ae065 ignore "broken" grants (eg. negative account_id for a user), as they lead to further errors (no members) 2013-02-25 09:48:58 +00:00
Ralf Becker
a6f869be64 * WebDAV/CalDAV/CardDAV: implemented support for clients sending passwords with non-ascii chars (eg. acents or umlauts) in iso-8859-1 instead utf-8: Firefox, Thunderbird, IE, Netdrive 2013-02-22 13:32:29 +00:00
Klaus Leithoff
a09ef26c5c use monospace fontstyle for plaintext edit; preserve whitespace (horizontal AND vertical) if mail is plaintext (not containing any html) 2013-02-22 10:58:39 +00:00
Klaus Leithoff
98120c44b3 omit unit, when no size is given; display unit to the user, so he knows what he is selecting 2013-02-22 09:45:47 +00:00
Klaus Leithoff
2315944590 preset font span, omit empty style elements completely 2013-02-22 09:27:35 +00:00
Ralf Becker
0c11206d91 change default font unit for new installs to "pt" and fixed not set font-size in email 2013-02-21 13:19:15 +00:00
Ralf Becker
f158a8c5d2 * Preferences/all apps: allow to specify font size unit of richtext editor: either "px" display pixels or "pt" as used in word processing 2013-02-21 11:32:46 +00:00
Ralf Becker
ef1756438e * Preferences/EMail: if user changed password, update password in session correct, so eg. EMail using that password keeps working 2013-02-21 09:43:38 +00:00
Ralf Becker
151b800a5a ignore . and .., as it gives an open_basedir warning, it is no application directory anyway 2013-02-21 06:32:30 +00:00
Ralf Becker
ea411d53c8 * Filemanager: removing extended ACL for groups was not immediatly reflected in rights of current user, had to log out and in again 2013-02-20 13:59:31 +00:00
Ralf Becker
9b88b849f6 * SiteMgr: sitewide config to allow proxys and CDNs caching of anonymous requests (Expires and Cache-Control header)
apps can now enable public caching by either setting $GLOBALS[egw_info][flags][nocachecontrol] to "public" (default php.ini session.cache_expire) or a numeric value in seconds, or call egw_session::cache_control()
2013-02-19 15:34:19 +00:00
Ralf Becker
d44e448976 include unsuccessfull session creation and reason in debug logging 2013-02-15 16:15:52 +00:00
Ralf Becker
52ea94cbee using LABjs to load javascript files in order via egw.includeJS 2013-02-15 15:30:35 +00:00
Ralf Becker
5f1c76ae91 refactored js loading a bit, to be able to get files to load for et2 2013-02-13 16:28:39 +00:00
Ralf Becker
cbe137876a docu for egw_include_mgr 2013-02-13 16:27:52 +00:00
Ralf Becker
52ac0dd0b3 fix lang.php always returning all translations, because preferences::standard_substitutes loads them 2013-02-07 15:32:18 +00:00
Ralf Becker
daac136f47 as et2 adds options as text, we can NOT use html entities, but direct utf-8 chars, which unfortunately php does not support as string literals, using html_entity_decode therefor 2013-02-05 11:24:02 +00:00
Ralf Becker
e47fca7d10 missing templates and a fix for new reply handling 2013-02-01 16:54:51 +00:00
Ralf Becker
685cc0ab26 ignore whitespace before and after equal sign in dkim tags 2013-01-30 16:40:41 +00:00
Ralf Becker
5521f110ec option to fold dkim signature, which is off by default as recommend for http and sign Authorization header - if given - as required by current iSchedule spec 2013-01-30 10:17:55 +00:00
Ralf Becker
1d96ed8cf9 added private-exchange to list of methods how to fetch public key 2013-01-30 07:42:17 +00:00
Ralf Becker
17a46f71b0 missing return false to fail if signature is expired 2013-01-29 22:44:31 +00:00
Ralf Becker
1f0523e522 improved dkim signature validation:
- whole signature can be folded
- values of bh, b and h tag can contain whitespace
- check optional expiry / x tag
2013-01-29 22:39:24 +00:00
Ralf Becker
d7204c520e User-Agent complient with https://svn.tools.ietf.org/svn/wg/httpbis/draft-ietf-httpbis/latest/p2-semantics.html#header.user-agent 2013-01-29 22:11:42 +00:00
Ralf Becker
b67e43d3ed some changes to dkim signature:
- added User-Agent
- value of x tag is a unix timestamp, not value in secs
- no more oversigning of recipient header, due to new ischedule-relaxed header canon
plus method to check ischedule is available for a domain/email and method to send a freebusy request
2013-01-29 21:54:41 +00:00
Ralf Becker
90e85f4c19 added ken.name public key and setting correct http-status for logs 2013-01-29 19:33:42 +00:00
Ralf Becker
047a8aa9fa loop over attendee not participants, as we add organizer there 2013-01-29 18:19:16 +00:00
Ralf Becker
d97da6d309 modifications for new iSchedule draft:
- ischedule-relaxed header cannonisation
- error xml response
- modified capabilities with serial and iSchedule-Capabilities header in every response
- using urls with mailto: schema for Originator and Recipient headers
2013-01-28 22:00:33 +00:00
Ralf Becker
2fadcab928 modifications for iSchedule 2013-01-28 21:50:07 +00:00
Ralf Becker
c8f1733634 import of orginal version of PHP mail domain signer, required in enhanced form for iSchedule 2013-01-28 21:49:29 +00:00
Ralf Becker
f40a292865 updated capabilities query to current iSchedule spec from jan 2013 2013-01-28 18:15:44 +00:00
Ralf Becker
20e1299729 updated capabilities query to current iSchedule spec from jan 2013 2013-01-28 17:34:00 +00:00
Ralf Becker
9d8c2f42c9 * CalDAV: fixed accepting event removed it from calendar, because email address of a deleted account was prefered over regular account, correctly reporting not found URLs in multiget report 2013-01-25 17:52:28 +00:00
Ralf Becker
2841317b08 * all apps: exclude expired or deactivated accounts from all lists and selections (beside admin app to be able to activate them again) 2013-01-25 13:21:31 +00:00
Ralf Becker
4c060a5889 * Filemanager: introduced maximum symlink depth of 10, to stop infinit recursion in circular symlinks (eg. two symlinks pointing to each other) 2013-01-24 14:26:02 +00:00
Ralf Becker
9a9e6f0808 docu update 2013-01-24 09:30:30 +00:00
Ralf Becker
0f76ff5ab5 * CardDAV: fixed wrong privileges for accounts addressbook, causing clients to report it read-only even for admins 2013-01-22 08:37:58 +00:00
Ralf Becker
34f3c8bf1f * Admin/Setup: fixed restore always converted longtext columns to text and therefore truncating them to 64k on MySQL, also fixed backup to report them correctly in backup of schema 2013-01-21 09:49:59 +00:00
Ralf Becker
140d7498e8 added missing, but not used, parameter 2013-01-21 08:14:01 +00:00
Ralf Becker
da811e3509 * CalDAV/Calendar/Ressources: readded missing resource- and location-calendars after recent changes in resources app 2013-01-18 13:07:11 +00:00
Klaus Leithoff
c8aaaa68cf handle php warning, when trying to call AddrAppend with empty object/array 2013-01-17 10:14:45 +00:00
Klaus Leithoff
d159f2b51f * API: adding library idna_convert by Matthias Sommerfeld, and some egw_wrapper for basic config and autoloading 2013-01-10 14:55:35 +00:00
Klaus Leithoff
5d8531f66f adapt comment 2012-12-17 14:44:18 +00:00
Klaus Leithoff
a210fbc3c7 * email: allow cid as overall url schema; handle background url in htmLawed, as background is not allowed except for body, but commonly used with other tags (e.g. in td); control schema for background in hook_tag 2012-12-17 14:39:00 +00:00
Klaus Leithoff
c3d2170518 remove CR from start and end of lang string line read from file, as it breaks stuff e.g. in eMail module 2012-12-12 10:18:40 +00:00
Klaus Leithoff
36bc7871c1 * API/Translation: fix bug with missing german umlauts as first letter of words; ( as php5.3.3 with squeeze does not support splitting lines with fgetcsv while reading properly if the first letter after the delimiter is a german umlaut (UTF8 representation thereoff)) 2012-12-12 09:42:56 +00:00
Nathan Gray
c067e2ccb7 Do the check in a way that matches correctly for all 2012-12-11 15:31:35 +00:00
Nathan Gray
cf5269f6d1 Check for empty user font preference span, and remove it so empty checks still work 2012-12-10 23:10:58 +00:00
Nathan Gray
cbb88e22cb Remove other places trying to set default ckEditor toolbar mode - using common preference 2012-12-05 20:22:13 +00:00
Nathan Gray
85c15e42fd Use preference for ckEditor features by default 2012-12-05 19:58:37 +00:00
Nathan Gray
3ee18797b0 Rework common preferences
- Better grouping
- Added preferences for rich text editor
  - Font
  - Font size
Take effect on new, blank editors.  Existing data is untouched.
2012-12-04 22:21:59 +00:00
Klaus Leithoff
6a2b8882de for replaceTagsCompletely modify the prex for singeltons (as we are in Ungreedy mode, so we expect * to be ungreedy without specifying ?) 2012-12-04 14:13:36 +00:00
Nathan Gray
d0fa6110d1 Use CSS to style preference tabs 2012-12-03 18:36:00 +00:00
Klaus Leithoff
f231144c03 * eMail: use different image to show that a image was not loaded (due to allowExternalIMGs=no) 2012-11-29 13:55:45 +00:00
Klaus Leithoff
6378d289ca use better defaults for some egw_info server values (num_unsuccessful_id, num_unsuccessful_ip, block_time) 2012-11-29 11:13:58 +00:00
Ralf Becker
15df850d28 ignore not (yet) existing mailaccounts table, but not checking for emailadmin, as it is not set in setup 2012-11-22 14:58:34 +00:00
Ralf Becker
350acd2157 handle not (yet) existing mailaccounts table eg. in setup or when no emailadmin installed 2012-11-22 13:25:22 +00:00
Ralf Becker
60a22fe179 accounts part missed in r40877: first take on migrating mail accounts from LDAP to SQL (only qmailUser schema) 2012-11-19 13:19:14 +00:00
Ralf Becker
12fa75f978 fix typo in comment 2012-11-19 08:24:47 +00:00
Ralf Becker
b82f6516e8 fixed not load translations if depending on multiple files and maintaining load_via in tree-wide cache 2012-11-16 09:21:17 +00:00
Klaus Leithoff
cd9e0cfab5 improved control of excess empty div tags 2012-11-15 15:30:11 +00:00
Ralf Becker
6341e8fc33 store group email in mailaccounts table 2012-11-15 15:26:35 +00:00
Klaus Leithoff
bea130bc23 if style stuff contains e.g. font-family: Kunstler Script EGroupware Script detection complains about script tags when posting such content. So we remove Script from inline style definition 2012-11-15 11:55:19 +00:00
Nathan Gray
b83a19284a UI changes for chosen selectboxes 2012-11-14 20:33:33 +00:00
Nathan Gray
8b55a21206 More changes to use chosen for fancy selectboxes - apply to egw multi-select and select user too 2012-11-13 22:14:00 +00:00
Nathan Gray
f72a582532 Use chosen plugin for to get fancy selectboxes. Selectboxes with more than 12 options get it turned on automatically 2012-11-12 19:29:23 +00:00
Ralf Becker
234a8a8154 check if we use cookies for the session, but no cookie set: happens eg. in sitemgr (when redirecting to a different domain) or with new java notification app 2012-11-12 09:48:31 +00:00
Klaus Leithoff
3420b15ff4 mailheader-decoding: check if there is a possible nested encoding; make sure that the inputstring and the decoded result are different before recursively calling decodeMailHeader on the decoded result (to avoid loops) 2012-11-07 11:46:14 +00:00
Klaus Leithoff
b48bee9406 use NEW exception for assertion failed 2012-11-06 10:36:25 +00:00
Nathan Gray
2218fd8956 Fix category search missing when result is a child, but parent does not match too 2012-11-05 17:56:03 +00:00
Ralf Becker
1e53272309 loading all translations in one go from cachem, saving some latency 2012-11-05 13:24:52 +00:00
Ralf Becker
a709f6104f * Setup/API: translations are no longer installed in database, but loaded directly from lang-files into tree-level cache 2012-11-05 12:18:22 +00:00
Klaus Leithoff
4957c77f74 allow to access ReplyTo of MailObject by extending classes; provide Function to retrieve replyTo Address; alter Method to detect wether a filename is already encoded, and if - do not try to use the basename as filename 2012-11-05 08:48:13 +00:00
Ralf Becker
b48e399253 fix for bug #3164: Lines containing accents are truncated in vCard exports 2012-11-01 17:23:40 +00:00
Ralf Becker
06bc5ea552 do NOT delete preferences, before writing them in preferences::save_repository (might be cause for race-condition causing preferences to be lost) 2012-10-31 14:16:17 +00:00
Ralf Becker
8c4125e75c * Admin: new function "Clear cache and register hooks", also called automatic when restoring a backup 2012-10-31 14:00:34 +00:00
Ralf Becker
b514745d01 * Admin: new function "Clear cache and register hooks", also called automatic when restoring a backup 2012-10-31 13:56:40 +00:00
Klaus Leithoff
627c65e6dd * eMail/HTMLawed: introduce and use new make_tag_strict option 3, to exclude font from applying strict measures to it 2012-10-30 14:24:08 +00:00
Ralf Becker
d28f83d70e disable permanent error-log and tests 2012-10-30 12:25:10 +00:00
Ralf Becker
7cd606e529 cumulate group-preferences of all memberships of a user, not just his primary group 2012-10-30 10:22:05 +00:00
Ralf Becker
71cebbf12e allow to query cache for multiple locations at once: $location param to getCache is an array and returned is an array indexed by these locations (not found entries are NOT returned 2012-10-30 10:02:37 +00:00
Klaus Leithoff
9c73af1aca * eMail: allow table as inline element while balancing tags (new internal config option); try to correct common errors/problems in html-code which caused display/layout problems 2012-10-29 15:49:13 +00:00
Ralf Becker
c327cba153 consistently send ETag by using and extending put_response_headers 2012-10-29 12:23:17 +00:00
Ralf Becker
aca3b3b028 * CalDAV/CardDAV: fix not working logging of errors into traffic log 2012-10-29 12:14:33 +00:00
Ralf Becker
f7cc51ad18 do NOT minify ckeditor, as it breaks it (it is already minifyed anyway) 2012-10-26 10:00:05 +00:00
Ralf Becker
18fe5c1d4b fixed minify issues: installation in docroot is now handeled, as well as problems with jscalendar and email 2012-10-26 09:24:39 +00:00
Ralf Becker
7a981eba15 using pseudo-sessionid for ownCloud remote.php url too, as we otherwise generate lots of new sessions 2012-10-25 12:51:28 +00:00
Ralf Becker
99e1cad866 * Filemanager/WebDAV: support for newer ownCloud clients (eg. version 1.1.1) 2012-10-24 16:25:53 +00:00
Klaus Leithoff
5b295573dd introduce detect_encoding functionality as a static function (used in decodeMailHeader as of now) 2012-10-24 10:54:44 +00:00
Ralf Becker
b6a2d9591f koping with EGroupware installed direct in docroot (webserver_url "", "/" or "http(s)://domain.com/") 2012-10-24 06:27:56 +00:00
Ralf Becker
a6190a6933 * API: only cache in APC by default, if it has at least 64M of shared memory, otherwise use filesystem 2012-10-23 07:49:21 +00:00
Ralf Becker
c87d6997ab * CalDAV: fixed parsing of principal urls used by iOS6 for users 2012-10-22 16:43:51 +00:00
Ralf Becker
6996efe50b use minify on javascript files: for now minify does NOT support query parameters, nor php files generating javascript, therefore these are excluded 2012-10-15 17:22:44 +00:00
Ralf Becker
82c73c423e patch for minify to support EGroupware set up as an alias, which is a common setup 2012-10-15 16:22:42 +00:00
Klaus Leithoff
019a84cd17 update htmLawed to Version 1.1.14 (including adaptions from http://www.bioinformatics.org/phplabware/forum/viewtopic.php?id=235) 2012-10-15 09:33:01 +00:00
Ralf Becker
4e8f54268c fix for typo: path_url --> parse_url 2012-10-15 06:51:54 +00:00
Ralf Becker
71ec92a777 cache, concat and minify all css resources to speed up requests, javascript files planned too 2012-10-14 19:38:32 +00:00
Ralf Becker
4c5b764347 allow to use HTTP_HOST (without optional port) or SERVER_NAME to find matching instance 2012-10-12 15:11:42 +00:00
Klaus Leithoff
db78e25cc0 rework changes regarding denied attributes; improve import of mails regarding filename detection for attachments 2012-10-10 10:37:45 +00:00
Klaus Leithoff
7e827dfcef filter/remove (on(before)?(abort|blur|change|click|dblclick|error|focus|keydown|keypress|keyup|load|mousedown|mousemove|mouseout|mouseover|mouseup|reset|select|submit|unload)) attributes in/with htmLawed for default and email config 2012-10-09 09:27:13 +00:00
Ralf Becker
1b98e9e858 requests in log were always trunkated (since last changes) and fixed quoting in autoindex for hierarchical props in collection resources 2012-10-08 11:20:29 +00:00
Ralf Becker
46acebf2a7 fixed many issues with dkim signing 2012-10-06 19:42:05 +00:00
Ralf Becker
81376af3f3 got dkim-validation working with oversigned headers and sha256 hashing algorithm 2012-10-05 10:52:53 +00:00
Ralf Becker
20db974942 added logging like for CalDAV/CardDAV (curently permanently enabled) 2012-10-04 12:09:25 +00:00
Ralf Becker
bef455f5e3 make logging available for iSchedule 2012-10-04 11:59:04 +00:00
Ralf Becker
aeeb585604 dkim signature according to iSchedule draft 02 2012-10-04 05:56:30 +00:00
Ralf Becker
18ceb54882 dkim signature according to iSchedule draft 02 2012-10-04 05:53:52 +00:00
Ralf Becker
5a890e36ab updated capabilities to draft 02 2012-10-03 11:19:12 +00:00
Ralf Becker
e9fe6cd6e1 adapted to updated spec using action=capabilities 2012-10-03 10:10:13 +00:00
Ralf Becker
19f25f2012 adapted to updated spec using action=capabilities 2012-10-03 10:08:09 +00:00