Ralf Becker
07cd6838f5
* Admin/Filemanager: creating groups did not create group directory, but damaged VFS (can be repaired with "Check virtual filesystem")
2014-06-04 09:26:29 +00:00
Ralf Becker
85c5468013
fixed old tree stuff to use new dhtmlx locations, allways use dhtmlxtree/codebase/dhtmlxcommon.js
2014-06-03 08:17:43 +00:00
Ralf Becker
960b50b83a
sync CalDAV default-alarm trigger/time to calendar preference
2014-05-28 10:57:02 +00:00
Nathan Gray
32f51ced99
Remove error log
2014-05-27 15:49:51 +00:00
Klaus Leithoff
5e44a189cc
other changes (keep_bad and -htmlawed-transform) that did affect the expected result of htmlawed v1.1.17 compared to v1.1.14
2014-05-27 15:26:06 +00:00
Klaus Leithoff
9924612245
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
...
introduce and use new make_tag_strict option 3, to exclude font from applying strict measures to it
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
2014-05-27 14:12:44 +00:00
Klaus Leithoff
f94e6bb501
* API/htmLawed: update to version 1.1.17
2014-05-27 13:52:02 +00:00
Ralf Becker
d1c25c7c38
* fixed SQL error "Field last_mod doesnt have a default value" on update for newer MySQL versions or PostgreSQL
2014-05-27 12:46:18 +00:00
Nathan Gray
e9d426111a
Keep unsorted favorites
2014-05-26 23:00:02 +00:00
Ralf Becker
baf7e2e97a
remove unnecessary and in PHP 5.5 deprecated preg_replace /e modifier
2014-05-26 14:29:40 +00:00
Ralf Becker
28b45639be
to give observer method of other apps more information about what to refresh, server-side adds now links to refresh-opener and therefore observer calls
2014-05-26 13:29:35 +00:00
Ralf Becker
c04f0ccc8f
fix not updated infolog in list, when timesheet is booked on it: added "row_mod" as maximum of info_modified, link_lastmod (incl. deleted ones) and timesheet_bo::sum() max_modified
2014-05-24 10:59:03 +00:00
Ralf Becker
4b9078eb7d
fix implementation of calling (set|get|unset)Cache with install_id to behave identical to call to (set|get|unset)Instance for current instances install_id (install_id was used directly in keys)
2014-05-22 11:21:02 +00:00
Klaus Leithoff
a50810f9a6
if kama is choosen as skin, use monocolor; kama-skin seems not be fully compatible with ckeditor requirements on skins; next ckeditor update will remove kama skin
2014-05-22 10:01:31 +00:00
Nathan Gray
a5cdc928f0
Call static methods staticly
2014-05-21 16:48:36 +00:00
Ralf Becker
e6304eec45
fixed PHP Fatal error: Attempt to unset static property accounts::$cache
2014-05-20 15:55:17 +00:00
Ralf Becker
c7d32e47d5
egw_cache::(get|set|unset)Cache($level,...) excepts now an install_id to use instance cache of given instance
...
accounts class uses now instance_id to access instance cache to support using it with multiple instances
instanciating accounts class with an array of config values clears now internal static cache and singelton instance
2014-05-20 08:59:29 +00:00
Ralf Becker
01a7875627
egw_cache::(get|set|unset)Cache($level,...) excepts now an install_id to use instance cache of given instance
...
accounts class uses now instance_id to access instance cache to support using it with multiple instances
instanciating accounts class with an array of config values clears now internal static cache and singelton instance
2014-05-20 08:59:23 +00:00
Ralf Becker
9602d061ad
* Setup: re-add config for mail authentication and fixed it to always try to use a TLS connection
2014-05-17 08:00:17 +00:00
Ralf Becker
c3b7018916
logging for exceptions now also request-method and user-agent
2014-05-16 09:09:38 +00:00
Ralf Becker
ef07aebbd4
* ProjectManager/Timesheet: automatic change a changed project-title in Timesheet too
2014-05-15 13:20:52 +00:00
Ralf Becker
802d4c5282
* ProjectManager: fixed parent projects were not updated with changes (you had to run sync-all manually
...
caused by running notifications delayed after response is send to user and to taking into account new notifications generated by notified apps
2014-05-15 13:14:09 +00:00
Ralf Becker
b25724e7ed
fixed setup uses cached config values for installs with multiple instances
2014-05-13 15:53:35 +00:00
Ralf Becker
e4e4aa97bc
flushing instance cache and config cache, after saving minimal config, fixing default_records of apps use not up to date data
2014-05-13 09:32:21 +00:00
Ralf Becker
927b6eacb3
seems webspellchecker in CKEditor uses now https, need to allow that instead of http in CSP policy
2014-05-08 16:46:59 +00:00
Ralf Becker
a345f2c47e
implemented search method in accounts sql backend, to no allways do a full query and limit in code
2014-05-08 13:35:22 +00:00
Ralf Becker
7c9df2fe1e
implemented search method in accounts sql backend, to no allways do a full query and limit in code
2014-05-08 12:30:03 +00:00
Ralf Becker
c29cb5c972
limiting a huge list of accounts returned not all accounts, because full search was limited too original number of requested rows
2014-05-08 08:50:57 +00:00
Nathan Gray
012b49838c
Send value/label pairs to preserve sorting
2014-05-06 20:33:40 +00:00
Ralf Becker
f806bee109
fixed PHP Fatal error: Call to a member function appsession() on a non-object when running as cron-job
2014-05-06 14:41:06 +00:00
Ralf Becker
6f98614b15
* Setup: fixed (partially) stalled installation, because caching could not find not yet created configuration
2014-05-05 12:33:33 +00:00
Ralf Becker
544d57ca46
prevent CSRF for setup and admin site configuration
2014-05-01 06:26:09 +00:00
Klaus Leithoff
7434cd7144
* Mail: fix for messed up signature in some cases; fix for not beeing able to delete/remave an attachment to a new mail that was attached using PRESET methods
2014-04-29 09:53:47 +00:00
Nathan Gray
08ecadcc99
Add support for querying multiple deleted links, same as single
2014-04-28 19:56:21 +00:00
Ralf Becker
d28315dc9f
disable help until content is reworked
2014-04-24 05:56:41 +00:00
Nathan Gray
48fa6611f3
Use a single client-side cache for account selection so we don't have to send it for every widget
2014-04-23 19:00:59 +00:00
Hadi Nategh
bc33bb842e
Fix not showing up sidebox fav items
2014-04-23 12:04:05 +00:00
Hadi Nategh
9805f019a1
* Favorites: Make favorites item sortable and store their orders as user preference
2014-04-23 11:42:48 +00:00
Ralf Becker
f2030c4746
added an implementation of imap_mime_header_decode() using Horde_Mime::decode() with which mail app now seems to work without PHP imap extension
2014-04-19 09:22:59 +00:00
Ralf Becker
54dc648b18
an implementation of imap_rfc822_parse_adrlist and imap_rfc822_write_address, to obsolete imap extension
2014-04-18 12:51:17 +00:00
Ralf Becker
6b7b6fac58
returning false and logging error in ExecMethod, not returning an error-message
2014-04-17 15:07:02 +00:00
Ralf Becker
f641c2cec6
open password in a popup
2014-04-17 07:37:21 +00:00
Ralf Becker
3b68b8bff8
need to consider caching when applying setup operations
2014-04-16 17:57:44 +00:00
Ralf Becker
cf6ae6ee77
empty array on insert/update, store as NULL, or if not allowed whatever value NULL is casted to
2014-04-15 08:15:23 +00:00
Klaus Leithoff
04760c6510
rework of translation::replaceTagsCompletley as the prior method removed too much in rare cases
2014-04-14 15:09:07 +00:00
Klaus Leithoff
c68e887a9c
remove references to obsolet felamimail stuff
2014-04-10 08:37:12 +00:00
Ralf Becker
88ac923de2
switched off permanent error_log
2014-04-09 08:49:07 +00:00
Ralf Becker
0a83c89f9f
fixed PHP Fatal error: Undefined class constant "SSL_TLS"
2014-04-09 08:41:57 +00:00
Ralf Becker
370dd66938
fixed send class to use new accounts stuff and not calling (no longer existing) felamimail
2014-04-09 08:22:59 +00:00
Ralf Becker
b5818b931f
patched PHPMailer to allow to use STARTTLS and TLS version>=1, enhanced wizard to autodetect hosted 1-and-1 domains by using Mozilla ISPDB on MX or domain-part of MX, fixed folder detection to not require folders below INBOX
2014-04-04 08:31:28 +00:00
Ralf Becker
97dc98453c
Horde_iCalendar::newComponent(): include relative from current dir, as we no longer set (old) Horde dir in include path
2014-04-01 13:41:45 +00:00
Ralf Becker
71b97568e5
restore include_path after include of (old) Horde lib/core.php to not conflict wth new Horde code installed in include-path
2014-04-01 12:33:14 +00:00
Ralf Becker
28a819926c
fixed fatal error class Horde_String not found when trying to save a new compose with attached vCard as draft
...
caused be previous include include of phpgwapi/inc/horde/Horde/String.php via use of vCard and old Horde code uses just String instead of Horde_String as class-name
2014-04-01 10:37:36 +00:00
Nathan Gray
5be831d9dc
Fix broken cache update when deleting a preference.
...
Before, it would only store the preference for the updated app instead of all.
2014-03-31 16:59:01 +00:00
Klaus Leithoff
f495345550
add some more examples for imap_rfc822_parse_adrlist
2014-03-28 09:48:09 +00:00
Ralf Becker
ca3f43838c
fixed IDE warnings
2014-03-28 07:49:49 +00:00
Klaus Leithoff
5547753502
first step for a workaround when there is no imap extension available; ToDo: implement imap_rfc822_parse_adrlist (used quite often)
2014-03-27 14:03:06 +00:00
Ralf Becker
9a10af6fe5
missed to commit parameter to parse CN from url
2014-03-25 12:22:00 +00:00
Ralf Becker
659ad40b50
display old html::form_1button like a button inline-block
2014-03-25 12:17:46 +00:00
Ralf Becker
1f0dd46118
as we use now etemplate_new for eTemplate2 and etemplate for old eTemplate class, there is no need to switch etemplate class between new and old
2014-03-23 08:41:31 +00:00
Nathan Gray
764d7f99a5
Update CSS order so apps can customize theme:
...
Libs < etemplate2 < framework/theme < app < print
2014-03-18 15:29:03 +00:00
Ralf Becker
77579f364f
fixe funny "Group, Name" label, should not contain a comma
2014-03-18 13:34:59 +00:00
Ralf Becker
804df769d5
fixed IDE warnings
2014-03-12 17:15:48 +00:00
Ralf Becker
f87e456be2
do not send/set extra data twice for multiple etemplate (eg. CRM view)
2014-03-10 15:20:27 +00:00
Ralf Becker
04442bb0cf
move actions stuff to api bundle, as loading just it fails with etemplate bundle split in two parts (fixes error reported on devel list)
2014-03-04 09:10:58 +00:00
Ralf Becker
11d77f3dab
fixed a couple of problems with automatic switch to idots template from mobile browsers: csp-error, wrong icons
2014-03-03 17:35:48 +00:00
Ralf Becker
f45c1e7d53
fixed all methods of common class are static
2014-03-03 17:33:55 +00:00
Ralf Becker
876a14ff52
new 4th parameter to egw_framework::includeCSS() to tell framework NOT to load any default CSS and make send_headers public
2014-03-03 14:54:03 +00:00
Ralf Becker
aa850d24fc
implemented account_type: (accounts|groups|both) option for taglist-account as available in select-account widget
2014-02-28 16:52:42 +00:00
Ralf Becker
f218f9412c
added note about certificate validation and some more diagnostics to error_log, for failed ADS auth
2014-02-27 12:05:37 +00:00
Klaus Leithoff
a46398da52
move groupdav to_ascii to translation class; unify content_header and content_disposition_header to be used by all downloads; adapt vfs_webdav_server thereof; try to improve replaceTagsCompletley
2014-02-25 15:48:23 +00:00
Ralf Becker
516713589f
* WebDAV/Filemanager: reject to save files by clients using chunked transfer-encoding on servers which does not support that (eg. OS X Finder with server using FastCGI PHP)
2014-02-24 12:40:10 +00:00
Ralf Becker
4ff1a4efd1
fixed after new shutdown handling broken autoloading of tree nodes: json.php is used to send arbitrary JSON data, instead using egw_json_response methods (egw_json_request::isJSONRequest(false) turns that off now)
2014-02-22 15:51:14 +00:00
Ralf Becker
2f3add4ce9
hook to allow apps to add addional domains to CSP frame-src, eg. used by sitemgr to allow access to its sites, also fixed not displayed sidebox menu of old apps
2014-02-21 17:06:11 +00:00
Ralf Becker
a786894c27
new egw::on_shutdown($callback, $args) method to register shutdonw handlers to run after output send back to user, thought only really working with fastCGI, Apache mod_php waits ...
2014-02-21 15:38:38 +00:00
Ralf Becker
796663c2a6
fixed modified translations were not automatic loaded after new login
2014-02-21 11:10:11 +00:00
Ralf Becker
a9b6c6e9b4
* CalDAV/CardDAV: fixed support for limited sync-collection report used eg. by Marten Gajdas Android apps
2014-02-20 17:46:15 +00:00
Nathan Gray
5949016faa
Move reading of favorites into a separate function from rendering list
2014-02-20 17:44:53 +00:00
Ralf Becker
3cbf1d24fb
* eTemplate/all apps: limit displayed history to 500 entries
2014-02-20 12:47:06 +00:00
Ralf Becker
a7f65672c8
* All apps: run link notifications after processing and returning control to user to speed up saving of entries with links to (big) projects
2014-02-20 11:29:51 +00:00
Ralf Becker
2f8b7064d8
allow to send a redirect from server-side via client-side egw.link_handler(url, app) allowing to specify which tab to use and a top-level (ajax=true) url
2014-02-19 15:08:51 +00:00
Ralf Becker
5734d2e143
fix some html markup IE complains about
2014-02-19 11:49:53 +00:00
Ralf Becker
e22df1b7e2
fixed user agent detection to report correct IE version to fix not longer used svg images after last fix, also fixed all IDE warnings
2014-02-18 19:21:34 +00:00
Ralf Becker
e6052f9704
automatic split bundles with more then 50 files into chunks, as IE11 does NOT cache them otherwise
2014-02-17 17:15:37 +00:00
Klaus Leithoff
0d458c8119
disable transaction for mysql for restore, as a failure during restore may lead to an empty database, as drop table is not transactional for mysql
2014-02-17 16:16:44 +00:00
Klaus Leithoff
1c013e92f0
IE changed its USER_AGENT string; html:: report trident; change this to msie when detected, to match the use of msie throughout egroupware; use moonocolor as fallback skin, when ie anf ff are detected
2014-02-17 13:56:17 +00:00
Klaus Leithoff
597e8fdeac
we allow filtered style sections now throughout egroupware
2014-02-17 11:35:25 +00:00
Klaus Leithoff
acd8b742e8
make sure that request parameters is array before binding/passing them to handle_request
2014-02-17 09:44:13 +00:00
Ralf Becker
ca12321613
fixed sitemgr-links show no navbar icon in Stylite/Pixelegg template
2014-02-16 09:12:08 +00:00
Ralf Becker
5e0ac9b76f
moved favorites code to new class egw_favorites
2014-02-14 13:48:45 +00:00
Ralf Becker
be60a5036e
older group-favorites have just true as their group and are not deletable, if we dont find correct group
2014-02-14 13:26:32 +00:00
Ralf Becker
0fa215c9e8
fixed sometimes not deletable favorites
2014-02-14 12:46:49 +00:00
Ralf Becker
e4d65ae94d
do NOT check for run rights of preferences app, as we want to be able to store implicit preferences
2014-02-13 16:34:09 +00:00
Ralf Becker
476f33af23
until home works again, we use default_app from prefs (if set and not home) or calendar, if allowed, or first app found
2014-02-13 13:18:48 +00:00
Ralf Becker
80d74f863e
fixed typo in adding classes causing image to be lost and cleaned up adding of classes
2014-02-13 11:00:29 +00:00
Ralf Becker
f0d7751496
removed caret from group favorites, fixed prefered favorite was not show correct initialy nor updated
2014-02-12 21:51:25 +00:00
Nathan Gray
1ca01da9b0
Fix missing group ID when deleting group favorites, fixes unable to delete group favorites
2014-02-12 17:33:22 +00:00
Ralf Becker
197b999d35
adding a css class for cancel, delete or yes/no buttons to "old" etemplate
2014-02-12 15:36:47 +00:00
Ralf Becker
384756ff71
explicitly allow svg for logo in navbar
2014-02-12 08:34:33 +00:00
Ralf Becker
0a5001ea11
explicitly allow svg for logo in login screen
2014-02-12 08:14:07 +00:00
Ralf Becker
28df2d8125
fixed buttons with just an image from html::submit_button() were shown like a button after changing tag from <input type="submit" to <button
2014-02-11 16:52:45 +00:00
Ralf Becker
436fe041e0
switching svg images off for everything but application icons in Stylite or Pixelegg template
2014-02-11 14:41:17 +00:00
Ralf Becker
a4c1c5ad72
include addressbook preferences in user.php, as some et2 widgets need this prefs and we dont want to block until they are loaded
2014-02-11 12:48:20 +00:00
Ralf Becker
6d17e87b0a
use egw_json_response::call() instead of deprecated script()
2014-02-11 12:16:16 +00:00
Ralf Becker
486303cde5
only allow caching, if login succeeds, otherwise we get a cached redirect to login
2014-02-10 09:15:29 +00:00
Ralf Becker
f97f223026
* CalDAV/Calendar: fixed invalid ics file for alarm exactly at the event
2014-02-10 08:53:16 +00:00
Ralf Becker
ca334ad13b
moving egw_preferences (handler to call preferenes, acl or categories) from jsapi.js to egw_preferences.js show_preferences() method
2014-02-07 14:04:12 +00:00
Ralf Becker
899c04abb5
using correct bit not just any overload setting
2014-02-07 14:02:48 +00:00
Ralf Becker
1b9c5d1363
display configuration with et2 like [save] [apply] [cancel] buttons, incl. old eTemplate apps
2014-02-05 16:25:35 +00:00
Ralf Becker
84d20661c2
fixed problem reported by Pedro Ribeiro
2014-02-04 13:50:23 +00:00
Ralf Becker
327123a588
preparing to use egroupware with mbstring.func_overload=0 by using mb_(strlen|substr) where necessary and providing an implementation for mb_*, if mbstring is not available
2014-02-03 19:57:50 +00:00
Hadi Nategh
7f222b165d
Remove "BLACK DIAMOND SUIT" character from global categories
2014-02-03 09:19:59 +00:00
Ralf Becker
a7724dc6e5
remove Expires header from egw_session::cache_control(true), so have same behavior as session_cache_limiter("private_no_expire")
2014-01-28 15:06:47 +00:00
Ralf Becker
60e3037bf8
* CalDAV/Resources: fixed only first N resources were available in CalDAV (N = common preference how many entries to show)
2014-01-28 14:44:52 +00:00
Ralf Becker
d40025f732
allow to specify app for redirects (for Stylite or Pixelegg template)
2014-01-28 11:00:39 +00:00
Ralf Becker
55df2f5bb3
fix typo causing common::show_date to only work with default $adjust_to_usertime = true
2014-01-28 09:52:19 +00:00
Hadi Nategh
fbccbb87a3
Fix wrong styling in egw_tail log
2014-01-28 08:33:28 +00:00
Ralf Becker
99ce5b41f9
allow to optionally specify app for redirect instead of always using current app
2014-01-27 16:28:39 +00:00
Hadi Nategh
ea20648d39
Remove inline-scripts from egw_tail. Additionally, add a new library to jsapi related to egw_tail
2014-01-27 14:29:24 +00:00
Ralf Becker
8b3b5c84fc
fixed can NOT unset last (forced) preference of an app, also fixed not working delete_(user|group) code
2014-01-23 12:33:25 +00:00
Ralf Becker
d20ce47a8d
allways add "account_lid" to order of accounts, as groups only have that, also at ASC/DESC sort to each order criteria
2014-01-21 17:18:29 +00:00
Ralf Becker
ad04ba821d
allways add "account_lid" to order of accounts, as groups only have that, also at ASC/DESC sort to each order criteria
2014-01-21 17:15:08 +00:00
Ralf Becker
3418b002bf
move smbhash class to sambaadmin app, which is only user of it
2014-01-19 10:37:07 +00:00
Ralf Becker
6f5fea84f3
remove not used sessions_db class, was never converted to new egw_sessions
2014-01-19 10:30:23 +00:00
Ralf Becker
f07e51790a
removed outdated xmlrpc and soap service, it is off by default since couple of versions
2014-01-19 10:28:06 +00:00
Ralf Becker
6d87d0c1cf
remove never used rssparser from API
2014-01-19 10:27:15 +00:00
Ralf Becker
04b6349044
remove not used old fpdf stuff
2014-01-19 10:26:09 +00:00
Ralf Becker
192a0382ef
remove not used old fpdf stuff
2014-01-19 10:24:41 +00:00
Ralf Becker
4128514f04
removed outdated xmlrpc and soap service, it is off by default since couple of versions
2014-01-19 10:22:38 +00:00
Ralf Becker
edd07a9729
removed outdated xmlrpc and soap service, it is off by default since couple of versions
2014-01-19 10:19:49 +00:00
Ralf Becker
28673080f1
remove old API interserver class, drop its table and commented out functionality from admin
2014-01-19 09:54:14 +00:00
Ralf Becker
156000a5d5
remove not used http class
2014-01-19 09:41:45 +00:00
Ralf Becker
1d7e097ca3
remove not used PclZip class
2014-01-19 09:41:26 +00:00
Ralf Becker
c51337bdb5
removed old db class, which is since many version only extending egw_db class
2014-01-19 09:32:55 +00:00
Ralf Becker
6de6114e22
remove old API browser class, apps only used content_header method with is available as html::browser_header() with identical signature
2014-01-19 09:30:33 +00:00
Ralf Becker
5a8b145b7f
fixed caching in a couple of places:
...
- user.php was not reloaded if (session-)preferences changed eg. language via select-box in login, because we used Expires header, but did not force a different url
- (user|config|images).php now has etag on url, to force reload by browser as we use an Expires header (changed images still need Admin >> clear cache to rebuild image cache)
- preferences are now loaded via a cachable GET request
2014-01-18 17:43:15 +00:00
Klaus Leithoff
8276a2a448
fix for problem with style fragments on triggering mail compose build in html validation
2014-01-18 17:02:29 +00:00
Ralf Becker
496c34614d
switch on private (browser only) caching for read mail bodys, plus fix to switch it on after session was started
2014-01-18 14:52:47 +00:00
Ralf Becker
7879e7ac2e
disabling choosen by default, as we did in et2
2014-01-18 11:08:06 +00:00
Ralf Becker
bcba09973f
pass an id to _add_topmenu_info_item, so templates can use that to generate an id for each div
2014-01-17 09:23:23 +00:00
Ralf Becker
699b614ac1
re-adding cache buster to javascript urls, if debug_minify=True
2014-01-14 17:59:33 +00:00
Nathan Gray
16c922c199
Pay attention to user application permissions when going through link registry.
...
Fixes not available applications registering conflicting mimes with allowed applications.
2014-01-14 17:16:08 +00:00
Nathan Gray
ae491c0810
Enable symlinking VFS files to not yet existing entries
2014-01-14 12:11:13 +00:00
Ralf Becker
57240d4e8a
fixed typo causing preferences not to be deleted, when users or groups get deleted
2014-01-14 11:53:53 +00:00
Ralf Becker
3bef4b2a26
* Tracker: dropping unique index(es) on escalations to not limit creating same escalations eg. on different queues
...
Was previously done by modifying index to contain more columns in update, but not new installations.
Now droping all existing unique indexes completly.
2014-01-14 11:06:31 +00:00
Ralf Becker
b08b507edb
fix egw_link::link to accept an array of links as 3. parameter, even if we dont have an $id1 yet
2014-01-13 17:52:19 +00:00
Nathan Gray
71f0fcdda0
Implement refresh type 'update' to _only_ update the data of a row - sorting is not considered, so make sure to use 'edit' if sorting might be affected.
2014-01-13 09:40:23 +00:00
Ralf Becker
4c105718a8
fixed uncaught exeption "Serialization of Closure is not allowed", when minifying is enabled
2014-01-11 19:32:38 +00:00
Ralf Becker
8c9034b3e9
using now 3 minified and concatinated javascript file-bundles:
...
1. api: egw, jquery, old jsapi and egw_json plus its dependences
2. et2: etemplate2.js plus dependencies
3. jdots: files from Stylite or new pixelegg template
all other javascript files are loaded on there own.
Bundle-configuration is dynamicly created and cached.
EGw configuration allows to disable minifying and concatination of javascript and css files for deverloping purpose
or to just concatinate but not minify them aka "debug".
2014-01-11 18:49:51 +00:00
Ralf Becker
ee378ec6b9
Remove all "use strict" as we have a mixure of strict and non-strict code (mostly externals libs)
2014-01-11 18:39:55 +00:00
Ralf Becker
f49cdf4d85
update minify to version 2.1.7 and reapplying our patches r40512 and r45055
2014-01-11 16:39:17 +00:00
Ralf Becker
942f54b4de
remove no longer used wz_dragdrop
2014-01-11 12:59:31 +00:00
Ralf Becker
3fe9c78c26
do NOT load egw.js a second time via minifyier
2014-01-10 16:58:50 +00:00
Ralf Becker
e3dc74eef6
enabling minifying of javascript again and added new option to debug concatination by setting debug flag for minify
2014-01-10 16:08:13 +00:00
Ralf Becker
6927f61614
quieten permanent error-log
2014-01-10 09:01:41 +00:00
Ralf Becker
400240f1e4
caching translations for 10days and changing translation url, when translations are changing --> saves server-roundtrip for each translation
2014-01-09 15:32:07 +00:00
Ralf Becker
90edb55ec5
add async include and et2 render times to page-generation-times shown
2014-01-09 12:20:13 +00:00
Ralf Becker
faecfb326b
* CalDAV/calendar: fixed permanent auth request in iCal, if accountselection is set to "selectbox with groupmembers" and rights granted from group without being a member
...
expand-property report now ignores the url instead of throwing an exception
2014-01-07 17:32:34 +00:00
Ralf Becker
c5191e3e01
* API/Admin: fixed SQL error on repairing filesystem, if one of required directories has wrong permissions
2014-01-07 09:55:07 +00:00
Ralf Becker
f075452ee3
first try of svg support: prefer svg over other image type for all browsers but IE<9
2014-01-03 18:49:24 +00:00
Hadi Nategh
1d14ecc80f
Remove "drag-and-drop" and "IE dropdownmenu hack" from the common preferences
2013-12-19 10:19:14 +00:00
Ralf Becker
8ad1e7ed20
get navigation-calendar to use egw_link_handler too, so listview does not reload top window
2013-12-18 05:23:45 +00:00
Nathan Gray
9bb37f5ca0
Add IDs to topmenu items
2013-12-17 20:21:48 +00:00
Nathan Gray
a79f7b87a6
Continue moving most favorite functionality from favorite widget into framework. Favorite widget now uses framework.
2013-12-12 23:45:09 +00:00
Ralf Becker
01adf460f3
silently upgrade old calendar favorites
2013-12-12 22:25:56 +00:00
Nathan Gray
0d3a7b73cf
Reorder CSS inclusion so theme can override jQuery-UI
...
eTemplate2 does it right automatically, but it also needs to be done in framework, because framework included etemplate2.css
2013-12-12 18:03:23 +00:00
Ralf Becker
2de3cdb780
fix encoding of favorites, so they can eg. contain single quotes
2013-12-12 02:40:31 +00:00
Nathan Gray
72c37e0849
non-et2 Favorites work in progress
...
Handle states that are id_data objects for egw.open()
2013-12-06 23:12:05 +00:00
Nathan Gray
d097a0bfa1
non-et2 Favorites work in progress
...
New states now added to list immediately, can delete states
2013-12-06 21:26:55 +00:00
Nathan Gray
79498c5ae5
non-et2 Favorites work in progress
...
Can now save & restore state. Still some UI needed, not fully integrated with et2 favorites.
2013-12-06 18:24:29 +00:00
Ralf Becker
b2c563e5aa
restoring current app/tab, if pressing save or cancel, to do so let server know which is current app and run under that appname (otherwise redirect will happen to currently views app
2013-12-06 00:02:16 +00:00
Nathan Gray
cfefedc8f7
non-et2 Favorites work in progress
...
Add current link shows popup with state details.
2013-12-05 23:22:54 +00:00
Klaus Leithoff
50279607a6
only try replacement loading of classes, if there is a replacement available; if defaultimap, load emailadmin_oldimap
2013-12-05 09:23:58 +00:00
Ralf Becker
1ee480eaa3
remove configurable image-type preference in favor to hardcoded one always prefering png over gif, also removed all .gif images which have a png counterpart
2013-12-05 02:04:59 +00:00
Ralf Becker
9cba54fb63
calendar state handling via set/getState methods in calendar app.js
2013-12-04 23:28:31 +00:00
Klaus Leithoff
dd5ac9d70f
* API/CKEditor: update to CKEditor Version 4.2.3
2013-11-28 09:41:31 +00:00
Ralf Becker
dbd15105e0
* CalDAV/CardDAV: do NOT use Content-Length header, if zlib.output_compression is enabled, fixes problems with iOS7 eg. eTask app
...
Content-Length is size AFTER applying transfer encoding which compression is, as compression is done in PHP outside our control, we only set wrong (to big) size
2013-11-20 14:12:47 +00:00
Ralf Becker
c68ae86a18
fixed check for template specific tree-images-directory in html::tree, jdots was using it, without having one
2013-11-18 22:05:04 +00:00
Ralf Becker
5dc6ae9728
remove inline script from login page: using html5 autofocus, instead of inline focus() and no chosen
2013-11-18 16:40:51 +00:00
Ralf Becker
2a52826ad2
loading jquery.js for login screen too
2013-11-18 16:23:12 +00:00
Ralf Becker
65b3cee7ab
fix ckeditor config to allow string with css unit, also added some docu
2013-11-16 16:08:35 +00:00
Ralf Becker
8e69433829
use template specific images for foldertree, use "template" handler for all calls to template/framework object, NOT instanciating a new one using eg. a parent class
2013-11-15 16:28:24 +00:00
Ralf Becker
82d3ac1d2e
fixed not working close of popups after handler change
2013-11-15 13:03:09 +00:00
Ralf Becker
9643d31dd1
loading template/theme and print css last, so they can overwrite anything
2013-11-14 16:23:50 +00:00
Ralf Becker
f51f7f5731
allow to use "default" or "forced" as parameter to preferences::set_account() to load default or forced preferences
2013-11-14 15:33:12 +00:00
Ralf Becker
74dd9f0e02
allow templates packed as apps to replace login screen template by setting it as default template (without setting it in header.inc.php)
2013-11-14 13:52:50 +00:00
Ralf Becker
6ae755b1aa
added pixelegg template, to also delete image cache of it
2013-11-12 09:29:44 +00:00
Ralf Becker
6195a36a1a
uncommited changes (class is not used anyway)
2013-11-11 08:32:46 +00:00
Ralf Becker
af8f7b2c35
uncommited changes
2013-11-11 08:31:33 +00:00
Ralf Becker
d4d0c13876
static method can not use $this, there is no need to anyway
2013-11-11 08:28:03 +00:00
Ralf Becker
b1f5649451
fixed egw_min_php_version to 5.3
2013-11-11 08:27:10 +00:00
Ralf Becker
aeced1ddae
always check for read access too
2013-11-11 08:23:14 +00:00
Ralf Becker
e4ee379138
fix wrong sql produced by column_data_implode with param $use_key="VALUES" and numerical indexes in data
2013-11-11 08:21:54 +00:00
Ralf Becker
d7a1b12d96
normalize ./ away
2013-11-11 08:19:00 +00:00
Ralf Becker
12e8a3bbcd
iterator to run arbitrary callbacks on a select
2013-11-08 19:54:08 +00:00
Ralf Becker
1dd3ad5e0a
fixed ckeditor wont start with NOT expanded toolbar
2013-11-04 10:13:28 +00:00
Ralf Becker
b20bd49817
* CalDAV: fixed wrong http-status for delete in inbox and announce sync-report on inbox, so clients using it get events only once
2013-10-31 11:29:22 +00:00
Ralf Becker
e94502515d
* Admin/Preferences: changepassword hook was called twice
...
fixed by calling in now from API and not on every location in application code changing a password
2013-10-25 19:24:01 +00:00
Klaus Leithoff
892f90205a
work around ckeditor problem with default (kama) skin, by falling through to moonocolor
2013-10-24 14:42:40 +00:00
Ralf Becker
c8f1e75165
PSR-0 autoloading eg. for PEAR or Horde classes
2013-10-22 08:25:55 +00:00
Klaus Leithoff
210a145747
support additional moonocolor skin
2013-10-21 11:33:39 +00:00
Ralf Becker
d63cf889b4
silenced permanent error_log and fixed a typo
2013-10-18 14:31:46 +00:00
Klaus Leithoff
6e0448cb62
fix broken scayt and spellcheckerbuttons in config for ckeditor
2013-10-17 15:09:56 +00:00
Ralf Becker
6e76361736
open all sidebox admin link in admin vi admin.admin_ui.index loader
2013-10-15 16:53:43 +00:00
Ralf Becker
319a503c90
fixed broken install under PostgreSQL caused by PHP Fatal error: Call to a member function fetch() on a non-object
2013-10-15 11:42:28 +00:00
Ralf Becker
b0219a682f
reverted accidently commited phpgwapi changes
2013-10-15 09:36:23 +00:00
Ralf Becker
0ca55a1103
* SiteMgr: fixed not working anonymous user and using now a random password
2013-10-15 09:25:49 +00:00
Ralf Becker
38504680b7
setting CSP attributes needed by CKeditor now automatic when egw_ckeditor_config::get_ckeditor_config(_array) get called
2013-10-14 10:42:36 +00:00
Nathan Gray
bab4adf6d9
Update toolbar definitions to match new format
2013-10-10 11:55:29 +00:00
Klaus Leithoff
cce86e346e
silence permanent error log
2013-10-10 09:25:04 +00:00
Klaus Leithoff
77d28bad75
allow to set config via json_encoded string for purify wrapper
2013-10-10 09:23:55 +00:00
Ralf Becker
0bb8093426
fixed translations on client-side: server sends now currentapp and langRequire to client, which uses that to translate phrases, langRequire is only stored in egw object for matching app-name and window!
2013-10-07 17:00:03 +00:00
Ralf Becker
ffc506561a
* API: fixed not working session encryption, by switch back to previous MCrypt algorithm and mode
2013-10-07 07:22:50 +00:00
Ralf Becker
43e1bfcc12
switching on Content-Security-Policy: script-src 'self' 'unsafe-eval' for all templates, old non-et2 apps can call egw_framework::csp_script_src_attrs('unsafe-inline') to enable inline scripts in their scope, et2 does it for CK editor which does not support CSP currently and old etemplate does it for all apps using it
2013-10-05 13:33:28 +00:00
Ralf Becker
f8a0db06fc
completly remove preferences menu from sidebox and tiled preferences index in favoir of app-sensitive entries in top-menu
2013-10-03 09:23:18 +00:00
Ralf Becker
6f162f144e
add context sensitive link to ACL/grant access to top-menu, same is to be happen for cats and preferences itself and preferences in sidebox will be removed
2013-10-02 16:29:08 +00:00
Ralf Becker
7cf6500f92
docu update
2013-10-02 10:33:44 +00:00
Ralf Becker
53880e2063
to mitigate html download with CSP: no blacklisting just IE, only whitelist tested browsers and versions
2013-10-01 09:50:23 +00:00
Ralf Becker
bc9c486e03
some small fixes to get through a view more tests for managed attachments
2013-09-25 12:37:42 +00:00
Ralf Becker
d4c2ed3f65
stop CalDAVTester from creating one log per test-step
2013-09-25 07:46:02 +00:00
Ralf Becker
ba73deee9f
fixed typo in ATTACH property "FMTTYP(E)" and added xml error bodys for wrong managed-id parameter (more to follow)
2013-09-25 07:11:27 +00:00
Ralf Becker
86649cd1e1
full implementation of draft-murchison-webdav-prefer-05, incl. return=representation for 412 conflicts
2013-09-25 07:09:44 +00:00
Ralf Becker
0601d40bd3
fix Prefer header to use return=(minimal|representation) instead of older draft dash, enable add-member property, and add Location header to action=attachment-add
2013-09-24 12:29:17 +00:00
Klaus Leithoff
45326fa484
on async job write, make sure that possible next attribute in data is in sync with job[next]
2013-09-24 10:22:03 +00:00
Ralf Becker
edd4cc49ca
basic managed attachment support, tested with iCal from OS X mountain lion
2013-09-23 13:39:28 +00:00
Ralf Becker
1752f7defd
basic managed attachment support, tested with iCal from OS X mountain lion
2013-09-23 10:21:31 +00:00
Klaus Leithoff
5e425398fa
change convertHTMLToText behavior, regarding the replacing of CRLF or LF to single space; now removing them completely, when text to be processed is regarded to be html
2013-09-18 12:14:59 +00:00
Ralf Becker
b8341e48a1
mitigate risk of html downloads by using Content-Security-Policy header or Content-Disposition: attachment for IE
2013-09-12 18:49:07 +00:00
Ralf Becker
9523ba79c2
removed not used assignment
2013-09-12 08:31:10 +00:00
Ralf Becker
855c04cb2c
use secure and httponly cookies by default, secure cookies can be switched off in Admin >> site configuration, if required for sitemgr
2013-09-11 13:06:00 +00:00
Ralf Becker
eb06a2adee
setup uses now sessions too and password-hashes in header.inc.php use most secure hashing type
2013-09-11 11:35:20 +00:00
Ralf Becker
1590d02816
new egw_framework::message($msg, $msg_type="success") method and fixing nextmatch filter-change to return app-header
2013-09-05 11:53:25 +00:00
Ralf Becker
aaf0a7491d
silence warning be defining the constants
2013-09-02 13:40:40 +00:00
Klaus Leithoff
d5c2a03f51
revert changes introduced with r43681, as issue is fixed in bo_tracking and handling of GLOBALS[info][user][account_id]
2013-09-02 11:34:38 +00:00
Ralf Becker
3d20422177
not creating references to ['egw_info']['user'], as bo_tracking and other async service stuff has problems to change between different user enviroments
2013-09-02 10:43:16 +00:00
Klaus Leithoff
7744905ba8
try to resolve a use-session-stored-data related problem; make sure account_id and prefs are restored after send_notification
2013-08-30 12:57:51 +00:00
Klaus Leithoff
f5e00e4bad
add (and use) preg replace callback for mailto link to text transformation
2013-08-29 10:39:08 +00:00
Ralf Becker
a9a8e65ece
new parameter to be able to use get_user_applications() in admin and class-constants for ACL-rights, can be used instead EGW_ACL_* defines
2013-08-28 13:27:53 +00:00
Ralf Becker
aa8a848871
optional parameter for egw_framework::window_close() to specify an alert message, which get shown/alerted, before closing the window
2013-08-26 10:24:11 +00:00
Ralf Becker
46f81649eb
also fix calls to deprecated ajaxResponse class to use egw_json_response singleton, should be fixed in code for current apps
2013-08-25 15:14:19 +00:00
Ralf Becker
38798b872d
Force use of singleton: $response = egw_json_response::get(); not using it causes response being wrapped in an other response
2013-08-25 12:42:55 +00:00
Ralf Becker
b2ba685edd
remove inline javascript from idots and jerryr templates
2013-08-21 20:22:53 +00:00
Ralf Becker
73aa652c41
missing egw.js from last commit and egw_framework::window_focus() method
2013-08-20 13:25:36 +00:00
Ralf Becker
1c4f65120c
new egw_framework methods refresh_opener and window_close to call egw_refresh on opener or close popup window in a content security save way
2013-08-20 12:06:41 +00:00
Ralf Becker
ec6d873941
let PHP Warnings look exactly like original ones, but with a backtrace
2013-08-15 10:15:13 +00:00
Ralf Becker
c806da58ce
give a trace for PHP (User) Warnings
2013-08-14 08:09:51 +00:00
Klaus Leithoff
27149b237f
play around with catching the smtp error of smtp class, as it is the one that has the info about the error
2013-08-07 09:20:16 +00:00
Klaus Leithoff
a7be5a026e
move reset-call of smtp to phpmailer class, as it is the one that throws exceptions, and stops action
2013-08-07 08:34:00 +00:00
Ralf Becker
118657ddee
using etemplate_new::ajax_proecess_content to allow to have etemplate still extend etemplate_old, making etemplate_new autoloadable
2013-08-06 18:24:30 +00:00
Klaus Leithoff
54b2596ff8
send reset command after failure while failing when adding addresses
2013-08-06 13:51:39 +00:00
Ralf Becker
48fd2113f3
some long running operations, eg. merge-print, run into situation that DB closes our separate sqlfs connection, we try now to reconnect once
2013-08-05 14:59:31 +00:00
Ralf Becker
0f37c16cd8
using correct case: To, Cc and Bcc
2013-08-05 14:56:39 +00:00
Klaus Leithoff
d22f24666b
ClearAllRecipients should only clear recipients, not From, ReplyTo and such
2013-08-05 13:44:44 +00:00
Ralf Becker
243bb169a2
need to reimplement Clear methods from parent, to also clear our private addresses
2013-08-05 08:46:29 +00:00
Ralf Becker
6fe4085a11
fixed wrong condition only giving a location header if requests fails, not if it succeeds
2013-08-02 19:28:38 +00:00
Ralf Becker
207b7de248
instead of sending nothing, which gives a parse error on client-side, send a valid, empty response
2013-08-01 12:28:28 +00:00
Ralf Becker
6f39b0618d
using dhtmlxtree from sources instead of codebase directory, as does et2_widget_tree, to not double load it and causing 2. load to overwrite extensions from 1.
2013-08-01 11:19:14 +00:00
Ralf Becker
05765db6ca
* Admin/Filemanager: added filesystem check and repair for missing or broken required directories /, /apps and /home
2013-08-01 07:53:20 +00:00
Ralf Becker
8ce9969ece
we need to double encode (html::htmlspecialchars( , TRUE)), as otherwise we get invalid json, eg. for quotes, fixes not working display in filemanager for some directories containing directories with quotes in their name
2013-08-01 06:36:18 +00:00
Nathan Gray
afa7a73f0a
Fix chosen sizes using new width attribute for account multi-select
2013-07-26 15:08:17 +00:00
Ralf Becker
200a8860bf
* eTemplate/all apps: (silently) limit number of links shown to 1000 newest, to not run into memory_limit or max_execution_time and assuming noone will scroll further down anyway
2013-07-26 09:38:38 +00:00
Nathan Gray
f65680a7ae
Add CSS to better match egw. Fix chosen sizes using new width attribute. Not perfect, but at least never too small.
2013-07-25 20:28:32 +00:00
Ralf Becker
8e85c86f8b
* Async service/Backup: updating job to next scheduled time BEFORE running it, to copy with jobs running longer then async frequency of 5min, eg. backup
2013-07-25 13:11:07 +00:00
Ralf Becker
59c683c359
removed ancient "mark untranslated strings with *" site configuration, as it is unnecessary and breaks links-stream-wrapper and WebDAV
2013-07-25 12:18:08 +00:00
Ralf Becker
71676f982a
fixed not working special char detection
2013-07-25 07:21:35 +00:00
Ralf Becker
8ec5425c5a
disable minify-ing of javascript, until I find time to fix it, as it stalls testers (css still get minifyed, if debug minify is off in site config)
2013-07-24 07:42:27 +00:00
Ralf Becker
6e6b2b7b0a
reverted "no need for RegExp replace", as javascript only replace first occurence, if a string given
2013-07-23 14:41:53 +00:00
Ralf Becker
8242d40d1e
no need for RegExp replace
2013-07-23 11:49:16 +00:00
Ralf Becker
58949008f9
disable outer scrollbar, eg. if rendering time is swichted on
2013-07-23 11:33:23 +00:00
Klaus Leithoff
c4caefc9e9
suppress warning on searching for active members
2013-07-23 10:59:56 +00:00
Ralf Becker
16191d4db4
rendering quick-add menu on clientside and content-security safe, thought not yet in idots template, also removed not used inline javascript from idots
2013-07-22 19:20:13 +00:00
Ralf Becker
4ed52a2b16
get notifications-popup ready for content-security, install as object in app.notifications and use data-poll-intervall of script tag to pass poll frequency
2013-07-22 13:29:20 +00:00
Nathan Gray
67d6775f54
Use htmlspecialchars to escape data-attributes
2013-07-19 18:03:47 +00:00
Ralf Becker
5e3c0192d3
$extra parameter for framework->header()
2013-07-19 17:07:05 +00:00
Ralf Becker
33ac096fdf
enabled and enhanced dependency tests so they can be used to display full dependencies of one or more files
2013-07-19 15:24:55 +00:00
Ralf Becker
f55a668bdf
include user-data and common prefs like we already do it with eg. server config
2013-07-19 15:22:00 +00:00
Ralf Becker
d16c426fb6
first step towards content-security by passing parameters to egw.js script via data-attributes of script tag instead of using inline scripts in page
2013-07-19 08:45:26 +00:00
Ralf Becker
9af953e2b1
fixed accounts::search sometimes returning too many lines
2013-07-17 13:14:08 +00:00
Ralf Becker
792f1b26cc
replacing egw.LAB with egw_LAB, as egw object is shared by all iframes and popups, while LAB has to work on document
2013-07-17 12:47:21 +00:00
Ralf Becker
94926467d2
always check with "passwd_forbid_name" enabled, if setting of password failed
2013-07-16 14:57:06 +00:00
Ralf Becker
10436d5e41
fixed not being able to switch "forbid password to contain name" off again, after it has been switched on (caused by name "passwd_forbid_name")
2013-07-16 14:50:12 +00:00
Klaus Leithoff
2bdcd29582
pass acount_id to crackcheck, as it is required for crackcheck rule validation forbid_name
2013-07-16 10:42:31 +00:00
Ralf Becker
d48e8f4d84
* PostgreSQL: fix for SQL error eg. on update from 1.8.001 to 1.8.004 from 9.1 on
2013-07-16 06:47:54 +00:00
Ralf Becker
b54aef66e4
need to use own authentication method, to be able to auth user forced to change password and need to always recheck flag, if user are forced to change password, as otherwise he will be prompt again after changing it
2013-07-15 20:29:49 +00:00
Ralf Becker
526c938eec
* Active Directory: allow to do a forced password change in EGroupware and handle reset of that flag for Samba4 too
2013-07-15 20:01:01 +00:00
Ralf Becker
5f74357963
* WebDAV/CalDAV/CardDAV: fixed basic authentication via redirect-rule to use $_SERVER["REDIRECT_HTTP_AUTHORIZATION"] as it is used by newer Apache versions
2013-07-15 11:06:45 +00:00
Ralf Becker
e90a6e1d42
fixed again not working new account creation under AD agains Win2008r2
2013-07-15 08:10:03 +00:00
Ralf Becker
6898ee9cdb
* Admin/Preferences/Active Directory: more understandable password policy errors and using windows defaults only, if admin has not configured something else
2013-07-14 13:05:24 +00:00
Ralf Becker
6e6835ca8f
disable "account_lid" input, if backend (eg. AD) does not allow changing it
2013-07-13 08:34:04 +00:00
Ralf Becker
cb523f8400
* Admin/Active Directory: fixed not working display, setting and removing of "must change password upon next login"
2013-07-13 07:50:36 +00:00
Ralf Becker
5caa242314
* Admin/Active Directory: create new users with CN=<username> as Windows does and allow to configure profilePath, homeDirectory, homeDrive and scriptPath for new users
2013-07-09 15:26:59 +00:00
Klaus Leithoff
16014f8067
* API: fix for wrong (unexpected array) type passed in check_list
2013-07-08 08:04:41 +00:00
Hadi Nategh
86dfe42104
replace no longer existing depricated egw_info->user email and fullname
2013-07-04 17:45:20 +00:00
Ralf Becker
76ab4eee25
return account_expires and account_primary_group via accounts::search
2013-07-03 16:26:18 +00:00
Ralf Becker
4850efed1e
fix js error, when chosen is not loaded, eg. on admin >> manage accounts
2013-07-02 12:37:01 +00:00
Ralf Becker
bca1712229
fixed allowed memory size exceeded error, if trying to read history from a ldap or ads contact with an id starting with a letter, did an unlimited query for all history-log entries of addressbook
2013-06-29 16:44:55 +00:00
Ralf Becker
2702d01b34
* Admin/API/ADS: account creation did not set initial password
2013-06-29 09:30:22 +00:00
Ralf Becker
8325352e88
* Admin/Preferences/ADS: give explicit error, that AD requires SSL or TLS to change passwords (not just failing with unspecific error)
2013-06-29 08:51:02 +00:00
Ralf Becker
5e0c017129
remove old default of 7 for password length, as it allways checks for that default otherwise
2013-06-28 16:20:01 +00:00
Ralf Becker
287abb2b38
adding again error message and number from DB to exception thrown in case of SQL errors, also adding a new method to abstract MySQL group_contact for PostgreSQL 8.4+
2013-06-28 10:50:42 +00:00