CHANGELOG¶
Unreleased¶
v9.0.1 (2025-06-05)¶
- Rebuild translations and update German translation
- Add a 500ms of threshold to show a loading spinner after the delay.
v9.0.0 (2025-06-04)¶
- Add a condition to change active date in datepicker
- Enable "Show subfolders" option by default in Open shared folder dialog
- Set PR_OBJECT_TYPE and PR_DISPLAY_TYPE for address book dialog
- Give fix width and margin to the flag and category icon
- Revert "Add a 500ms of threshold to show a loading spinner after the delay."
- Add fonts for monospace and sans-serif font-family based on different OS
- Catch the error that occurs while opening a shared folder
- Get dummy store that lost permissions removable from hierachy panel.
- Add default light color scheme on email preview iframe
- Define configuration for maximum search results to show in config.php
- Show a search result only if there are fewer then 500 records
- Fix category color mismatch in webapp and outlook
- Do not use the GAB display name as the sender
- Resolve "from addresses" added by the user in the settings from the addressbook
- Recurring series rendering corrected by using timezone-adjusted dates
- Show a search result only if there are fewer then 500 records
- Only allow adding categories to series, not to occurrences in webapp.
- Add a 500ms of threshold to show a loading spinner after the delay.
- A patch to adapt with the alias addresses filter function in the zcore
- Check client has updated non-Allday event to Allday recurrance occurance
- Correct sent_representing_email_address for shared store messages
- Implement interval function to hightlight date in date picker inside calendar
v8.2.0 (2025-03-17)¶
- Return 404 status code for inline images not found in attachment table
- Show proper error message when user trying to send from a full mailbox
- Add a check to ensure the start and end dates are updated by the client
- Remove outline from input fields in webapp
- Handle shared stores that lost permissions
- Correct category name and color display in dialog
- Multi-valued string property converted into a single semicolon-separated string
- Convert Start and Due Dates from UTC to Local Time to Prevent Save Warning
- Convert UTC dates to local time zone for appointment tooltips
- Fix timezone handling for all-day events
- Integrate html-to-text library inside a webapp to convert html content into plain text
- Add "Follow up" filter option to filter mails marked as followup.
- Add
hasattachment
andSenttome
filter options in webapp
v8.1.3 (2025-02-06)¶
- Multi-valued string property converted into a single semicolon-separated string
v8.1.2 (2025-01-16)¶
- Clicking on follow up flag will keep the focus on selected row
v8.1.1 (2024-12-19)¶
- Use correct tag of OOF settings
v8.1.0 (2024-12-03)¶
- Prevent duplicates appointment when refreshing during creation
v8.0.6 (2024-11-18)¶
- Avoid duplicate token request on initial sign in
- Fix javascript typeerror while default loading Calendar ListView
- Fix translation typo in shared dialogue
- Override meeting request subject with exception subject
- Include extjs-mod translations in pot file
- Prevent unsaved changes prompt when closing meetings without modifications
- Change Open Shared Folder dialog default to "Folder" option
- Rebuild translations and update German translation
- Attachment can be visible by clicking on it.
- Remove unnecessary use of fclose()
- Resolve user from contacts only if they have an email address
- Update Dompurify version from 3.1.4 to 3.1.7
- Make delegate dialog permission compatible with outlook
- Remove recurrence details from the tooltip visible when hovering the mouse over a meeting request
- Remove the border of the iframe, which leads to incorrect padding while editing appointments in webapp
- Remove "Type your message here ..." placeholder visible while creating appointment
- Enable empty folder functionality
- Icon for appointment exception set using message class property
- Set the message class in open appointment exception response
- Set start and due date in open appointment exception response
- Set start and due date based on appointment type
- Trim Leading Newline from Note Body for PR_SUBJECT
- Generate subject from updated note body
- Use HTML editor to show html content of Sticky Notes
- Valuecorrection event handled for HTML editor
- Set default value to false for reminder props
- Use the HTML body property of the appointment
- Remove fields from Global Address Book to make it compatible with outlook
- Remove extra categories from webapp
- Remove old default color category
- Update Persistent Settings Path Throughout WebApp
- Introduce Version 2 of Persistent Settings
- Ensure Consistent Category Naming with Outlook
v7.8.5 (2024-11-13)¶
- Fix javascript typeerror while default loading Calendar ListView
v8.0.5 (2024-11-13)¶
- Fix javascript typeerror while default loading Calendar ListView
- Fix translation typo in shared dialogue
v8.0.4 (2024-11-04)¶
- Override meeting request subject with exception subject
v8.0.3 (2024-10-23)¶
- Include extjs-mod translations in pot file
- Prevent unsaved changes prompt when closing meetings without modifications
- Change Open Shared Folder dialog default to "Folder" option
v8.0.2 (2024-10-07)¶
- Rebuild translations and update German translation
v8.0.1 (2024-10-07)¶
- Attachment can be visible by clicking on it.
- Remove unnecessary use of fclose()
v8.0.0 (2024-10-02)¶
- Resolve user from contacts only if they have an email address
- Update Dompurify version from 3.1.4 to 3.1.7
- Make delegate dialog permission compatible with outlook
- Remove recurrence details from the tooltip visible when hovering the mouse over a meeting request
- Remove the border of the iframe, which leads to incorrect padding while editing appointments in webapp
- Remove "Type your message here ..." placeholder visible while creating appointment
- Enable empty folder functionality
- Icon for appointment exception set using message class property
- Set the message class in open appointment exception response
- Set start and due date in open appointment exception response
- Set start and due date based on appointment type
- Trim Leading Newline from Note Body for PR_SUBJECT
- Generate subject from updated note body
- Use HTML editor to show html content of Sticky Notes
- Valuecorrection event handled for HTML editor
- Set default value to false for reminder props
- Use the HTML body property of the appointment
- Remove fields from Global Address Book to make it compatible with outlook
- Remove extra categories from webapp
- Remove old default color category
- Update Persistent Settings Path Throughout WebApp
- Introduce Version 2 of Persistent Settings
- Ensure Consistent Category Naming with Outlook
v7.8.4 (2024-09-18)¶
- Set some required task related properties while flag a record as complete in webapp
- Missing $ sign added to GLOBALS variable for proper access
v7.8.3 (2024-09-12)¶
- Fix issue with 'From' address field hiding after selection in webapp
- Load permission dialog properly
v7.8.2 (2024-08-30)¶
- Ensure that webapp's CSS style is applied inside an iframe
v7.8.1 (2024-08-29)¶
- Increase padding applied to preview body
v7.8.0 (2024-08-09)¶
- Using 'iframeDocument.write' To make anchor link working within an iframe
- Make anchor links jump to anchor targets if they point within the same web page
- Improve fieldset style to classic look
- Increase the Permission Dialog Size to Display Multiple Users Without Manual Resizing
- Enhance convertToUserPermission function
- Add new folder permissions compatible with Outlook
- Complete addresses from personal address book
- Add permission level column in user list table of permission dialog
- Avoid loosing session when at cross domain OIDC callback request
v7.7.1 (2024-07-18)¶
- Give padding to each tab in the address book contact detail dialog.
v7.7.0 (2024-07-10)¶
- Remove extra borders in webapp
- Remove padding from iframe and apply it to preview body
- Show a status of meeting request response in email
v7.6.0 (2024-06-18)¶
- Resolve sender and receivers from local contact folders.
- While creating quick appointment maintain a state of appointment while clicking on another time slots
- Activate radio button while the user expands a combo box to select a folder on the "Open Shared Folders" dialogue
- Add js unit test for new config option
- Add option to hide plugins section in settings
- Prevent
containerException
event if error object is empty - Check label existence while adding and removing a style class from label
v7.5.1 (2024-06-05)¶
- Give border to folder pane and align search toolbar
- Enable and disable label based on file previewer setting
- Align a "Basic" label in the keyboard shortcuts
- Update dompurify version
v7.5.0 (2024-05-21)¶
- In scheduling tab show an appointment series start and end time and add edit recurrence button
- Make the search bar align with other search bars and add a border to the folder pane when it is expanded
v7.4.2 (2024-05-15)¶
- Rebuild translations and update German translation
v7.4.1 (2024-05-08)¶
- Not show a reminder in webapp for a meetings which start and end in the past
v7.4.0 (2024-05-03)¶
- Show error message when ical and vcf file import do not import an event
- Update dompurify version
v7.3.0 (2024-04-19)¶
- Use HTML editor if contact group notes contains HTML body
v7.2.2 (2024-03-21)¶
- Set timezone defination only for all day event
- Convert UTC timestamps to local time for recurring all-day events
v7.2.1 (2024-03-12)¶
- Keep focus on web app email editor instead of reminder dialog when reminder comes
- Remove focus from dismiss all button of reminder dialog.
- Retrive the shared store entryid from sent representing entryid
- Checks if the sent representing entyid is a oneoff entryid
- Handle php deprecation warning while reading sessioon cache file
- Make changes in style of webapp folder pane
v7.2.0 (2024-02-29)¶
- Show a dialog to ask if out of office should be disabled while logging in and out of office is enabled
- Change out of office window design
- Remove contact fax plugin from the webapp
v7.1.2 (2024-02-26)¶
- Set the email address based on email address type in meeting request record
- Show browser title unread count based on selected folder
- Trigger a server-side notification to refresh the hierarchy
- Update the parse_smime function to eliminate unnecessary steps in the web app
v7.1.1 (2024-02-01)¶
- Cler time before passing start and end date to the freebusy model
- Set all day event start and end time in utc time
v7.1.0 (2024-01-25)¶
- Use shared store info as sender in MR
- Do not update the sender info in meeting request
- set alias as a sent_representing in new meeting request
- Add new column in From Addresses grid
- To send an appointment, use the "From Addresses" settings
- Set conversation index and ID properties in mail record.
- Add hover tooltip on date in email view panel header
v7.0.3 (2023-12-15)¶
- Avoid manual decoding utf8 characters
- Show unread item counter based on selected folder in webapp title
v7.0.2 (2023-12-12)¶
- Rebuild translations and update German translation
- Show user's missing email address in Rules
- Manage server-side notifications for updating the address book dialog
- Add addressbookModel config while opening details of contact from the address book
- Add new address book delete object notification
- Correct message in insufficient privileges dialog
v7.0.1 (2023-11-30)¶
- Handle an exception while opening multi-calendar
v7.0.0 (2023-11-17)¶
- Show Mouse hover indicator for links in calendar
- Redesign the dialog for opening shared folders
- Refactor 'Open Shared folders' button handling
- Add a 'Open Mailbox' checkbox in Sahred Folders dialog
- Remove the Mailbox option from the FolderContentTypes
- Update folder type name from "Entire Inbox" to "Mailbox"
- Update check to open entire store
- Revert the changes made to disable the "Entire Inbox" option in the shared folder dialog
- Rename "Disctribution list" to "Contact Group"
v6.20.0 (2023-11-10)¶
- Create a helper function to escape HTML text
- Add a function to retrieve the plain text body from a record
- Fix problem displaying free/busy data
- Maintain calendar state after relogin and merge or seperate all calendars from settings
- Remove plus sign from "open shared folder" button
- Remove the "Close a conversation" keyboard shortcut
v6.19.4 (2023-10-27)¶
- Remove unwanted API calling which was slow down webapp while doing repeated searches
- Use PR_REPLY_RECIPENT_ENTRYIDS for the reply to email
- Highlight days with appointment in calendar
v6.19.3 (2023-10-17)¶
- Use SMTP address in oneoff distlist member instead of EX address
- Display the start and end dates of all-day events correctly in the mail preview
v6.19.2 (2023-10-09)¶
- Do not convert the date to UTC format for phantom records
- Update check to on appointment update
- Add a DateRange helper functions
- Convert UTC date to local time
v6.19.1 (2023-10-05)¶
- Make shared folders are available after re-login
- Allow to remove prefix "FW:" and "RE:" from subject manually
v6.19.0 (2023-09-20)¶
- PHP-8 compatibility support
- Remove extra Semicolon
- Revert the changes of json_decode_data function
- Use JSON_INVALID_UTF8_SUBSTITUTE flag in json_encode
- Use JSON_INVALID_UTF8_SUBSTITUTE and JSON_THROW_ON_ERROR flags
- Log json error in caddy
- Handle JSON encoding and decoding errors
v6.18.0 (2023-09-15)¶
- Fix showing "Not all attendees could be resolved."
- Disable add-new-line jodit plugin
- Use
disableHotkeys
config to disable hotkeys - Convert links to clickable in appointment body
v6.17.0 (2023-09-05)¶
- Use JSON_INVALID_UTF8_SUBSTITUTE to avoid json encode fail
- Improve usability of rules creation dialog
- Unset the body property from the mail list response
- Remove code duplication
- Enhanced Visibility Control for Shared Folder Permissions Tab
- Use rtf_to_html function to support PST file imports
- Use user default language from property or webapp config
- Showing profile picture in "To" field
- Show error message while opening shared folders without permission
- Allow to move appointment to shared/public store
- Configure the manage UI language in webapp for first time login user
- Working keyboard shortcuts for search result
- Add option in settings of webapp if mail with calendar invites should move to deleted items or not
- Update check for mlist
- Show proper error message while opening shared folders without permission
- Webapp use more detailed header while forwarding mail
- Correction of sender avatar showing undefined symbol for sender name consist emoji
v6.16.0 (2023-07-12)¶
- Remove duplicate meeting request time information from body part
v6.15.4 (2023-07-10)¶
- Set common start and end date
v6.15.3 (2023-07-03)¶
- Update webapp title dynamically
- Fix incorrect attachment file size after drag and drop
- Check
Zarafa
namespace is exists - Use Object assign to set the options config of Ext.MessageBox
- Fix parsing of access tokens for scope validation
- Rebuild and update German translation
- change Settings->Security menu to Settings->Account
- Update dynamic browser window on tab change
- Set dynamic window title for a web app
- Correction in data listing of multiple folders in calendar.
- Set proper UI for contactlist in business card view
- Remove icon configuration if theme is set globally
- Send MR mail TABLE_DELETE event notification based on user settings
- Introduce user setting not to remove meeting request mail
- Set default font-size and font-family for table tags
- Update MAPI_E_NO_ACCESS exception error message
- Use correct mapi store object to import ICS files
- Remove icon config from welcome screen
- Add new addWithDST in the Date class
- Update language translation .po files
- Manually translate 'Global Address List' folder name
- Better visibility of private and priority buttons.
- Update logic of set delegate meeting rule
- Add word wrap style to pre tag of direct child of body tag
v6.12.3 (2023-06-22)¶
- Fix parsing of access tokens for scope validation
v6.15.2 (2023-06-22)¶
- Fix parsing of access tokens for scope validation
v6.15.1 (2023-06-20)¶
- Rebuild and update German translation
- change Settings->Security menu to Settings->Account
- Update dynamic browser window on tab change
v6.15.0 (2023-06-16)¶
- Set dynamic window title for a web app
- Correction in data listing of multiple folders in calendar.
v6.14.1 (2023-06-09)¶
- Set proper UI for contactlist in business card view
v6.14.0 (2023-06-02)¶
- Remove icon configuration if theme is set globally
- Send MR mail TABLE_DELETE event notification based on user settings
- Introduce user setting not to remove meeting request mail
- Set default font-size and font-family for table tags
- Update MAPI_E_NO_ACCESS exception error message
v6.13.0 (2023-05-24)¶
- Use correct mapi store object to import ICS files
- Remove icon config from welcome screen
- Add new addWithDST in the Date class
- Update language translation .po files
- Manually translate 'Global Address List' folder name
- Better visibility of private and priority buttons.
- Update logic of set delegate meeting rule
- Add word wrap style to pre tag of direct child of body tag
v6.12.2 (2023-05-11)¶
- Typo correction in organization keyword
- Pass folder object in params in isParentFolderIsSentItemFolder function
- Set correct recipient while creating appointment using 'Create appointment' context menu
v6.12.1 (2023-05-04)¶
- Use SPAN tag instead of image tag to show contact image
v6.12.0 (2023-04-27)¶
- Use createDelegate to call cancleInvitation function
- Pass required properties to htmlQuotedTemplate
- Handle an exception for insufficient privilege
- Use file_get_contents function instead of fread and introduce exception when the read failed.
- Add config to hide the expand button in GABGroup recipient
- Enable to list GABGroup/Mlist in GAB
- Allow to resolve GABGroups
- Compose recurring pattern from PidLidAppointmentRecur property
v6.11.2 (2023-03-30)¶
- Stop resolving GAB group
v6.11.1 (2023-03-23)¶
- Update modifyDelegateMeetingRule, createDelegateMeetingRule and setDelegateMeetingRule function
- Remove unused function
- Set the has_meeting_rule flag in delegate response
- Set meeting rules only when requested
- Use box-sizing property in .x-grid3-row class
- Revert "Call TZDefinition class for the recurring events"
- Copy all recipient from mail to appointment record
- Add start and end date in appointment record
v6.11.0 (2023-03-09)¶
- Fix dist make target
- Ensure message body preview default font size is used in all cases
- Update process contact data
- Prevent to show contact without email address in compose item
- Set addressbook default direction to ascending order
v6.10.1 (2023-02-28)¶
- Call TZDefinition class for the recurring events
- Change ENABLE_REMOTE_USER_LOGIN config to false
v6.10.0 (2023-02-07)¶
- Update check of HTML body text
- Pass correct parameter order in saveMessage function call
- Update normalized_subject value
- Fix npm 9 compatibility
- Remove check of inline attachment
- Update MAPI quota properties
- Enable quota widget in settings context
v6.9.2 (2023-01-27)¶
- Create setReplyToRecipient function set reply-to info
- Update EX sent representing and sender email addresses
- Set default search folder sort order
v6.9.1 (2023-01-17)¶
- Configure DOMPurify conditionally for plaintext and html mail body
- Remove custom background image for all themes
- Set requested entryid in response entryid value
- Show only SMTP email address in email header
- Remove colon from all dialog fields
- Fix SCSS deprecation warnings
- Hide the Distlist or mlist in address book grid
v6.9.0 (2022-12-22)¶
- Call TZDefinition class for the all day events
- Update normalized_subject property
- Update MessageBodyLink js unit test
- Integrate linkify js lib in webapp
- Hide search field for shared folders
- Update translations and translate to German
- Update client side MAPI exception messages
v6.8.0 (2022-11-30)¶
- Use cachebuster correctly in oidc trampolin
- Set default_theme in server config of welcome.php
- Hide theme dropdown
- Remove tinymce from separatewindow view
- Fix cachebuster in login page
- Parse GAB sort order request for all sortable fields
- Require PHP 7.4 or higher in config check
- Make use of implicit bool comparison convertion in config check
- Remove links from config check error page
- Move PHP init include into include folder
- Use RETURN_DOM_FRAGMENT config in DOMPurify in html2text conversion
- Ensure out of tree plugin build uses correct npm bin path
- Add viewport meta tag to generated HTML mail content
- Use Exchange4all specific HTTP response headers
- Remove useless PHP gzip compression in service handler
- Rename main PHP service endpoint to service.php
- Rename main CSS file to app.css
- Rename main Javascript library file to lib.js
- Migrate from compass to dart-saas
- Improve build pipeline and asset names further
- Further improve Makefile to improve consistency and error handling
- Further cleanup about screen
- Update translations and translate to German
- Remove gmaps plugin
- Disable build of gmaps plugin
- Optimize load order, versioning and avoid duplication
- Avoid to assert record defination field length
- Override the FORBID_CONTENTS config in DOMPurify
- Disable HTMLParser and MessageBodyLinks js unit test
- Fix Makefile accidental double copy of icon sets
- Relax JS lint in CI to only report errors
- Fix build of plugins
- Ensure that all PHP and JS files are properly linted
- Improve .editorconfig
- Establish PHP linter code style via phpcs
- Cleanup LICENSE file
- Get rid of Java build dependency
- Remove obsolete apparmor configuration
- Remove obsolete jsduck configuration
- Remove obsolete relics of ant build system
- Enable eslint for JS unit tests and fix warnings
- Use one true brace style in JS and convert treewide
- Improve eslint rules and apply treewide
- Git ignore eslint cache
- Update more 3rd-party JS dependencies
- Replace delete of js globals with define to undefined
- Don't compact in code coverage intrumentation
- Properly clean when calling make clean
- Don't fail CI with failing test suites
- Improve CI caching
- Use sane stable order unit test configuration
- Run CI unit tests on faster runners
- Update js test suite to their latest versions
- Include js unit tests result in CI
- Remove built icon sets from source tree and pin Ruby dependencies
- Add third-party js dependency hashes
- Cleanup linter and unit test invocation
- Remove special Makefile source style
- Fix and improve about page license view
- Remove transpiled CSS from source tree
- Propertly create version and cachebuster files on build
- Remove obsolete function check
v6.7.0 (2022-11-24)¶
- Improve .gitignore for plugins folder
- Use correct comparison to detect theme absolute URL paths
- Remove 'defaultTitle' from toolbar config
- Support absolute path only URLs in themes
- Bump DOMPurify to 2.4.1
- Update German translation
- Avoid adding translations from external plugins
- Add title parameter in registerProtocolHandler
- Update translation files
- Remove defaultTitle config from ContextMainPanelToolbar
- Clear whatsnew features list
- Replace hardcoded "Exchange4all" with WEBAPP_TITLE config
- Check smime plugin is enabled in parse_smime function
- Add a very minimal contributing file
- Avoid to add or remove recipient in request
- Find exact deleted record from modified list using phantom flag
- Avoid to remove data from modified list of NoSyncStore.
- Increase the height of email text display field
- Complete German translation
- Ensure proper gettext template header information
- Update German translation
- Rebuild translation files
- Fix and improve translation extraction script
- Open account control panel in new browser window
- Remove "Alias" field from addressbook general tab
v6.6.0 (2022-10-18)¶
- Use correct sorting handlers
- Get PR_FINDER_ENTRYID and PR_COMMON_VIEWS_ENTRYID using folder ID
- Use domPurify to implement HTML cleaning, parsing and converting
- Convert UTC date to local time zone date for all day events
- Update check for the broken VCF file
- Get rid of empty reseved method name in pimfolder plugin
- Bump build process to use Python 3
- Remove obsolete Dockerfile
- Add composer and check for PHP 7.4 - 8.1 compatibility
- Update npm lock file version from 1 to 2
v6.5.0 (2022-08-23)¶
- Update font-family list
- Add missing font-family
- Add MS Windows specific fonts
- Hide theme dropdown from webapp settings
- Remove duplicate server config from webclient.php
- Remove PowerPaste configs
- Fix linter errors
- Hide the Sync Issues folder by default
- Use product neutral wording from all visible text messages
- Remove commented code
- Open store using distlist store entryid property
- Remove isExternalContactItem function
- Fixed isCopyGABToContact Undefined variable error
- Use mapi_openentry function open distlist
- Hide the member's list from global addressbook mlist entries
- Hide the public folder tree from hierarchy tree when there is none
- Updated translation(.po) files
- Make string translated
- Remove KQL support and tokenizer dependency
- Add new OIDC_REQUIRED_SCOPE to individually require certain scopes
- Use default date format in translation
- Remove duplicate translation from de_DE.UTF-8
- Change date separator from (-)dash to (/)slash
- Update zh-CN.UTF-8 date translation
- Change (-)dash to (/) slash in nl_NL.UTF-8
- Change (-)dash to (/) slash in it_IT.UTF-8
- Change (-)dash to (/) slash in de_DE.UTF-8
- Remove duplicate translation from fr_FR.UTF-8
- Remove duplicate translation from es_ES.UTF-8
- Updated fr_FR-UTF-8 langugae file
- Change date separator for es_ES.UTF-8 language
- Validate expected scope of token
v6.4.0 (2022-07-14)¶
- Check for single event flag
- Revert "Remove mapi_icaltomapi2 function check"
- Remove mapi_icaltomapi2 function check
- Add common start and end date in imported item
- Update ICS/VCS client side validation
- Use language code with UTF-8 extention
- Change LANGUAGE_DEFAULT_LOCALE value from en_US.UTF-8 to en_GB.UTF-8
- Updated comment in config.php.dist
- Update logic to parse language tab from BCP language to webapp specific
- Remove BCP to webapp specific lanauge map
- Check in SESSION for lang
- Remove BCP formated language tag
- Conditionally get the selected language for webpp
- Set default value of lang
- Use LOCALE_COOKIE_NAME to get locale
- Updated comment
- Correct Chinese (China) BSP locale code
- Use COOKIE_DOMAIN and COOKIE_PATH as a fallback
- Optimized getLangFromUILocales function
- Remove win32 language table
- Add ui_locales in Translations request
- Retrive the language from cookie
- Remove $session_lang variable
- Handle adge cases for language selection
- Updated comments
- Remove unused language code from txt file
- Remove invalid parameter
- Create locale table from language.txt
- Created default language map
- Added getLocaleFromBCPFormat helper function
- Add BCP format locale in language.txt
- Set language from ui_locale cookie
- Set language cookie based on request params, user settings or session
- Remove unused language set
- Initialize language cookies config
- Update DOMPurify version from 2.3.6 to 2.3.8
- Add .editorconfig file in webapp
- Select the first editor by default
- Hide the editor dropdown
- Remove isBrokenEml function
- Remove isBrokenEml function
- Update eml validation check
- Remvoe server side eml checking
- Remove unsupported languages from webapp
- Manage visibility of editors dropdown in settings widget
- Update default value of html_editor user setting
- Check html editor availability
- Show plaintext editor as default.
- Remove TinyMCE editor
- Define plugin path using DEFAULT_EDITOR
- Remove quill specific code
- Load js file using plugin manager
- Update jodit lib path
- Show send representing email address in mail header
- Increase height of calendar widget
- Fix CI by using new coverage_report format for cobertura
- Update login screen style
- Add resource Makefile to help build resources
v6.3.3 (2022-05-02)¶
- Add isset check for PR_OBJECT_TYPE
- Add alldayevent flag to recurring exception
v6.3.2 (2022-04-14)¶
- Use "EX" email address
- Remove deprecated Zarafa address type
- Update webappmanual value in defaults.php
- Update documentation links for myexchange.rocks
- Avoid to set timezonestart and end property
- Set PR_SUBJECT_PREFIX property
v6.3.1 (2022-04-04)¶
- Stop strict checking recurring prop
v6.3.0 (2022-03-31)¶
- Match ics extension properly
- Consider srcset attributes when looking for external images
- Sort language list properly after loading
- Use proper cHinese language names
- Remove automatic linkify when displaying mails
- Remove special HTML processing for Outlook styles
- Execute copy command popup window
- Generate OIDC redirect uri base without query and hash
- Avoid error when cleaning up PHP session when having none
- Change the name of popup window name
- Change popup window name
- Update display text
- Use relative path of manage ui
- Add security setting category in settings context
- Handle user not found error with error dialog
- Fixup: remove duplicate artifact upload
- Add release tarball artifact to CI and publish as package
- Check entryIdOne or entryIdTwo not empty
- Add alldayevent flag in action props
- Use UTC time while updating an appointment
- Use local time for drop zone selection date range
- Timezone definition not required for recurring items
- Add timezone info while modifying an appointment
- Add timezone defination in exception for outlook
- Check folders array is not empty
- Use default period for the non-allday appointments
- Hide the empty folder context menu item
- Hide the quota widget
v6.2.0 (2022-02-28)¶
- Add means to display version for development
- Change the default value of PLUGIN_GMAPS_GOOGLE_API_KEY config
- Add allowUser_visible in plugin settings
- Update look and feel of welcome screen
- Upgrade DomPurify lib from 2.2.3 to 2.3.6
- Remove obsolete dac based FTS integration
- Avoid to show already deleted items in reminder dialog
- Set default font size to 10pt
- Use occurrence instance instead of recurrence
- Set utc time while creating quick appointment
- Parse the timezone definition for the calendar items
- Add timezone start and end properties
- Set timezone definition property
- Import timezone definition class
- Clone and clear time from date
- Convert UTC time to local time
- Set all day event start and end time in utc time
- Add IPM.Sharing message class in record factory
- Use Oidc.Log for log in oidc-kopano.js
- Set OIDC log level on build time
- Change log level in oidc-kopano
- Use dedicated config define for default timezone
- Use dedicated config define for default locale
- Set unread_borders setting on welcome page
- Use default value true for the unread_borders setting
- Fix OIDC silent renew error handling
- Render inline image from attachment record
- Use MAPI_CLEAR_UNSENT action flag to create new message
- Add font size and type combobox in display widget
- Update settings compose widget
- Not required to unwrap contact provider to contact folder
- Hide the conversation widget
- Initialize start value for batch operation
- Optimise the pagination code
- Initialize start value for batch operation
- Optimize the code to find the folder size
- Center align appointment title text
- Strip down appointment height
- No need to reset the cursor position
- Update the label text
- Update js unit test
- Update display messages
- Remove remaining "WebApp" wording
- Add Edit Mail button
- Fix lint error
v6.1.2 (2022-01-04)¶
- Use BR tag instead of P tag
- Optimize the css reset
- Remove pre css rules
- Remove unused css rules
- Remove table specific css rules
v6.1.1 (2021-12-30)¶
- Update plain text reply header
- Reply header should be untranslated
- Remove draft item after creating sent item
- Check given entryid is oneoff entryid
- Show time in 12/24 hours format based on user settings
- Upgrade the blockquote style
- Upgrade the reply header
- Set PR_HTML property
v6.1.0 (2021-12-20)¶
- Wrap the br tag in span
- Set the default font size and family on body
- Add default css for p tag in iframe header style tag
- Render message body when record is open.
- Remove default font size and family from p tag
- Add default font size and family to preview panel.
- Show empty space in mail header instead of none
- Disable the save search folder functionality
- Set username in EncryptionStore
- Update error and warning message
- Change COOKIE_LIFETIME value string to number
- Change the default value of COOKIE_LIFETIME define
- Add session cookie specific config in config.php
- Remove all traces of deskapp
- Validate OIDC token has required scope
- Use OIDC flag to retrieve session while logon
- Revalidate OIDC token retry without any limit
- Set samesite attribute to all webapp cookies
- Set samesite attribute to all webapp cookies
- Remove access token parsing
- Avoid to prefetch TinyMCE plugin files
- Propertly expire session cookies
- Improve session cookie naming
- Request proper OIDC scope
- Use correct claims when parsing OIDC access token
- Use proper OIDC logon flag
- Remove logon flag 1 which has special meaning
- Remove top level oidclogin redirect
- Auto generate OIDC client ID when its empty
- Add VS Code dev container
- Remove apache specific file and configuration
- Wrap ternary operation with round brackets.
- Change the node js image version
- Check EC_UNKNOWN_USER error code
- Add FTS_SCRIPT_PATH in config.php.dist and defaults.php
- Allow for full text search
- Allow user to resolve external email address
- Handle inline image attachment
- Update e4a-php-mapi include path
- Remove Wingding font check
- Open shared folders
- Check settings object has email_address property
- Allow user open shared folder
- Add hook for password plugin
- Set out of office message for an external users
- Remove fingerprinting implementation
- Disable taskrequest functionality
- Change the cookie name
v6.0.1 (2021-09-15)¶
- Remove entire inbox option from open shared folder dialog
- Disable the restore item context menu item
- Hide editor dropdown
- Fixed js unit test
- Configure wysiwyg editor via config.php
- Update shared.mk file so it include from outside of webapp
- Upgrade plugins Makefile