changelog.txt 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503
  1. CardDavMATE Changelog
  2. NOTE: if you are interested in integrated version of CardDavMATE and CalDavZAP (our CalDAV web client) please use InfCloud - http://www.inf-it.com/open-source/clients/infcloud/
  3. version 0.13.1 [2015-09-22]:
  4. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  5. - changed login screen autocomplete behaviour - we do not prevent browsers from remembering login/password anymore
  6. - fixed a bug related to vCard PHOTO attribute processing (and the related "The contact on the server was changed and reloaded!" message)
  7. version 0.13.0 [2015-09-16]:
  8. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  9. - note: if you use a server with cross-domain setup see the modified Access-Control-Allow-Headers and Access-Control-Expose-Headers in readme.txt (or misc/config_davical.txt or misc/calendarserver.diff); you MUST update these headers, otherwise the client will NOT work
  10. - configuration - added globalEnableRefresh option which enables/disables the new "refresh all resources" icon in the left application menu (disabled by default)
  11. - configuration - added globalCollectionDisplay, globalCollectionSort and globalContactDataMinVisiblePercentage - these options allow to configure our new fully customizable wide contact list (see config.js)
  12. - added Chinese localization (zh_CN) - thanks Fandy
  13. - added shift+login shortcut to ignore settings stored on the server and use the default settings (this functionality was added long time ago, but I forgot to mention about it)
  14. - added support for "Prefer: return=representation" (and related "Preference-Applied: return=representation") for PUT requests (see http://tools.ietf.org/html/rfc7240); this change REQUIRES update of Access-Control-Allow-Headers and Access-Control-Expose-Headers if cross-domain setup is used
  15. - added support for automatically expanding fields in the editor (e.g. if you enter a phone number, another phone number field is automatically expanded)
  16. - added support for multiple street components in a single address field (additional fields are automatically expanded)
  17. - added an option to specify a remote URL as photo source - use shift+click on a photo box to add an URL
  18. - added check for unsupported XML 1.0 characters in user entered data - these are replaced by a space character (to prevent client and/or server side parsing errors)
  19. - added title with version number for the software name/description (login screen)
  20. - fixed vCard line folding (RFC2426 - section 2.6)
  21. - changed version checking - use internal build number for software version comparison to support update notification also for beta and rc builds
  22. - changed initialy enabled collections behaviour - if there are no enabled collections during the login, enable all available collections owned by the logged user
  23. - changed format and comments in config.js
  24. - changed storing of user settings (PROPPATCH request) - no server request will be made if there is no change in settings
  25. - updated jQuery to 2.1.4
  26. - updated localizations - thanks Niels Bo Andersen [da_DK], Marten Gajda [de_DE], Damian Vila [es_ES], Gabriela Vattier [fr_FR], Luca Ferrario [it_IT], Muimu Nakayama [ja_JP], Johan Vromans [nl_NL], Selcuk Pultar [tr_TR], Александр Симонов [ru_RU], Serge Yakimchuck [uk_UA]
  27. - other improvements and fixes
  28. version 0.12.1 [2015-03-16]:
  29. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  30. - note: you NEED to enable "mod_headers" in Apache (for other servers see your server documentation) which is used to generate proper HTTP headers (required for correct support of HTML5 cache in browsers); the previously used mod_expire is not longer used (see the changelog entry below)
  31. - added support for absolute collection URLs returned in PROPFIND request
  32. - fixed HTML5 cache related problems (especially in Firefox) by returning "Cache-Control: max-age=0, must-revalidate, no-cache, no-transform, private" header instead of "Cache-Control: max-age=0" - this fix requires enabled "mod_headers" (you can disable the previously used "mod_expires") in Apache - for more details see .htaccess
  33. - updated jQuery-UI to 1.11.4
  34. - other improvements and fixes
  35. version 0.12.0 [2015-01-26]:
  36. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  37. - note: this release contains new, changed and also removed configuration options (always use the latest config.js)
  38. - configuration - removed showHeader option from globalAccountSettings, globalNetworkCheckSettings and globalNetworkAccountSettings - it is incompatible with new functionality
  39. - configuration - removed globalResourceHeaderShowLogin option - it is replaced by much more flexible hrefLabel option in globalAccountSettings and globalNetworkCheckSettings (see config.js)
  40. - configuration - removed syncInterval option from globalAccountSettings and globalNetworkCheckSettings - detection of sync-token changes is now performed by ONE request instead of N (number of collections) - use globalSyncResourcesInterval instead
  41. - configuration - removed crossDomain and withCredentials options from default globalAccountSettings, globalNetworkCheckSettings and globalNetworkAccountSettings - both settings are still available but there is NO REASON to use them (crossDomain is detected automatically, and I've never seen anyone who understand when to use withCredentials /there is NO REASON to set it to true!/)
  42. - configuration - added globalGroupContactsByCompanies configuration option - used to group contacts by company/department name instead of simple alphabetical sort (default false)
  43. - configuration - added globalCrossServerSettingsURL configuration option - enable this option if your CardDavMATE installation is accessible from multiple URLs (URL1, URL2), otherwise settings (such as enabled/active collections) stored from the URL1 will be incompatible with settings stored from URL2
  44. - configuration - added globalAddrColorPropertyXmlns configuration option - used to define the namespace for addressbook-color property (see below)
  45. - configuration - changed default value for delegation option to true (in globalAccountSettings, globalNetworkCheckSettings and globalNetworkAccountSettings)
  46. - added Spanish localization (es_ES) - thanks Damián Vila
  47. - added Japan localization (ja_JP) - thanks Muimu Nakayama
  48. - added Russian localization (ru_RU) - thanks Александр Симонов
  49. - added Ukrainian localization (uk_UA) - thanks Serge Yakimchuck
  50. - MAJOR functionality and design changes (including the open source Roboto font)
  51. - MAJOR performacne improvements
  52. - major improvements and changes in the sychronization code
  53. - major readme.txt update with detailed descriptions of most common setup problems
  54. - added support for loading and unloading of user collections and delegated collections (delegation functionality)
  55. - added addressbook color functionality (we hope you will like the new approach :-))
  56. - added automatic photo resize functionality (no more photo size limit - we simply resize it in the browser)
  57. - added support for generic (Apple-like) date attributes (instead of fixed BDAY and ANNIVERSARY)
  58. - added support for 'headervalue' collection property (namespace: http://inf-it.com/ns/dav/) - useful for collection grouping
  59. - added new overlay with refresh button which is shown when cache manifest change is detected (it forces users to reload the page)
  60. - added support for LDAP binding in auth/ldap module (see auth/plugins/ldap_conf.inc)
  61. - added currently logged user into the page title
  62. - added misc/readme_baikal_sabredav.txt and misc/baikal-flat-0.2.7.diff to solve issues related to storing CardDavMATE (and also CalDavZAP) properties on SabreDAV and Baïkal - thanks Johannes Zellner
  63. - removed globalSearchAutoCleanup configuration option (it is no longer required)
  64. - updated auth module to reflect the latest changes in configuration options
  65. - updated jQuery to 2.1.3
  66. - updated jQuery-UI to 1.11.2
  67. - various fixes, optimalizations, improvements, visual updates and more
  68. version 0.11.1 [2013-07-26]:
  69. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  70. - added support for dynamic height of NOTE field - thanks http://www.jacklmoore.com/autosize/
  71. - added Turkish localization (tr_TR) - thanks Selcuk Pultar
  72. - updated Danish [da_DK] localization - thanks Michael Rasmussen
  73. - updated jQuery to 2.0.3
  74. - fixed incorrect detection of privileges for binded resources
  75. version 0.11.0 [2013-06-27]:
  76. - note: do not forget to execute the cache_update.sh script every time you update your configuration or any other file (otherwise your browser will use the previous version of files stored in HTML5 cache); alternatively you can update the cache.manifest manually - edit the second line beginning with "#V 20" to anything else (this file simple needs "some" change)
  77. - note: if you use DAViCal with cross-domain setup see the modified Apache configuration in misc/config_davical.txt (added Access-Control-Expose-Headers header)
  78. - note: if you use OS X Calendarserver it is recommended to re-patch your installation (added Access-Control-Expose-Headers header; see misc/readme_osx.txt)
  79. - note: this release contains new and also changed configuration options (always use the latest config.js)
  80. - configuration - globalCollectionSort, globalCollectionDisplay and globalContactStoreFN - removed equivalents for last (surname, lastname, family), middle (middlename) and first (firstname, given) for faster regex processing
  81. - configuration - added globalSettingsType option - set the destination for client settings on server (useful if your server not allows to store properties to "principal-URL" but allows to store them to "addressbook-home-set")
  82. - configuration - added checkContentType option into globalAccountSettings and globalNetworkCheckSettings - enables content-type checking for server response (only objects with proper content-type are inserted into interface) - if you cannot see data in the interface you may try to disable it
  83. - EXTREME performance improvements (especially for large collections)
  84. - added support for image editing by clicking to the image (it opens a file chooser)
  85. - added functionality to remember the latest selected addressbook (stored as DAV property on the server)
  86. - added support for html5 cache (fixes minor bugs when used offline after initial login)
  87. - added support for Cyrus server - thanks Ken Murchison
  88. - changed loading of collections - all collections are loaded immediately after login (required for future features)
  89. - changed XML requests (adds support for more servers)
  90. - changed LOCK support detection - it is detected using PROPFIND request instead of DAV header
  91. - fixed Firefox placeholder colors
  92. - fixed problem with PHOTO attribute - "PHOTO;BASE64:" is obsolete but now it is supported
  93. - fixed problem with removing categories using backspace if the editor is in "show" mode
  94. - fixed problem with duplicate IM values if vCards are edited by Android (or other) devices/editors
  95. - improved vCard processing performance (MAJOR improvements especially for large vCards with PHOTO)
  96. - improved processing of the PHOTO attribute value
  97. - updated jQuery to 2.0.2 (and related fixes)
  98. - updated jQuery-UI to 1.10.3 (and related fixes)
  99. - updated auth module to reflect the latest changes in configuration options
  100. - updated placeholder plugin to support the current version of jQuery (replaced .live(...) with .on(...))
  101. - updated localizations - thanks Marten Gajda [de_DE], John Fischer [fr_FR], Luca Ferrario [it_IT] and Johan Vromans [nl_NL] (note: Danish [da_DK] localization contains some untranslated strings)
  102. - updated misc/readme_osx.txt for OS X 10.8 (instructions to add CORS headers into Calendarserver used by OS X)
  103. - renamed misc/calendarserver_CardDavMATE.diff to misc/calendarserver.diff (the patch works also for CalDavZAP)
  104. - renamed misc/readme_lion.txt to misc/readme_osx.txt
  105. - LOT of other improvements and fixes
  106. version 0.10.1 [2013-02-21]:
  107. - note: this release contains new configuration option (always use the latest config.js)
  108. - configuration - added globalUseJqueryAuth option - use jQuery .ajax() auth or custom header for HTTP basic auth (default); set this option to true if your server uses digest auth such as Baïkal (note: you may experience auth popups on some browsers)
  109. - configuration - added delegation option into globalAccountSettings and globalNetworkCheckSettings (sets additional delegated resources - if true then delegation is enabled for all available resources; if false (default) then delegation is disabled; if an array of URL encoded resources or regexes (for example: ['/caldav.php/user/', '/caldav.php/user%40domain.com/', new RegExp('^/caldav.php/a[b-x].+/$', 'i')] then delegation is enabled for all specified resources
  110. - configuration - changed forceReadonly property proccessing - URL encoded collections and also regexes are now supported (see config.js)
  111. - configuration - date format is now predefined for each localization - if you want to use custom date format instead of predefined format (defined by localizations) use globalDatepickerFormat variable (commented out by default)
  112. - added support for fallback to PROPFIND if REPORT is not supported and server returns incorrect 403 error code (instead of 400 or 501)
  113. - added support for SOGO (it required only two minor bugfixes)
  114. - added title text for "Logout" and "Add Contact" buttons
  115. - fixed minor CSS problems (missing animations and icons during the drag&drop operations)
  116. - updated auth module to reflect the latest changes in configuration options
  117. version 0.10.0 [2012-12-19]:
  118. - note: this release contains new and also changed configuration options (always use the latest config.js)
  119. - configuration - added globalSearchAutocleanup (disabled by default) - it allows to enable automatic search filter cleanup on collection (not vCard group) change
  120. - configuration - changed globalDatepickerFormat default value from 'yy-mm-dd' to 'dd.mm.yy'
  121. - added write support for PHOTO attribute (frequently requested) - just drag your photo into the photo box - note: only photos with size up to 64KiB (65536 B) are accepted, bigger photos are silently ignored ("best" size for your photo: 164 x 183 px)
  122. - added Dutch localization (nl_NL) - thanks Johan Vromans
  123. - fixed major version checking bug
  124. - fixed invalid template usage for unsupported parameters
  125. - fixed X-ABLabel attribute matching (now it is case insensitive)
  126. - fixed country switching (if a user switches to different country after he entered the address fields, these are preserved)
  127. - fixed invalid addressbook list content if collection is changed with non-empty search filter and enabled globalSearchAutocleanup (note: it was enabled by default in previous versions)
  128. - fixed "undefined" text in addressbook list if N attribute value not uses full format
  129. - fixed "Error: 'unable to save': correct the highlighted invalid values!" error message (related to custom labels)
  130. - fixed country ordering for non-en_US localizations
  131. - fixed problem with editor image dimensions (if a vCard contains PHOTO)
  132. - fixed datepicker "Uncaught Unexpected literal at position" warning in the console log
  133. - fixed "add contact" button state when the editor is in "edit" mode
  134. - fixed translation of "Resources" string
  135. - fixed minor bugs in SVG images
  136. - improved search support - search is now possible by N [surname, firstname, middle name, prefix, suffix], NICKNAME, ORG, EMAIL and TEL attribute values (for TEL search use only numbers without spaces or other characters /leading '+' is supported/)
  137. - improved support for custom attribute types - if the custom value is already defined also as a standard value, then the standard value is used
  138. - improved parsing of very "exotic" vCards
  139. - updated jQuery to 1.8.3 (it fixes IE cross domain problems)
  140. - updated jQuery-UI to 1.9.1 (and related fixes)
  141. version 0.9.9 [2012-11-06]:
  142. - note: replaced custom headers in .htaccess by mod_expires options (you need to set "AllowOverride FileInfo Limit Indexes" for CardDavMATE directory and enable mod_expires in Apache /you can disable the previously used mod_headers/) - the client will also work without the .htaccess but browsers can/will cache the javascript files what can cause problems when you update your installation
  143. - note: this release contains new configuration options (always use the latest config.js)
  144. - configuration - added globalCollectionDisplayOrg (enabled by default) - it allows to choose which attribute value is used for "company contacts" (ORG or N/FN)
  145. - configuration - added globalDatepickerFirstDayOfWeek (default 1 => Monday) - it allows to set the first day of week for datepicker (see config.js)
  146. - configuration - added globalUriHandlerProfile - it allows to set profile URLs for X-SOCIALPROFILE (see config.js)
  147. - configuration - updated default globalNetworkCheckSettings and globalNetworkAccountSettings - fixed bug if you use full URL (with "/index.html" included)
  148. - added write support for custom labels (frequently requested)
  149. - added support for X-PHONETIC-FIRST-NAME and X-PHONETIC-LAST-NAME attributes (used by Apple clients)
  150. - added support for X-SOCIALPROFILE attribute (used by Apple clients)
  151. - added IE 10 support
  152. - design changes and MAJOR cross OS/browser CSS fixes
  153. - new login screen logo
  154. - rearrangement of options for "Related" attribute (more frequently used options are moved to top)
  155. - changed editor width - vCard editor is now wider (frequently requested)
  156. - disallow to drag a contact into contact group if the contact is already a member of that group
  157. - fixed parsing of very exotic vCards with "/" character in param values
  158. - fixed GUI bugs related to contact group drag&drop operations
  159. - fixed suggestion width for Categories
  160. - fixed Firefox "AddCategory" placeholder color (Firefox bug?)
  161. - LOT of other improvements and fixes (sorry, I am too lazy to write changelog entry for all changes :-))
  162. version 0.9.8 [2012-10-04]:
  163. - note: this release contains new and also changed configuration options (always use the latest config.js)
  164. - configuration - changed globalCollectionSort, globalCollectionDisplay and globalContactStoreFN options - string values are replaced by more flexible array values (see config.js)
  165. - configuration - added globalBackgroundSync (enabled by default) - support for synchronisation if browser window/tab is not focused (see config.js)
  166. - configuration - added globalResourceAlphabetSorting (enabled by default) - support for user defined resource (server account) sorting instead of forced alphabetical sorting /applicable only if more than one resource is configured/ (see config.js)
  167. - configuration - added forceReadOnly option into globalAccountSettings, globalNetworkCheckSettings and globalNetworkAccountSettings (sets the resource or list of collections as "read-only" - if true then the whole resource will be marked as "read-only"; if an array of collections /for example: ['collection1','collection2']/ then collections in the list will be marked as "read-only"; if null /default/, unset or unknown then real server detected privileges are used)
  168. - configuration - added new globalNetworkAccountSettings example (by default it refers to CURRENT_URL/auth/ subdirectory)
  169. - added support for simultaneously loaded collections (when switching to a different collection the previous collection is not unloaded - if you want back the previous behaviour use "var globalForceUnloadPrevCollection=true;" in config.js)
  170. - added support for remembering of the currently selected contact when switching to a different collection/contact group (when switching back, this contact is re-selected)
  171. - added support for automatic scrollbar move when a collection/contact group is clicked to ensure that the contact is visible in the interface
  172. - added support for folding long lines in newly created vCards (RFC2426 - section 2.6)
  173. - added support for detection of DAV compliance classes (don't try to LOCK the collection if there is no LOCK support /class 2/)
  174. - added support for content type checking (only 'text/vcard' and 'text/x-vcard' are accepted)
  175. - changed auth module XML configuration format and related changes (see misc/example_config_response.xml and auth/config.inc)
  176. - changed company contacts displayvalue to ORG attribute value (if present, otherwise N or FN is used)
  177. - changed vCard UID generation (no "-CardDavMATE" suffix in newly generated UIDs)
  178. - improved collection and addressbook insert sort - O(n*log(n)) /major performance improvement especially for large collections/
  179. - improved suggestion sorting for company, department and categories (globalSortAlphabet is used)
  180. - fixed possible missing contact groups in the interface if more than one adressbook contains contact groups
  181. - fixed possible wrong header position if non-null hrefLabel is used with non-empty additionalResources
  182. - fixed login screen language switching bug after unsuccessful authentication
  183. - fixed sortkey comparison if a compared character is not present in globalSortAlphabet
  184. - fixed header removal when deleting contacts from addressbooks
  185. - fixed error if globalAddressCountryFavorites is undefined
  186. - fixed incorrect scrollbar position for keyboard navigation functionality
  187. - fixed undefined variable problem with empty company name and non-empty department
  188. - fixed crossDomain value for the software update check
  189. - fixed image resizing bug when contacts are switched too quickly using keyboard navigation
  190. - fixed minor iOS bugs in CSS
  191. - other improvements, fixes and internal code reorganisation
  192. - workaround for displaying of images created with Evolution ("X-EVOLUTION-UNKNOWN" image type)
  193. - workaround for undefined image type in PHOTO attribute
  194. - changed "reset search button" cursor to pointer
  195. - moved all CSS files into css/ directory and related changes
  196. - updated readme.txt with up to date instructions
  197. - updated CSS files for integration with the upcoming CalDAV web client
  198. - updated jQuery to 1.8.2
  199. - updated jQuery-UI to 1.8.23
  200. version 0.9.7.1 [2012-06-19]:
  201. - support for RFC 6578 final (proper synchronization of deleted contacts with Davical 1.1.0)
  202. version 0.9.7 [2012-05-29]:
  203. - note: this release contains new configuration options (always use the latest config.js)
  204. - configuration - added globalEditorFadeAnimation - support for custom fade in/out animation speed (see config.js)
  205. - configuration - added globalInterfaceCustomLanguages option - it allows to limit/reorder the interface languages shown in the login screen
  206. - configuration - added hrefLabel option into globalAccountSettings and globalNetworkCheckSettings - support for custom server name in the resource header instead of the full href value (see config.js)
  207. - configuration - added globalEnableKbNavigation option - it allows to enable/disable the keyboard navigation functionality [key up/key down] in the contact list (see config.js and the changelog below)
  208. - configuration - changed default value for globalSyncResourcesInterval to 300000 miliseconds (resource list changes are rare)
  209. - configuration - changed default syncInterval from 30000 to 60000 miliseconds
  210. - configuration - updated globalSortAlphabet and globalSearchTransformAlphabet
  211. - major internal code cleanup - all ajax operations (even subsequent) are now async => better performance, fixed Firefox 11+ unable to delete contact and unable to perform drag&drop operations
  212. - major internal code cleanup - number of requests to the server is minimized => better performance, better bandwidth usage
  213. - improved performance of adding new elements in vCard editor by ~40%
  214. - added keyboard navigation functionality for contact switching by pressing [key up/key down] (enabled by default)
  215. - added support to search by ORG and EMAIL attribute values
  216. - added text suggestion for company (from current collection) and department (from current collection but only for the current company) fields in vCard editor
  217. - added French localization (fr_FR) - thanks John Fischer
  218. - fixed lost sync-token during resource sync (every globalSyncResourcesInterval miliseconds) => result: MUCH less bandwidth usage!
  219. - fixed possible missing contacts in the interface if network error occurs during the addressbook-multiget REPORT (after the successful sync-collection REPORT)
  220. - fixed vCard value escaping - colon is not escaped anymore (ambiguity of the vCard 3.0 standard)
  221. - fixed country selectbox lost focus if the country is changed by keyboard
  222. - fixed editor remains in the "edit" mode after the "save" operation if newly created contact is hidden due to active search filter
  223. - fixed contact list "header" hiding in vCard group with active search filter
  224. - fixed set next contact as active when removing contact from vCard group (previously always the first contact was set as active)
  225. - fixed "add contact" button state - now it is inactive during a collection loading
  226. - fixed compatibility with future versions of jQuery
  227. - moved logout button to the resource list header (to match the position in the upcoming CalDav web client)
  228. - updated .htaccess to support image caching and output compression using mod_deflate
  229. - updated jQuery-UI to 1.8.20
  230. version 0.9.6 [2012-04-25]:
  231. - note: if you use DAViCal with cross-domain setup see the modified Apache configuration in misc/config_davical.txt (solved problem with CardDAV-Sync from Marten Gajda)
  232. - note: if you use MacOS X Lion calendarserver it is recommended to re-patch your installation (see misc/readme_lion.txt and the changelog below)
  233. - configuration - changed default syncInterval from 15000 to 30000
  234. - added support for automatic detection of crossDomain option in globalAccountSettings, globalNetworkCheckSettings and globalNetworkAccountSettings (if not set to boolean true/false it is automatically detected; default is null - autodetect)
  235. - added IE9+ support (non cross-domain setup only /IE9 & jQuery limitation/; minor graphics glitches due to missing CSS support for "disabled" html elements)
  236. - added support for prefix and suffix (vCard N attribute)
  237. - added Czech localization (cs_CZ)
  238. - added Danish localization (da_DK) - thanks Niels Bo Andersen
  239. - fixed search with upper case letters not present in globalSearchTransformAlphabet
  240. - fixed parsing of double quoted vCard param values (who use this?)
  241. - fixed Andorra address fields
  242. - fixed minor graphics glitch with update notification after logout and new login
  243. - updated auth module to support multiple resources in response + updated auth/config.inc with modified templates
  244. - updated misc/config_davical.txt (better handling of preflighted OPTION requests)
  245. - updated misc/calendarserver_CardDavMATE.diff (support for cross-domain queries with X-Requested-With header /upcoming Safari 5.2/)
  246. - updated default globalSearchTransformAlphabet in config.js
  247. - updated CSS detection rule for iPad (new screen resolution for iPad 3)
  248. - updated jQuery to 1.7.2
  249. - updated jQuery-UI to 1.8.19
  250. - replaced .attr('value'[, ...]) with .val([...])
  251. - many other fixes
  252. version 0.9.5 [2012-03-12]:
  253. - note: this release contains new configuration option (always use the latest config.js)
  254. - configuration - added globalSearchTransformAlphabet setting - used for transformation of non-ASCII characters to ASCII (for search support)
  255. - added search support (search is performed on the addressbook values in the interface + category names)
  256. - added language selector to login screen (use globalInterfaceLanguage to set the preselected language)
  257. - added Hungarian localization (hu_HU)
  258. - scrollable resource list (only if needed)
  259. - minor bug fixes
  260. version 0.9.4 [2012-02-29]:
  261. - fixed vCard parameter parsing (TYPE=X,Y now works correctly again)
  262. - fixed date parsing for BDAY and X-ANNIVERSARY attributes (dates with missing '-' caused non-RFC vCard error)
  263. - correct "\n" unescaping in vCard values if the previous character is '\'
  264. - updated phone parameter definitions (iOS5 uses "TYPE=voice" in addition of other types)
  265. - correct header removing from addressbook if contact is removed
  266. - changed default value for undefined phone type from "main" to "cell" ("main" is Apple specific)
  267. - added "TYPE=internet" into EMAIL parameters if it is missing (better non-RFC vCard compatibility)
  268. - added "fax" phone type (in addition of "home fax" and "work fax")
  269. - use of .prop() instead of .attr() to set 'readonly', 'disabled', 'selected', 'checked' and 'src' properties
  270. - minor fixes for Slovak and German (thanks Thomas Scheel) localizations
  271. - other minor fixes
  272. version 0.9.3 [2012-02-17]:
  273. - added German localization (de_DE) - thanks Marten Gajda
  274. - fixed invalid switch to PROPFIND if REPORT/sync-collection is unsupported (+ related bugfixes)
  275. - changed DOM operations to fix Firefox only bugs with 0.9.2 (Firefox or jQuery bug?)
  276. - fixed "active editor -> logout -> login" problem (inactive resource/addressbook list)
  277. version 0.9.2 [2012-02-13]:
  278. - security fix: correct globalAccountSettings cleanup after logout
  279. - note: this release contains new configuration options (always use the latest config.js)
  280. - configuration - increased default timeout value for configuration account templates from 10 to 30 seconds
  281. - configuration - changed default configuration for Davical - works also if Davical is installed into subdirectory (instead of domain root directory)
  282. - configuration - added globalContactStoreFN option - support for custom FN formatting instead of fixed 'prefix,last,middle,first,suffix' (see config.js)
  283. - configuration - added globalCompatibility option - customizations for 3rd party clients
  284. - configuration - globalCompatibility: added anniversaryOutputFormat option - supported values: 'apple' (default) and 'other' (see config.js)
  285. - configuration - added globalInterfaceLanguage option (see config.js and the changelog below)
  286. - added localization support (new localizations are welcome!)
  287. - added English localization (en_US)
  288. - added Slovak localization (sk_SK)
  289. - added Italian localization (it_IT) - thanks Luca Ferrario
  290. - added support for Oracle, SabreDav and probably many other CardDav servers
  291. - added support for CATEGORIES attribute with auto-suggest for categories in active collection (category separator: Enter)
  292. - 100% performance improvement for PUT requests (add/edit/move/... operations) - get the modified Etag from PUT response header instead of additional REPORT requests (if the server support this feature, otherwise get the modified vCard with new Etag from the server)
  293. - notable performance improvements for DOM operations (contact loading and manipulation)
  294. - correct '\' character escaping in vCard values
  295. - removed write support for X-EVOLUTION-* attributes (caused many problems and Evolution already support the X-* attributes without "-EVOLUTION" prefix)
  296. - many other fixes
  297. version 0.9.1 [2012-01-29]:
  298. - note: this release contains new configuration options (always use the latest config.js)
  299. - configuration - added lockTimeOut option into globalAccountSettings and globalNetworkCheckSettings - this option is used by the LOCK method and sets the lock timeout for the resource (default: 10000 miliseconds)
  300. - configuration - new globalDatepickerFormat option - datepicker date format setting (see config.js)
  301. - added support for BDAY attribute
  302. - added support for X-ANNIVERSARY, X-EVOLUTION-ANNIVERSARY and X-ABDATE (with "anniversary flag") attributes
  303. - added support for multiple URL attributes with params (many clients use this approach in vCard 3.0 even if params are not RFC compliant)
  304. - contact images are displayed with correct aspect ratio
  305. - CSS fixes (login page padding problem, icon positioning problem for data handler icons in Firefox and many Windows only Firefox fixes)
  306. - major performance improvement for country/address format switching
  307. - added "Note: your browser is unsupported!" message to login screen for IE and Opera
  308. - increased default timeOut values in config.js to 10000 (reported problems with slow/overloaded servers)
  309. - updated jQuery-UI to 1.8.17
  310. - "add contact" and edit operations automatically set focus on "Firstname" in the editor
  311. - click on the active contact is ignored (there is no reason to reload it into editor)
  312. - renamed account-uid to data-account-uid (HTML5 compliance)
  313. - added missing alt attributes in index.html (HTML5 compliance)
  314. - removed "meta http-equiv" from index.html (HTML5 compliance)
  315. - updated readme.txt
  316. version 0.9.0 [2012-01-10]:
  317. - note: if you use DAViCal with cross-domain setup you need to update your apache configuration (see misc/config_davical.txt)
  318. - note: if you use MacOS X Lion calendarserver you need to re-patch your installation (see misc/readme_lion.txt and the changelog below)
  319. - added support for drag&drop contact move operation (not available if the source or destination collection is read-only)
  320. - added support for "Delete from Group" (available if an Apple contact group is loaded)
  321. - added support for drag&drop add contact to contact group (available for active resource and its contact groups)
  322. - major internal cleanup and bugfixes
  323. - fixed auth module/generic plugin HTTP request used for authentication
  324. - minor iOS related and other CSS fixes
  325. version 0.8.3 [2011-12-25]:
  326. - configuration: new globalAddressCountryFavorites option - favorite countries at the top of the country list in the editor
  327. - increase of RegExp performance by ~70% (use of pre-built regular expressions)
  328. - additional major performance improvements (especially for large collections) by using late vCard processing (the slowest vCard transformations are performed first time when the contact is loaded into the editor)
  329. - added read/write backward compatibility support for the following non-standard vCard attributes: X-ASSISTANT, X-EVOLUTION-ASSISTANT, X-MANAGER, X-EVOLUTION-MANAGER, X-SPOUSE, X-EVOLUTION-SPOUSE
  330. - added "home mobile" and "work mobile" options for PHONE attribute
  331. - the loading animation (spinning ball) now disappears only after the entire collection is loaded and inserted into DOM
  332. - fixed the "The contact on the server was changed and reloaded!" message error caused by wrong vCard comparison
  333. - the collection list key value for empty string is defined as '#'
  334. - major CSS cleanup and cross browser CSS fixes
  335. - new login screen :-)
  336. version 0.8.2 [2011-12-15]:
  337. - configuration: new globalAddressCountryEquivalence option - support for regex based country detection in ADR attribute (see config.js)
  338. - added absolute URL support to resource search
  339. - added PRODID attribute support
  340. - added support for non-RFC vCards with missing N and/or FN attributes (SOGo Connector bug related to company vCards)
  341. - added automatic transformation for non-RFC TEL, EMAIL and URL attributes (Evolution bugs)
  342. - CSS tweaks (no select boxes if the editor is not in "edit" mode) and fixes
  343. - X-* IM attributes are ignored only if there is an IMPP attribute with the same value
  344. - the collection list key value for most common non-alphabet characters is defined as '#'
  345. version 0.8.1 [2011-12-10]:
  346. - minor svg icon fixes
  347. - better non-RFC vCard compatibility (now it is possible to delete contacts without UID attribute)
  348. - fixed problems with the N attribute if not all parts of the value are defined
  349. - fixed problems with the X-* IM attributes if no parameters defined for the attribute
  350. version 0.8.0 [2011-12-05]:
  351. - new vector graphics (replaced png icons with svg icons)
  352. - added support for MiddleName (vCard N attribute) with possibility to use "middle" in globalCollectionSort and globalCollectionDisplay configuration options
  353. - changed default values for globalCollectionSort and globalCollectionDisplay to "last,middle,first"
  354. - added support for Department (vCard ORG attribute)
  355. - added support for NickName (vCard NICKNAME attribute)
  356. - added support for JobTitle (vCard TITLE attribute)
  357. - added support for URL (vCard URL attribute)
  358. - added URI handler for TEL attributes - the default handler is tel: (see config.js)
  359. - added URI handler for EMAIL attributes - the default handler is mailto: (see config.js)
  360. - added URI handler for URL attribute - if no handler defined in the URL value the default handler is http:// (see config.js)
  361. - added update notification (see config.js)
  362. - removed Opera support (there are too many issues with Opera CSS support, SVG, missing CORS, ...)
  363. - update jQuery to version 1.7.1 (minimized version)
  364. - currently unused regexes in vcard_rfc_regex.js are commented out (minor performance improvement)
  365. - CSS fixes and tweaks
  366. - fixed undefined variable problem with non-RFC N attribute in Apple vCard groups
  367. - clicking to the active collection not reloads it from the server (there is no reason if it is already loaded)
  368. - switching back from vCard group to the collection not reloads the collection from the server (there is no reason if it is already loaded)
  369. - if there is no valid photo in the vCard, checking/unchecking the "Company Contact" changes the default picture in the editor (note: CardDavMATE default pictures are not saved to the server)
  370. - fixed several bugs by disallowing to click to resource or contact when editing another contact (fade in/out animation on resource and collection list)
  371. version 0.7.3 [2011-11-17]:
  372. - note: this release contains new configuration options (always use the latest config.js)
  373. - configuration: new globalCollectionSort and globalCollectionDisplay options (see config.js)
  374. - configuration: new additionalResources option available for globalNetworkCheckSettings (see config.js)
  375. - configuration: changed default values for timeOut to 6000 and globalSyncResourcesInterval to 30000
  376. - configuration: added additional examples for globalNetworkCheckSettings
  377. - configuration: added comments for timeOut
  378. - changed default settings - CardDavMATE now works without any additional setup if installed into Davical subdirectory (default setup allows access to own collections for logged user)
  379. - renamed DAViCal auth module to generic (this module uses basic HTTP authentication to remote server)
  380. - added error message if non-RFC vCard is detected (please send me the problematic vCard and I will try to fix your issue)
  381. - added support for Opera (only for non cross domain setup)
  382. - fixed timeout value for LOCK requests (previously the milisecond value was used as second value)
  383. - fixed resource removal bug
  384. - added animation for contact switching (fix for graphic glitches with slow Javascript engines)
  385. - added default user and company icons for vCard editor
  386. - added icon for company contacts in contact list
  387. - added cancel button when creating a new contact (it reloads the previously active contact)
  388. - disabled edit button in vCard editor for read-only collections
  389. - disabled "add icon" in contact list for read-only collections
  390. - moved the delete button in the editor more to the right
  391. - autofocus for the login field (disabled for demo mode)
  392. - new cross browser CSS for buttons
  393. - fixed checkbox CSS for Opera
  394. - added apple-mobile-web-app-capable meta tag into index.html (useful for web app shortcuts on iOS)
  395. - minor CSS fixes for iOS
  396. - minor CSS fixes - scrollbars are shown only when needed
  397. version 0.7.2 [2011-11-10]:
  398. - configuration: new globalNetworkCheckSettings configuration option for rapid client setup
  399. version 0.7.1 [2011-11-10]:
  400. - improved support for non-RFC vCards by adding missing newlines (Evolution problem)
  401. - support for non-RFC vCards without UID parameter
  402. - fixed a bug that caused the vCard groups to remain in the interface even after deletion from the server
  403. - minor vCard group related bugfixes
  404. version 0.7.0 [2011-11-09]:
  405. - note: this release contains many configuration changes (always use the latest config.js)
  406. - note: if you use DAViCal you need to update your apache configuration (see misc/config_davical.txt)
  407. - note: if you use MacOS X Lion calendarserver you need to re-patch your installation (see misc/readme_lion.txt and the changelog below)
  408. - configuration - renamed updateInterval option in globalAccountSettings to syncInterval (now the name corresponds to reality)
  409. - configuration - removed globalReloadCollection setting (use the syncInterval in globalAccountSettings instead)
  410. - configuration - added globalSyncResourcesInterval configuration option
  411. - configuration - added crossDomain option into globalAccountSettings and globalNetworkAccountSettings (default: true - set to false if your CardDavMATE protocol/server/port is the same as your Davical installation or if you use unsupported browser with mod_proxy /if you don't know what is mod_proxy do not set to false/)
  412. - configuration - updated auth module to exactly match the changed configuration options
  413. - configuration - renamed configuration variable in auth/plugins/ldap_conf.inc
  414. - new patch for MacOS X Lion calendarserver to support cross domain queries in Gecko based browsers (http://www.w3.org/TR/cors/) with updated instructions (see misc/readme_lion.txt in misc directory)
  415. - new auth module for DAViCal server (see auth/config.inc and auth/plugins/davical_conf.inc)
  416. - much better synchronization (bandwidth optimization)
  417. - added "vCard group" support used by Apple
  418. - major style sheet changes, tweaks and cleanup
  419. - update jQuery to version 1.7 and related fixes
  420. - migrate to jQuery 1.7 API
  421. - added IRC option into IM types
  422. - fixed fast collection switching concurrency problem (contacts from the previous collection are removed from the contact list)
  423. - fixed a bug from 0.6.x that caused the contacts to remain in the interface even after deletion from the server
  424. - improved support for non-RFC vCards by removing redundant newlines
  425. - better IMPP equivalence checking with old X-* IM attributes
  426. - better handling of namespaces in XML responses using custom minimalist jQuery plugin
  427. - added readme.txt with setup instructions
  428. - added help for common network/installation problems: misc/readme_network.txt
  429. - disallow browser to show login window popup after unsuccessful authentication using auth module (see the new $config['auth_send_authenticate_header'] option in the auth/config.inc)
  430. - the auth/modules/ renamed to auth/plugins/ (and related fixes)
  431. - fixed resource and collection sorting (wrong function call)
  432. - the logout button is shown only if you use globalNetworkAccountSettings
  433. - fixed Andorra, Jordan, Kazakhstan and Ukraine address fields
  434. version 0.6.3 [2011-10-22]:
  435. - patch for MacOS X Lion calendarserver to support cross domain queries (misc directory)
  436. - updated instructions for MacOS X Lion server and moved readme.txt to misc/lion_readme.txt
  437. version 0.6.2 [2011-10-22]:
  438. - fixed undefined variable in the error message
  439. version 0.6.1 [2011-10-21]:
  440. - MacOSX Lion Server support (more info in readme.txt)
  441. - fixed login problems after previous logout
  442. - various bugfixes and improvements
  443. version 0.6.0 [2011-10-19]:
  444. - major internal code cleanup
  445. - added default .htaccess file to prevent caching (mod_headers must be enabled!)
  446. - various config.js changes (always use the latest version of configuration file!)
  447. - instead of the static client configuration, now it is possible to set configuration URL in config.js (this URL must return valid configuration XML after successful HTTP auth)
  448. - added LDAP auth module which generates XML configuration for the client (after successful HTTP authentication)
  449. - if the configuration URL is set, the client shows login screen and deny access until the user is not authenticated (and no valid XML returned)
  450. - fixed a bug which causes unaccessible resources if user has no access to read the resource privileges
  451. - fixed an undefined variable bug which occurs when new contact is created in empty collection
  452. - correct UID generation for new contacts
  453. - correct unprocessed (unknown) elements handling when contact is edited
  454. - correct behavior when deleting the last contact from the collection
  455. - major bug fixes in resource.js and addressbook.js
  456. - default picture for contact (shown if picture not present in vCard)
  457. - added logout button (right top corner key icon)
  458. version 0.5.2 [2011-10-06]:
  459. - fixed regular expressions for login matching in deleteVcardFromCollection and putVcardToCollection functions (fixes add/update/delete operations)
  460. - fixed several CSS issues
  461. - added new configuration option globalWithCredentials which sets withCredentials for cross domain queries in jQuery (note: if the value is set to true, use of Access-Control-Allow-Origin "*" is not allowed)
  462. version 0.5.1 [2011-10-03]:
  463. - changed the delete operation to asynchronous (now all operations are async)
  464. - the contact is now reloaded in the interface immediately after the successful "save" operation (in the middle of the "save" animation)
  465. - minor animation fixes (especially for contact deletion)
  466. version 0.5.0 [2011-10-01]:
  467. - initial public release