Compare commits

..
630 Commits
Author SHA1 Message Date
Hivert Quentin 56598d1e37 feat(login): add parameters to prevent uneccesary connection request when the domain is unknown 2024-10-01 17:53:46 +02:00
WoodySlum 4ee6d5af9d Merge pull request #361 from jmallach/wbxml2-include
chore(packaging): Use pkgconfig to compute cflags for wbxml2 instead of hardcoding them
2024-10-01 11:19:57 +02:00
smizrahi 594b0249c3 chore(packaging): Add default build directives for deb packages 2024-10-01 11:18:30 +02:00
smizrahi 64f17880c7 fix(tests): Add timeout on all async tests 2024-09-26 21:02:50 +02:00
smizrahi 59d48cb382 fix(mail): Fix assertion when there is an empty image in the mail. Fixes #6035. 2024-09-13 15:53:53 +02:00
Hivert Quentin 2da4aa8cb8 chore(js/css): update generated files 2024-09-13 01:00:36 -04:00
Hivert Quentin 1c20c1ead3 feat(sieve): add from on notificatons 2024-09-12 10:49:15 +02:00
Hivert Quentin a7023bce16 fix(security): Prevent user to add html script in its preferences 2024-09-12 08:45:56 +02:00
Hivert Quentin 84fe91c29c fix(sogo-tool): prevent a bug when restoring two events with same id 2024-09-11 17:56:45 +02:00
Hivert Quentin 68f4fc1343 fix(mail): improve algo to fetch imap folders for mail view 2024-09-11 09:05:53 +02:00
smizrahi 2a1744998c fix(calendar): Fix regression on repeat task 2024-09-09 14:10:33 +02:00
Jordi Mallach 196e10f44c Use pkgconfig to compute cflags for wbxml2 instead of hardcoding them
libwbxml2 recently changed their API version from 1.0 to 1.1. Avoid
a build failure by retrieving the include dir from the provided
pkgconfig definition.
2024-09-05 08:44:38 +02:00
Hivert Quentin 01607b151d chore(js/css): update generated files 2024-09-05 01:00:37 -04:00
smizrahi 0cbd082c1d fix(mail): Fix highlighsearch html rendering on subject 2024-09-04 18:03:36 +02:00
smizrahi 41a0f8d9af fix(mail): Fix HTML mail rendering issue 2024-09-04 15:10:05 +02:00
Hivert Quentin 2dd10970a4 fix(ckeditor5): prevent ckeditor5 to preview media 2024-09-03 13:37:19 +02:00
smizrahi 2f75a7fb1b fix(calendar): Fix all day recurring event displayed on 2 days when a DST change occurs at the endDate 2024-08-28 10:27:00 +02:00
Hivert Quentin c1e4dc5a0e chore(js/css): update generated files 2024-08-28 01:00:36 -04:00
smizrahi fa2caf9026 fix(mail): Add an option in Preferences to display full email instead of name alone in mailboxes. Fix issue caused by advanced search. 2024-08-27 18:40:36 +02:00
Hivert Quentin f42f94da84 chore(js/css): update generated files 2024-08-21 01:00:55 -04:00
smizrahi 1f6bbc1044 fix(mail): Fix issue where unread counter is invalid when whanging folder. Fixes #6001. 2024-08-20 14:52:03 +02:00
Hivert Quentin a24d59dfaf chore(js/css): update generated files 2024-08-20 01:00:53 -04:00
smizrahi 91a249009b fix(mail): Fix issue where unread counter is invalid when whanging folder. Fixes #6001. 2024-08-19 18:16:33 +02:00
Hivert Quentin 16f371dba7 chore(js/css): update generated files 2024-08-17 01:00:52 -04:00
smizrahi 86446a059c fix(mail): Fix issue where mailto: links are badly formatted when html composing 2024-08-16 12:58:31 +02:00
Hivert Quentin b602b2b188 chore(release): 5.11.0 2024-08-07 11:10:59 +02:00
Hivert Quentin fad8c21473 i18n(cy): Update Welsh translations 2024-08-07 10:50:30 +02:00
Hivert Quentin 6537d961e1 i18n(uk): Update Ukrainian translations 2024-08-07 10:50:30 +02:00
Hivert Quentin 56012c65e1 i18n(tr_TR): Update TurkishTurkey translations 2024-08-07 10:50:30 +02:00
Hivert Quentin dd1a6607fe i18n(sv): Update Swedish translations 2024-08-07 10:50:30 +02:00
Hivert Quentin 94d32c419c i18n(es_AR): Update SpanishArgentina translations 2024-08-07 10:50:30 +02:00
Hivert Quentin 7b7cfdb499 i18n(sk): Update Slovak translations 2024-08-07 10:50:30 +02:00
Hivert Quentin a4f03978cf i18n(sr@latin): Update SerbianLatin translations 2024-08-07 10:50:29 +02:00
Hivert Quentin 7de9dc8f9b i18n(sr): Update Serbian translations 2024-08-07 10:50:29 +02:00
Hivert Quentin 33df476db5 i18n(ru): Update Russian translations 2024-08-07 10:50:28 +02:00
Hivert Quentin b889064dbc i18n(ro_RO): Update Romanian translations 2024-08-07 10:50:28 +02:00
Hivert Quentin 9a0e03bf9a i18n(pt): Update Portuguese translations 2024-08-07 10:50:27 +02:00
Hivert Quentin 84c0fb496d i18n(pl): Update Polish translations 2024-08-07 10:50:26 +02:00
Hivert Quentin 65f29f21dc i18n(nn_NO): Update NorwegianNynorsk translations 2024-08-07 10:50:26 +02:00
Hivert Quentin 8d4597d361 i18n(sr_ME@latin): Update Montenegrin translations 2024-08-07 10:50:26 +02:00
Hivert Quentin 5bb025323f i18n(mk_MK): Update Macedonian translations 2024-08-07 10:50:24 +02:00
Hivert Quentin a84ab7655d i18n(lt): Update Lithuanian translations 2024-08-07 10:50:23 +02:00
Hivert Quentin 88c9074aea i18n(lv): Update Latvian translations 2024-08-07 10:50:23 +02:00
Hivert Quentin c4b58a6ae7 i18n(kk): Update Kazakh translations 2024-08-07 10:50:23 +02:00
Hivert Quentin 0c2c9d7682 i18n(ja): Update Japanese translations 2024-08-07 10:50:22 +02:00
Hivert Quentin 227b92b743 i18n(it): Update Italian translations 2024-08-07 10:50:22 +02:00
Hivert Quentin de289d9b4c i18n(id_ID): Update Indonesian translations 2024-08-07 10:50:22 +02:00
Hivert Quentin 2fabfdfb9f i18n(is): Update Icelandic translations 2024-08-07 10:50:21 +02:00
Hivert Quentin b82fa1d077 i18n(hu): Update Hungarian translations 2024-08-07 10:50:20 +02:00
Hivert Quentin 8bf1a77efc i18n(he): Update Hebrew translations 2024-08-07 10:50:20 +02:00
Hivert Quentin 37f2b1dc5c i18n(de): Update German translations 2024-08-07 10:50:20 +02:00
Hivert Quentin ed3e790b47 i18n(fi): Update Finnish translations 2024-08-07 10:50:20 +02:00
Hivert Quentin 85c1cc7fa3 i18n(nl): Update Dutch translations 2024-08-07 10:50:20 +02:00
Hivert Quentin fa2312470a i18n(hr_HR): Update Croatian translations 2024-08-07 10:50:19 +02:00
Hivert Quentin 1136c18288 i18n(zh_TW): Update ChineseTaiwan translations 2024-08-07 10:50:19 +02:00
Hivert Quentin 0e5657e635 i18n(zh_CN): Update ChineseChina translations 2024-08-07 10:50:18 +02:00
Hivert Quentin ca0b00107a i18n(ca): Update Catalan translations 2024-08-07 10:50:18 +02:00
Hivert Quentin be6a69a4d6 i18n(bg_BG): Update Bulgarian translations 2024-08-07 10:50:18 +02:00
Hivert Quentin 0b530f9e36 i18n(bs_BA): Update Bosnian translations 2024-08-07 10:50:18 +02:00
Hivert Quentin 55563d2113 i18n(eu): Update Basque translations 2024-08-07 10:50:18 +02:00
Hivert Quentin 1aa59dcd7e i18n(ar): Update Arabic translations 2024-08-07 10:50:18 +02:00
Hivert Quentin 943e96f459 i18n(nb_NO): Update NorwegianBokmal translations 2024-08-07 10:50:18 +02:00
Hivert Quentin 6b6dc6b3b8 i18n(gl): Update Galician translations 2024-08-07 10:50:18 +02:00
Hivert Quentin bcb2410b12 i18n(da_DK): Update Danish translations 2024-08-07 10:49:40 +02:00
Hivert Quentin af630f033d i18n(pt_BR): Update BrazilianPortuguese translations 2024-08-07 10:49:40 +02:00
Hivert Quentin 6e11cdf289 i18n(es_ES): Update SpanishSpain translations 2024-08-07 10:49:40 +02:00
Hivert Quentin 68b17a5c4a i18n(sl_SI): Update Slovenian translations 2024-08-07 10:49:39 +02:00
Hivert Quentin 5ee190468e i18n(cs): Update Czech translations 2024-08-07 10:49:38 +02:00
Hivert Quentin b8f2e00306 chore(css): update theme-default 2024-08-07 10:48:59 +02:00
smizrahi 990f1e8e8f fix(preferences): Can not save preferences when there is a constraint on mail 2024-08-05 11:09:27 +02:00
smizrahi 58db9c980e fix(mail): When the signature is empty, the -- seperator appears. 2024-08-05 08:47:09 +02:00
smizrahi 980b5e28dd fix(calendar): Fix all day recurring event displayed on 2 days when a DST change occurs at the endDate 2024-07-23 15:21:59 +02:00
smizrahi eb63e6d047 i18n(calendar): Change Email Attendees to Email Attendees (internal users 2024-07-22 10:12:14 +02:00
Hivert Quentin 59e76d6b26 chore(js/css): update generated files 2024-07-20 01:00:58 -04:00
smizrahi 99da6e0f81 fix(mail): Update len value as data is modified in loop. This fixes the issue on sanitizedContentUsingVoidTags whenthere are meta html tags in mail content. 2024-07-19 13:31:20 +02:00
smizrahi 9d71be9c45 fix(mail): Restore scroll position when refreshing emails 2024-07-19 11:45:05 +02:00
smizrahi ef88039a4a fix(mail): Fix invalid content when forwarding a text/plain mail. Fixes #5983. 2024-07-11 17:41:14 +02:00
smizrahi a06331eb86 fix(doc): Fix typo with SOGoURLEncryptionEnabled in documentation 2024-07-11 16:48:21 +02:00
smizrahi ed951667ec feat(mail): Improve mail search (advanced search) 2024-07-02 11:12:54 +02:00
smizrahi f621d97289 feat(mail): Improve mail search (advanced search) 2024-07-01 12:56:31 +02:00
Hivert Quentin 1aa7d81a87 chore(js/css): update generated files 2024-06-26 01:00:50 -04:00
smizrahi 0cbcad9d91 feat(mail): Improve mail search (advanced search) 2024-06-25 14:28:27 +02:00
smizrahi 43388ac42c fix(mail): Fix invalid content when forwarding a text/plain mail. Fixes #5983. 2024-06-24 16:41:07 +02:00
smizrahi eee160e5bf fix(calendar): Fix issue on template introduced in commit #275617650 2024-06-19 09:37:22 +02:00
smizrahi 2637434436 feat(calendar): Add option to disable email appointmoint notifications when using caldav 2024-06-12 12:00:41 +02:00
smizrahi 4b343f7070 fix(core): Fix int overflow on vms and rss computation 2024-06-11 15:32:39 +02:00
smizrahi 591d283425 feat(mail): Add location in email ics representation template 2024-06-10 16:35:49 +02:00
smizrahi f96eb4d3ca fix(chore): Remove check on -p option to sogo-ealarms-notify as the SMTP Master account has been implemented 2024-06-05 16:28:43 +02:00
smizrahi 0168ca56b2 feat(core): Add MySQL/MariaDB SSL connection support 2024-06-05 11:30:40 +02:00
Hivert Quentin 703f0ff1b6 chore(js/css): update generated files 2024-06-05 01:00:53 -04:00
WoodySlum c5582ba819 Merge pull request #338 from helsinki-systems/escape-css-selectors
fix(calendar(js)): escape CSS selector names (@leonklingele)
2024-06-04 11:15:10 +02:00
WoodySlum 2dd45dfb93 Merge pull request #337 from helsinki-systems/prevent-double-event-creation
fix(calendar(js)): prevent duplicate event creation in case of an event conflict (@leonklingele)
2024-06-04 11:14:26 +02:00
Hivert Quentin 67e1a50c80 chore(js/css): update generated files 2024-06-04 01:00:52 -04:00
WoodySlum cbb0e85a19 Merge pull request #358 from smortex/fix-disabled-calendar-view-buttons
fix(calendar): Fix disabled change view buttons (@smortex)
2024-06-03 22:45:12 +02:00
smizrahi 2756176503 fix(calendar): Fix empty recurence list when creating event from mail 2024-06-03 22:41:42 +02:00
smizrahi 1a47fdb7d6 fix(mail): Fix advanced search no select/action on results. Fixes #5978 2024-06-03 14:34:04 +02:00
Romain Tartière 910effd664 fix(calendar): fix disabled change view buttons
When viewing a calendar, 4 buttons allow to switch between the day,
week, month and multicolumnday views.  Each of these view show the
button to swith to the day view as disabled, regradless of which view is
in use.

Adjust markup to disable the button of the current view instead of the
one used to switch to the day view.
2024-05-30 11:40:56 -10:00
smizrahi 7ec7a7d6ae fix(mail): Fix not called draft expunge function when sending mail. 2024-05-29 10:07:55 +02:00
smizrahi 53d77f3105 perf(calendar): Optimization of date computation when handle attendees. Report of 77b2d9f8. 2024-05-28 11:32:05 +02:00
smizrahi 45fd999010 fix(calendar): Memory optimization on _appendCycleException 2024-05-28 11:22:46 +02:00
Hivert Quentin 31c0473c48 fix(calendar): fix crash when using a 2*16bits chars at the 75th char of ics file 2024-05-24 15:57:56 +02:00
Hivert Quentin ebca25ca62 chore(js/css): update generated files 2024-05-23 01:00:53 -04:00
smizrahi 6b514bb159 chore(packaging): Add Ubuntu 24.04 (Noble Numbat) 2024-05-22 10:55:33 +02:00
smizrahi 314b39dd1c fix(ui): Fix invalid display when creating new appointment / mail on mobile. Initialize isFullscreen to if screen is in portrait. Fixes #5970. 2024-05-22 10:35:16 +02:00
smizrahi 6ac8525bfe feat(mail): Add 'View raw message' mail contextual option. This option open message in a popup without HTML mail CSS content modification. 2024-05-22 10:15:58 +02:00
smizrahi 9eb8039698 feat(mail): Improve mail search (advanced search) 2024-05-21 09:25:20 +02:00
smizrahi 863280d6ac fix(mail): Remove some css when generating UIxMailPartHTMLViewer. Sometimes, the mail contains SOGo mail template in the content, and broke mail display. 2024-05-10 14:51:09 +02:00
smizrahi 19ee54fe05 fix(mail): Fix template issues with Galician and Basque 2024-04-30 10:21:26 +02:00
Hivert Quentin 229596da2b chore(js/css): update generated files 2024-04-30 01:00:47 -04:00
smizrahi c2d9050539 fix(core): Notify sgCkeditor component when clicking the send button to update content. Fixes #5952. 2024-04-29 22:21:33 +02:00
Hivert Quentin 9b5a8cb6fc style(vacation): Modify the tooltip of the mail panel when vacation is enabled 2024-04-29 15:08:57 +02:00
Hivert Quentin 2e2e36e0a2 fix(attachment): properly download openxmlformats in attachments 2024-04-29 14:21:03 +02:00
Hivert Quentin 880eb89719 fix(calendar): resource was busy even if they have delegated 2024-04-18 10:11:38 +02:00
Hivert Quentin 5830053026 fix(calendar): resource was busy even if they have delegated 2024-04-17 15:23:11 +02:00
Hivert Quentin f815848a86 chore(js/css): update generated files 2024-04-11 01:00:50 -04:00
smizrahi f8c354c302 fix(mail): Fix Exception when using delegated identities. Closes #5951 2024-04-10 17:18:03 +02:00
smizrahi d9ee884459 fix(calendar): Fix assertion when is_cycle is set but without c_cycleinfo. Fixes #5950. 2024-04-10 15:47:17 +02:00
Hivert Quentin 526aa281d9 fix(contacts): can now reset contacts categories more than once 2024-04-10 11:26:06 +02:00
smizrahi 49e9988b82 fix(calendar): Fix assertion when is_cycle is set but without c_cycleinfo. Fix tests. 2024-04-09 08:59:09 +02:00
Hivert Quentin 20678b43ad chore(js/css): update generated files 2024-04-09 01:00:56 -04:00
smizrahi d4046673ee fix(calendar): Fix assertion when is_cycle is set but without c_cycleinfo 2024-04-08 13:57:07 +02:00
smizrahi 2f4c125bdd fix(core): Add timer to avoid spamming onEditorChanged for CKEditor 5. Fixes #5944. Added onblur event 2024-04-08 12:45:18 +02:00
smizrahi 98e00d09a3 feat(core): Update to ckeditor 5. Fixes #5920. Add SOGoForceRawHtmlSignature to disable raw-html-embed. Removed CKEditor signature box style when composing mail. Fix issue where raw-html-embed was added when changind signature 2024-04-08 10:37:33 +02:00
smizrahi a9e02d94a2 feat(core): Update to ckeditor 5. Fixes #5920. Add raw-html-embed only on html signatures 2024-04-04 18:20:23 +02:00
Hivert Quentin 2e37e59ed1 fix(vulnerability): prevent cross-site scripting when previewing attachments 2024-04-03 17:34:16 +02:00
smizrahi ae01ed077d fix(calendar): Fix issue where a calendar's subscribed user can give acl to another user 2024-04-03 10:48:39 +02:00
smizrahi cb55413e91 fix(calendar): Fix issue where a calendar's subscribed user can give acl to another user 2024-04-03 09:18:53 +02:00
smizrahi 0fafda55d6 fix(calendar): Fix issue where a calendar's subscribed user can give acl to another user 2024-04-02 18:55:30 +02:00
smizrahi bc804ae823 fix(core): Add timer to avoid spamming onEditorChanged for CKEditor 5. Fixes #5944. 2024-04-02 11:11:46 +02:00
smizrahi 127df39689 fix(core): Clean html parasite code to avoid ckeditor hangs. Fixes #5944. 2024-03-27 10:05:13 +01:00
Hivert Quentin 711403f024 chore(js/css): update generated files 2024-03-20 01:00:54 -04:00
smizrahi 049a569d7f fix(mail): Fix errors while spamming arrow keys on mail list. The transition was not finished 2024-03-19 16:08:54 +01:00
smizrahi e6ff9a408d fix(mail): Add encoding fallback when there are ISO char in file name. Fixes #5388. 2024-03-18 15:15:35 +01:00
smizrahi 06ea167ee5 fix(mail): Removed bracket display when inline text or inline html 2024-03-18 15:15:35 +01:00
Hivert Quentin 7c0699b96f fix(languages): somme "array" strings were using the wrong comma delimiter 2024-03-14 16:05:01 +01:00
Hivert Quentin adf1117046 fix(event): resource was considered busy for an event he has delegated 2024-03-13 14:42:12 +01:00
smizrahi 5215aa4f41 fix(calendar): Fix NSData returns instead of NSString on c_cycleinfo depending on database issue. CLoses #5940. 2024-03-12 09:45:23 +01:00
Hivert Quentin 599c40b9f6 chore(js/css): update generated files 2024-03-12 01:00:55 -04:00
smizrahi e39c104436 fix(core): On some emails print, first page is blank. Closes #5602. 2024-03-11 16:31:04 +01:00
smizrahi 7b233422f5 fix(calendar): Fix issue when doubleclick creates an event of 2 days after creating an event > 1 days 2024-03-11 16:14:22 +01:00
smizrahi 0cfaa7740a feat(core): Update to ckeditor 5. Add remove format button and code plugin. 2024-03-11 11:11:24 +01:00
smizrahi 65ab6962d8 feat(core): Update to ckeditor 5. Fixes #5920. Change to add raw-html-embed on all signatures 2024-03-11 10:29:41 +01:00
Hivert Quentin 96331cac90 feat(mail): add options to not add X-Foward header in mail 2024-03-07 15:36:40 +01:00
Hivert Quentin 815a87de0b fix(event): user was considered busy for an event he has delegated 2024-03-07 12:10:05 +01:00
Hivert Quentin e4cb0a35ef fix(event): fix rdate timezones 2024-03-07 10:10:10 +01:00
Hivert Quentin f609c31a32 feat(ytnef): add possibility to add event to calendar from winmail.dat 2024-03-06 16:50:38 +01:00
Hivert Quentin f51c756cda chore(js/css): update generated files 2024-03-06 01:01:00 -05:00
smizrahi dd965baae1 feat(core): Update to ckeditor 5. Fixes #5920. Encapsulate signature in raw-html-embed div when there are tables inside. Changed settings for raw html to enable preview. 2024-03-05 21:57:01 +01:00
Hivert Quentin 1719baea7a chore(shortkey): change shortkey for marking as junk from j to shift+j
It was too common for people to obliviously mark a mail as junk...
2024-03-05 17:26:37 +01:00
Hivert Quentin e131cd7961 chore(js/css): update generated files 2024-03-05 01:00:51 -05:00
smizrahi b7a71140f2 feat(core): Update to ckeditor 5. Fixes #5920. Add directives to preserve HTML raw data. 2024-03-04 15:49:47 +01:00
smizrahi 2b23ff3eb8 feat(core): Update to ckeditor 5. Fixes #5920. Added disableNativeSpellChecker. Added htmlEmbed plugin. 2024-03-04 15:07:52 +01:00
smizrahi cc061582f4 chore(sogo-tool): Fix compilation issue with updateSecretFromEncryptedData. Fixes #5935 2024-03-01 14:51:57 +01:00
smizrahi 185770a35e docs(installation): Improve documentation on 5.10.1 2024-02-28 16:56:22 +01:00
smizrahi fd9b8dcfcd fix(core): Add disableSubgroups option in SOGoUserSources LDAP settings to avoid infinite recursive loop when using a group name with the same name as a member. Fixes #5913 2024-02-28 11:08:51 +01:00
Hivert Quentin 8267b5afd3 chore(js/css): update generated files 2024-02-28 01:00:59 -05:00
smizrahi e92fb8f52d feat(core): Update to ckeditor 5. Fixes #5920. 2024-02-27 14:29:59 +01:00
smizrahi b8a6d576e1 fix(core): Improve error logging on url encryption 2024-02-27 13:46:06 +01:00
smizrahi 4dba56f70d fix(addressbook): Removed SOGoGlobalAddressBookFirstEntries (use listRequiresDot instead) and move SOGoGlobalAddressBookFirstEntriesCount to globalAddressBookFirstEntriesCount in source scope. This fixed the broken listRequiresDot in 5.10 2024-02-26 15:40:49 +01:00
smizrahi 776a798e17 fix(mail): Fix ukrainian encoding issue. Fixes #5702. 2024-02-26 10:09:56 +01:00
Hivert Quentin 09a97b199f chore(theme): fix comment section of theme-default 2024-02-22 08:59:43 +01:00
Hivert Quentin d9c36c6985 chore(js/css): update generated files 2024-02-21 01:00:51 -05:00
Hivert Quentin 5ff1f5396c chore(release): 5.10.0 2024-02-20 13:40:57 +01:00
Hivert Quentin 092bc9a120 chore(timezones): Update to version 2024a 2024-02-20 11:22:17 +01:00
Hivert Quentin ca1d5495ab i18n(cy): Update Welsh translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 34407df4f7 i18n(uk): Update Ukrainian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 2b1e7bdb67 i18n(tr_TR): Update TurkishTurkey translations 2024-02-20 11:10:31 +01:00
Hivert Quentin c93b1e9775 i18n(sv): Update Swedish translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 30f819e2a4 i18n(es_ES): Update SpanishSpain translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 7582266479 i18n(es_AR): Update SpanishArgentina translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 24888b23d5 i18n(sl_SI): Update Slovenian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 2db48dc7fb i18n(sk): Update Slovak translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 91c22c0800 i18n(sr@latin): Update SerbianLatin translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 5146d9d215 i18n(sr): Update Serbian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 0f0ecf7521 i18n(ru): Update Russian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin c827880f2a i18n(ro_RO): Update Romanian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 26719a1461 i18n(pt): Update Portuguese translations 2024-02-20 11:10:31 +01:00
Hivert Quentin add792fc1e i18n(nn_NO): Update NorwegianNynorsk translations 2024-02-20 11:10:31 +01:00
Hivert Quentin ee55f7a64f i18n(nb_NO): Update NorwegianBokmal translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 71e66d65b8 i18n(sr_ME@latin): Update Montenegrin translations 2024-02-20 11:10:31 +01:00
Hivert Quentin adf2d409ba i18n(mk_MK): Update Macedonian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin ab8c236621 i18n(lt): Update Lithuanian translations 2024-02-20 11:10:31 +01:00
Hivert Quentin 74a730d094 i18n(lv): Update Latvian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin adc17a3639 i18n(kk): Update Kazakh translations 2024-02-20 11:10:29 +01:00
Hivert Quentin a75bfbb2c7 i18n(ja): Update Japanese translations 2024-02-20 11:10:29 +01:00
Hivert Quentin e924ac4e67 i18n(it): Update Italian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin c3cefb6ae8 i18n(id_ID): Update Indonesian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin ae85548f27 i18n(is): Update Icelandic translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 8581aa7840 i18n(hu): Update Hungarian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 82db4d99d4 i18n(he): Update Hebrew translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 28f446a6ad i18n(de): Update German translations 2024-02-20 11:10:29 +01:00
Hivert Quentin ef29aa2bab i18n(gl): Update Galician translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 62d5414936 i18n(fr): Update French translations 2024-02-20 11:10:29 +01:00
Hivert Quentin ce8c697d96 i18n(fi): Update Finnish translations 2024-02-20 11:10:29 +01:00
Hivert Quentin ad75555a0f i18n(nl): Update Dutch translations 2024-02-20 11:10:29 +01:00
Hivert Quentin c8eee39017 i18n(da_DK): Update Danish translations 2024-02-20 11:10:29 +01:00
Hivert Quentin af22a30f12 i18n(cs): Update Czech translations 2024-02-20 11:10:29 +01:00
Hivert Quentin c5b6611f89 i18n(hr_HR): Update Croatian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 7e78781044 i18n(zh_TW): Update ChineseTaiwan translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 31eb7987d8 i18n(zh_CN): Update ChineseChina translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 344d4da930 i18n(ca): Update Catalan translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 65d31f2b14 i18n(bg_BG): Update Bulgarian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 434be9ea71 i18n(pt_BR): Update BrazilianPortuguese translations 2024-02-20 11:10:29 +01:00
Hivert Quentin ace1515dfc i18n(bs_BA): Update Bosnian translations 2024-02-20 11:10:29 +01:00
Hivert Quentin c2fc80ecd1 i18n(eu): Update Basque translations 2024-02-20 11:10:29 +01:00
Hivert Quentin 1206d2f459 i18n(ar): Update Arabic translations 2024-02-20 11:10:28 +01:00
Hivert Quentin 083fa1fefd i18n(pl): Update Polish translations 2024-02-20 11:10:24 +01:00
Hivert Quentin 6d9647e353 chore(js/css): update theme default 2024-02-20 09:43:21 +00:00
Hivert Quentin 4337e875eb chore(js/css): update generated files 2024-02-20 09:05:28 +00:00
Hivert Quentin 2aec2ec7b0 doc(secret): Add documentation for the sogo secret 2024-02-20 09:37:13 +01:00
Hivert Quentin 6aab869b81 fix(contacts): c_cn could be null whereas it isn't 2024-02-19 10:59:01 +01:00
smizrahi 3acab3f896 fix(calendar): Fix high memory usage when importing an ics 2024-02-14 11:08:32 +01:00
Hivert Quentin 889fe1eb39 Revert "fix(memory): reduce memory usage when working with events with a lot of alarms defined in the ics file"
This reverts commit ff3c3054a6.
2024-02-13 17:39:41 +01:00
smizrahi 31a66c461a fix(core): Add missing method WORequest+SOGo.h 2024-02-13 11:46:39 +01:00
smizrahi fc778295ff feat(core): Add URL encryption for GDPR compliancy. Disable url encryption for caldav. 2024-02-12 14:52:01 +01:00
smizrahi 42511d666f feat(core): Add URL encryption for GDPR compliancy. Check for null termination when decrypting. Disable url encryption for anonymous user. 2024-02-12 13:47:41 +01:00
Hivert Quentin 5197b9bd0b fix(crypto): check if NSData is null terminated 2024-02-12 11:50:35 +01:00
smizrahi 26f05a693c docs(contributing): Changed invalid links 2024-02-09 19:46:57 +01:00
Hivert Quentin a6319e1689 fix(crypto): add protections for decryption 2024-02-09 16:16:19 +01:00
Hivert Quentin 311c358580 chore(js/css): update generated files 2024-02-08 11:09:07 -05:00
Hivert Quentin adc2d74e54 feat(accounts): Can now add smtp server to auxilliary accounts 2024-02-08 17:07:25 +01:00
Hivert Quentin f5cd67972b chore(js/css): update generated files 2024-02-08 01:00:53 -05:00
smizrahi 5081de1639 fix(js): Remove check version for ckeditor 2024-02-07 16:41:13 +01:00
smizrahi d46a436cc4 chore(js/css): update generated files 2024-02-07 15:35:37 +00:00
Hivert Quentin dde154df3f feat(accounts): Add parameter to encrypt/decrypt auxiliary account's passwords
remove release of autorelease object
2024-02-07 16:13:13 +01:00
smizrahi 7ace9c2c22 feat(core): Add URL encryption for GDPR compliancy. Change base64 encoding with SOPE one. 2024-02-06 18:21:53 +01:00
Hivert Quentin 9898e5210f feat(accounts): Add parameter to encrypt/decrypt auxiliary account's password 2024-02-06 18:06:51 +01:00
Hivert Quentin ff3c3054a6 fix(memory): reduce memory usage when working with events with a lot of alarms defined in the ics file 2024-02-05 18:01:44 +01:00
smizrahi f56910db1e fix(mail): Use text/plain fallback if an error occured while parsing html message 2024-02-05 10:50:07 +01:00
Hivert Quentin ce0e650c62 feat(sogo-tool): update user-preferences to encrypt/decrypt auxiliary accounts' password 2024-02-04 16:41:00 +01:00
Richard 1361341545 fix missing ld flag in GNUmakefile
fix undefined symbol: TNEFParseMemory when compiling from source
2024-02-02 16:06:50 +01:00
Hivert Quentin 04596c9f4e feat(accounts): Add parameter to encrypt/decrypt auxiliary account's passwords 2024-02-02 16:02:09 +01:00
Hivert Quentin 9e37d212b9 chore(js/css): update generated files 2024-02-02 01:00:49 -05:00
Hivert Quentin e6bfab7ee1 feat(accounts): Add parameter to encrypt/decrypt auxiliary account's password 2024-02-01 16:55:41 +01:00
Hivert Quentin f0010afef4 feat(accounts): Can now add smtp server to auxilliary accounts 2024-02-01 16:55:41 +01:00
Hivert Quentin 59bd290d62 chore(js/css): update generated files 2024-02-01 01:00:49 -05:00
smizrahi 63248772c1 feat(core): Add message of the day. Fix theming issue. 2024-01-31 15:05:42 +01:00
smizrahi 455fe97cbe feat(core): Add message of the day. Remove all html tags except for anchor tags (mobile only) 2024-01-29 17:16:08 +01:00
smizrahi f43974bbb7 feat(core): Add URL encryption for GDPR compliancy. Fix MALLOC exception - replaced lib with openssl 2024-01-29 16:17:11 +01:00
smizrahi fc0f5d9d98 feat(core): Add URL encryption for GDPR compliancy. Fix redirect issue 2024-01-29 10:56:17 +01:00
smizrahi 2146870071 fix(mail): Fix security @import css injection 2024-01-23 15:01:47 +00:00
smizrahi 2e7a7a97cc feat(core): Add message of the day 2024-01-23 11:11:22 +01:00
smizrahi 49b0316b9e feat(core): Add message of the day 2024-01-23 10:29:57 +01:00
Hivert Quentin 569cf8e0ae chore(js/css): update generated files 2024-01-23 01:00:50 -05:00
smizrahi 5710c4d97e fix(mail): Fix unsupported koi-u encoding 2024-01-22 16:03:39 +01:00
smizrahi 9560bdcf0c fix(docs): Fix typo in documentation 2024-01-22 14:53:19 +01:00
smizrahi eee50697b0 feat(core): Add message of the day 2024-01-22 14:34:22 +01:00
smizrahi 0d0eda2698 fix(mail): Disable inline images in attachments when HTML emails writing is disabled. Fixes #5877. 2024-01-22 09:40:10 +01:00
smizrahi 9e3e3b2291 fix(mail): Fix inline pdf attachement issue when Hide inline attachment option is set. Now the option hides only inline images 2024-01-17 17:57:33 +01:00
smizrahi a6fc83c35b fix(mail): Fix inline pdf attachement issue when Hide inline attachment option is set. Now the option hides only inline images. 2024-01-17 10:06:19 +01:00
smizrahi 7104ae6d23 feat(core): Add URL encryption for GDPR compliancy. Change base64 encoding with SOPE one. 2024-01-15 14:26:40 +01:00
smizrahi 25c72a523e Add logs on NSString+Crypto.m for debugging 2024-01-15 14:05:10 +01:00
Hivert Quentin fb3a159cf7 chore(js/css): update generated files 2024-01-10 01:00:48 -05:00
Hivert Quentin e81fdadecc fix(acl): bool was not set to NO 2024-01-09 17:25:29 +01:00
smizrahi f27b33a0c8 fix(preferences): Add error message when SOGoCreateIdentitiesDisabled is enabled and user try to activate html fields with browser inspector. Check changes of email and replyTo. 2024-01-09 17:05:00 +01:00
smizrahi 68398d2086 feat(calendar): Add double click to calendar create events 2024-01-09 14:10:05 +01:00
smizrahi 930a06e520 feat(core): Add URL encryption for GDPR compliancy 2024-01-09 11:01:17 +01:00
smizrahi 26b14671f5 fix(password recovery): Add default from mail parameter 2024-01-09 10:28:41 +01:00
smizrahi 153f444c3f Merge branch 'master' into feature-gdpr-no-caldav 2024-01-09 08:44:16 +01:00
Hivert Quentin fec99c95db chore(js/css): update generated files 2024-01-04 01:00:49 -05:00
smizrahi 00d69560ba fix(mail): Fix inline text issue when Hide inline attachment option is set 2024-01-03 09:11:14 +01:00
Hivert Quentin 5ad1d9d9c3 chore(js/css): update generated files 2024-01-03 01:00:47 -05:00
Hivert Quentin 8dc69efd70 fix(calendar): Couldn't choose some reminder options when creating events 2024-01-02 17:21:24 +01:00
smizrahi 2748d1dd08 feat(core): Add URL encryption for GDPR compliancy. Remove dav encryption 2024-01-02 13:46:46 +01:00
Hivert Quentin 99f87a26dc chore(js/css): update generated files 2023-12-23 01:00:48 -05:00
smizrahi acd4a1f4aa fix(calendar): Prevent clicking on delete event button when network is slow 2023-12-22 13:08:38 +00:00
smizrahi 10d789fb1f feat(core): Add URL encryption for GDPR compliancy 2023-12-22 11:33:40 +01:00
smizrahi d505b874f7 Merge branch 'master' into feature-gdpr 2023-12-20 18:01:40 +01:00
Hivert Quentin cbeaa4cc11 chore(ytnef): missing symbols with centos 2023-12-20 17:02:32 +01:00
Hivert Quentin 427f7f4b4f feature(contact): Show 100 first results for global address book. Fix commit #17eca6f 2023-12-20 15:36:37 +01:00
Hivert Quentin d68bbc836c chore(js/css): update generated files 2023-12-19 01:00:44 -05:00
smizrahi 51b6c0d9a3 fix(ui): Fix text/placeholder overlaps when Chrome autofill applies 2023-12-18 22:42:13 +01:00
Hivert Quentin 5f2e4889f3 chore(js/css): update generated files 2023-12-18 08:27:23 -05:00
smizrahi 37379ba416 fix(preferences): Fix error 500 when changing password 2023-12-18 14:24:50 +01:00
smizrahi 17eca6f96a feature(contact): Show 100 first results for global address book 2023-12-18 08:34:53 +01:00
Hivert Quentin 26c7462eb0 fix(contacts): Custom contacts categories in sogo.conf wasn't working 2023-12-14 18:11:10 +01:00
smizrahi 0d471efe97 Update changelog 2023-12-12 13:00:46 +01:00
Hivert Quentin 8375c9352e chore(js/css): update generated files 2023-12-12 06:10:11 -05:00
smizrahi f85c53190c fix(addressbook): Fix exception when using multiple address book source and searching. Fixes #5906. 2023-12-12 12:08:25 +01:00
Hivert Quentin 3cd860838c chore(js/css): update generated files 2023-12-12 01:00:56 -05:00
Hivert Quentin 377cff935f chore(release): 5.9.1 2023-12-11 15:49:23 +01:00
Hivert Quentin 06a6ed7768 i18n(cy): Update Welsh translations 2023-12-11 14:32:48 +01:00
Hivert Quentin 0e50d37531 i18n(uk): Update Ukrainian translations 2023-12-11 14:32:47 +01:00
Hivert Quentin 8d1fc1e306 i18n(tr_TR): Update TurkishTurkey translations 2023-12-11 14:32:47 +01:00
Hivert Quentin 10369aa654 i18n(sv): Update Swedish translations 2023-12-11 14:32:46 +01:00
Hivert Quentin 057a1ba105 i18n(es_ES): Update SpanishSpain translations 2023-12-11 14:32:46 +01:00
Hivert Quentin 527fded19c i18n(es_AR): Update SpanishArgentina translations 2023-12-11 14:32:45 +01:00
Hivert Quentin ca21bf4ce1 i18n(sl_SI): Update Slovenian translations 2023-12-11 14:32:45 +01:00
Hivert Quentin cd7e06c2ed i18n(sk): Update Slovak translations 2023-12-11 14:32:44 +01:00
Hivert Quentin 9126cae27d i18n(sr@latin): Update SerbianLatin translations 2023-12-11 14:32:43 +01:00
Hivert Quentin ed444fdc22 i18n(sr): Update Serbian translations 2023-12-11 14:32:43 +01:00
Hivert Quentin 3809ec3904 i18n(ru): Update Russian translations 2023-12-11 14:32:41 +01:00
Hivert Quentin d9c716c1b6 i18n(ro_RO): Update Romanian translations 2023-12-11 14:32:41 +01:00
Hivert Quentin e4f07c466e i18n(pt): Update Portuguese translations 2023-12-11 14:32:40 +01:00
Hivert Quentin 6d270fe7a4 i18n(nn_NO): Update NorwegianNynorsk translations 2023-12-11 14:32:40 +01:00
Hivert Quentin 3d5f352111 i18n(nb_NO): Update NorwegianBokmal translations 2023-12-11 14:32:39 +01:00
Hivert Quentin fe7369e427 i18n(sr_ME@latin): Update Montenegrin translations 2023-12-11 14:32:39 +01:00
Hivert Quentin d6c9ecdeb0 i18n(mk_MK): Update Macedonian translations 2023-12-11 14:32:39 +01:00
Hivert Quentin a9ecaed5fa i18n(lv): Update Latvian translations 2023-12-11 14:32:38 +01:00
Hivert Quentin 21741954dd i18n(kk): Update Kazakh translations 2023-12-11 14:32:38 +01:00
Hivert Quentin 41fb85e6a3 i18n(ja): Update Japanese translations 2023-12-11 14:32:38 +01:00
Hivert Quentin 53036b323f i18n(it): Update Italian translations 2023-12-11 14:32:36 +01:00
Hivert Quentin a16d29b70b i18n(id_ID): Update Indonesian translations 2023-12-11 14:32:35 +01:00
Hivert Quentin 2de6241220 i18n(is): Update Icelandic translations 2023-12-11 14:32:34 +01:00
Hivert Quentin 0b22fa6cd5 i18n(hu): Update Hungarian translations 2023-12-11 14:32:34 +01:00
Hivert Quentin 694c21de99 i18n(he): Update Hebrew translations 2023-12-11 14:32:34 +01:00
Hivert Quentin 5aa7ebf2ae i18n(gl): Update Galician translations 2023-12-11 14:32:33 +01:00
Hivert Quentin dba2332864 i18n(fi): Update Finnish translations 2023-12-11 14:32:33 +01:00
Hivert Quentin 402c3d0a1f i18n(nl): Update Dutch translations 2023-12-11 14:32:33 +01:00
Hivert Quentin 76911fd445 i18n(da_DK): Update Danish translations 2023-12-11 14:32:32 +01:00
Hivert Quentin 029a82143f i18n(cs): Update Czech translations 2023-12-11 14:32:32 +01:00
Hivert Quentin 715d25d40a i18n(hr_HR): Update Croatian translations 2023-12-11 14:32:31 +01:00
Hivert Quentin fc2a82c3b0 i18n(zh_TW): Update ChineseTaiwan translations 2023-12-11 14:32:31 +01:00
Hivert Quentin cf87022348 i18n(zh_CN): Update ChineseChina translations 2023-12-11 14:32:31 +01:00
Hivert Quentin 3040543c79 i18n(ca): Update Catalan translations 2023-12-11 14:32:31 +01:00
Hivert Quentin 3815bc1c5e i18n(bg_BG): Update Bulgarian translations 2023-12-11 14:32:31 +01:00
Hivert Quentin 2afbcbeaed i18n(bs_BA): Update Bosnian translations 2023-12-11 14:32:31 +01:00
Hivert Quentin 33f3a1b716 i18n(eu): Update Basque translations 2023-12-11 14:32:31 +01:00
Hivert Quentin 28d883dac1 i18n(ar): Update Arabic translations 2023-12-11 14:32:31 +01:00
Hivert Quentin c75f210864 i18n(pl): Update Polish translations 2023-12-11 14:32:31 +01:00
Hivert Quentin cfab85624b i18n(pt_BR): Update BrazilianPortuguese translations 2023-12-11 14:32:30 +01:00
Hivert Quentin 6e9e7f98ef i18n(lt): Update Lithuanian translations 2023-12-11 14:32:30 +01:00
Hivert Quentin 8a4bc2a716 i18n(de): Update German translations 2023-12-11 14:32:30 +01:00
Hivert Quentin fd5e28ec77 chore(js/css): update theme default 2023-12-11 14:06:44 +01:00
Hivert Quentin 1961f1a914 chore(js/css): update generated files 2023-12-11 14:06:44 +01:00
Hivert Quentin 0704949056 chore(npm): Update CKEditor to version 4.22.1 2023-12-11 14:06:44 +01:00
WoodySlum 85870d6b16 Merge pull request #350 from kovacs-andras/master
docs(guides): update documentation url
2023-12-11 14:03:27 +01:00
Andras Kovacs 669dcaa242 update documentation url 2023-12-05 14:38:11 +01:00
Hivert Quentin 21571ab1e0 fix(calendar): If content is NSData, properly convert it to NSString 2023-12-05 10:58:48 +01:00
smizrahi 7d66699219 feat(password): Add specials characters to POLICY_MIN_SPECIAL_SYMBOLS 2023-12-04 16:43:16 +01:00
smizrahi cd50ee0176 feat(core): Add mobile provisioning download for Apple's devices. Fix nil port when using standard http configuration (port 80 and 443) 2023-12-04 10:36:41 +01:00
WoodySlum da24c0d0a7 Merge pull request #348 from marvin-j97/patch-1
style(login): Replace envelop icon with key on login page
2023-11-28 16:44:03 +01:00
Marvin 7b15327b19 Use vpn_key icon 2023-11-28 15:47:35 +01:00
Hivert Quentin 6eae3f2b16 i18n(gl): Change Galician name to Galego 2023-11-28 08:49:31 +01:00
smizrahi 3cd9910638 fix(core): Fix user profile retrieval when using utf8mb4_bin collation - in this case the SQL results may return NSdata instead of NSString. Fixes #5902. 2023-11-27 15:51:33 +01:00
smizrahi fb542e6e26 Merge branch 'feature-5726-gab-autocomplete' 2023-11-27 11:19:17 +01:00
smizrahi 60e6bb5b3b Merge branch 'master' into feature-5726-gab-autocomplete 2023-11-27 11:18:31 +01:00
Hivert Quentin 86c9b4ec07 chore(js/css): update generated files 2023-11-24 01:01:04 -05:00
Hivert Quentin 2e670f7e62 feat(mail): Add an option in Preferences to display full email instead of name alone in mailboxes 2023-11-23 14:09:57 +01:00
Hivert Quentin 8babb23c58 chore(js/css): update generated files 2023-11-23 01:00:53 -05:00
Hivert Quentin 1ae02ebd70 fix(UI): selectAll button was still keeping alle items in memory 2023-11-22 11:07:58 +01:00
smizrahi aa53524751 feat(mail): Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes #5490. Fix default values in sogo.conf. 2023-11-20 11:57:26 +01:00
Marvin 6734b4ea16 design(RootPage): Use lock icon for password field
https://pictogrammers.com/library/mdi/icon/key/
2023-11-18 15:46:46 +01:00
Hivert Quentin bb943e414d fix(sogo-tool): add protection to expire-sessions if the input is not an integer 2023-11-17 15:50:41 +01:00
smizrahi ca2c5c188e feat(mail): Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes #5490. Improve bracket icon. 2023-11-17 10:46:22 +01:00
Hivert Quentin 0023a9ce3c fix(calendar): do not let DURATION and DTEND be both present in vevent 2023-11-17 09:24:12 +01:00
Hivert Quentin 1e8127b461 fix(calendar): properly set the start date range for yearly events 2023-11-16 11:18:23 +01:00
smizrahi 6b08f2e4de fix(core): Fix calendar issues with Thunderbird related to vlist exclusion. Fix error log on photo. Closes #5885 2023-11-13 23:02:07 +01:00
Hivert Quentin 605d8b1169 chore(js/css): update generated files 2023-11-11 00:00:50 -05:00
Hivert Quentin c872fb4d9c feat(preferences): can set SOGoForwardConstraints to 3 to accept both internal and external domains from SOGoForwardConstraintsDomains 2023-11-10 15:07:14 +01:00
smizrahi 11ad203388 feat(addressbook): Add global address book autocomplete on vlist 2023-11-09 14:08:16 +01:00
smizrahi 0b1f2b0405 feat(addressbook): Add global address book autocomplete on vlist 2023-11-08 22:36:40 +01:00
smizrahi 0560efd1f6 feat(addressbook): Add global address book autocomplete on vlist 2023-11-08 18:10:06 +01:00
smizrahi d1634054d6 fix(mail): Clean temporary files when mail is sent. Check if body part is NGMimeFileData to add path for cleaning. 2023-11-07 10:38:54 +01:00
Hivert Quentin 7481ccf370 fix(hmtl): prevent html injection of tag form 2023-11-06 14:04:53 +01:00
Hivert Quentin 65374e44fc fix(scripts): wrong type for c_value in script for complete unicode coverage 2023-11-06 09:21:52 +01:00
Hivert Quentin f8b7986501 fix(template): wrong ending tag 2023-11-04 11:32:17 +01:00
Hivert Quentin 8da3d06117 chore(js/css): update generated files 2023-11-04 00:00:46 -04:00
Hivert Quentin d0b4b50456 feat(core): add SOGoDisableExport option to disable export for mail, calendar and contacts 2023-11-03 18:20:12 +01:00
Hivert Quentin e0ef59d5f2 feat(core): Add SOGoDisableSharingAnyAuthUser option to disable sharing to any user authenticated for mail, contacts and calendar 2023-11-03 17:01:49 +01:00
Hivert Quentin 6e60b10755 feat(ux): select all button will unselect all if click again 2023-11-03 15:13:48 +01:00
Hivert Quentin 0df0e34073 doc(sogo-tool): Add doc to detailed sogo-tool 2023-11-02 17:20:05 +01:00
smizrahi f41ab2ed0c feat(mail): Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes #5490. 2023-11-02 09:45:51 +01:00
smizrahi abce5f42cf feat(mail): Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes #5490. 2023-11-01 18:25:01 +01:00
smizrahi 277b73c663 docs(calendar+addressbook): Add provisioning profile doc 2023-11-01 15:57:42 +01:00
smizrahi f35a37bbdd fix(mail): Clean temporary files when mail is sent 2023-11-01 15:40:33 +01:00
smizrahi 9c0948518b fix(mail): Fix duplication of images when saving draft. Fixes #5888. Clean old code 2023-11-01 10:29:25 +01:00
smizrahi 4fe01f96d7 feat(core): Add mobile provisioning download for Apple's devices. Update translations (incompatible icon under windows) 2023-10-31 12:15:00 +01:00
smizrahi a273f7aca5 feat(core): Add mobile provisioning download for Apple's devices. Update translations (incompatible icon under windows) 2023-10-31 12:10:05 +01:00
Hivert Quentin 8f635d4856 chore(js/css): update generated files 2023-10-31 00:00:55 -04:00
Hivert Quentin 068126cd22 chore(js/css): update generated files 2023-10-19 00:00:47 -04:00
smizrahi 9ef49bb56f feat(core): Add URL encryption for GDPR compliancy (fix some dav issues) 2023-10-18 16:37:08 +02:00
smizrahi 54a1f922f9 Merge branch 'master' into feature-gdpr 2023-10-18 13:29:29 +02:00
smizrahi 65f8336255 feat(core): Add mobile provisioning download for Apple's devices. Fix shared calendar and contacts 2023-10-18 11:43:35 +02:00
WoodySlum c67ad819ab Merge pull request #347 from leecher1337/fix-5884
fix(eas): Fix for excessive memory usage on mailboxes with thousands of folders (by @leecher1337)
2023-10-17 21:03:39 +02:00
smizrahi 64a6319635 feat(core): Add URL encryption for GDPR compliancy (refactoring) 2023-10-17 16:43:50 +02:00
smizrahi 31c6f78913 feat(core): Add URL encryption for GDPR compliancy 2023-10-17 16:17:25 +02:00
Hivert Quentin 4b45dc7584 fix(translation): incorret value causing trouble to transifex 2023-10-17 09:23:33 +02:00
leecher1337 063fb2be3d Fix for excessive memory usage on mailboxes with thousands of folders 2023-10-16 16:12:24 +02:00
smizrahi ee9899fe3d fix(mail): Fix duplication of images when saving draft. Fixes #5888 2023-10-13 10:29:42 +02:00
smizrahi 81f2d88db3 fix(core): Add cache for CDefaultsSize to avoid spamming SQL request (pgsql) 2023-10-11 12:57:45 +02:00
Hivert Quentin baf6bdfedf chore(js/css): update generated files 2023-10-11 06:23:20 -04:00
Hivert Quentin c569ed2d77 fix(http): set correct Accept header when dowloading eml file 2023-10-11 11:32:26 +02:00
smizrahi 87e1240ace fix(core): Add cache for CDefaultsSize to avoid spamming SQL request 2023-10-10 17:37:59 +02:00
Hivert Quentin b396a277f0 feat(reply): add references header when replying 2023-10-04 14:55:27 +02:00
Hivert Quentin e460e5377c chore(js/css): update generated files 2023-10-04 00:00:47 -04:00
Hivert Quentin 1d3da92bab fix(addressbook): autocomplete correctly return two contacts from two ldap with same id 2023-10-03 14:28:57 +02:00
Hivert Quentin b1d8475520 chore(language): fixed french and double key 2023-10-03 09:12:02 +02:00
smizrahi d38cc86d29 feat(core): Add mobile provisioning download for Apple's devices. Fix build issue 2023-09-28 09:18:43 +02:00
Hivert Quentin df2f73f1f6 chore(js/css): update generated files 2023-09-28 00:00:48 -04:00
smizrahi 19915e3dff feat(core): Add mobile provisioning download for Apple's devices 2023-09-27 17:28:29 +02:00
smizrahi 6d16ee7988 feat(core): Add mobile provisioning download for Apple's devices 2023-09-27 17:28:29 +02:00
Hivert Quentin 5b73a60aa6 chore(release): 5.9.0 2023-09-27 10:20:23 +02:00
Hivert Quentin 487ad1a849 i18n(cy): Update French translations 2023-09-25 16:33:17 +02:00
Hivert Quentin 0e2deac164 i18n(cy): Update Welsh translations 2023-09-25 16:24:51 +02:00
Hivert Quentin 5ee12a4507 i18n(uk): Update Ukrainian translations 2023-09-25 16:24:34 +02:00
Hivert Quentin dfc1ab7e0e i18n(tr_TR): Update TurkishTurkey translations 2023-09-25 16:24:34 +02:00
Hivert Quentin d5c1b742f4 i18n(sv): Update Swedish translations 2023-09-25 16:24:34 +02:00
Hivert Quentin ea8f04ac7c i18n(es_ES): Update SpanishSpain translations 2023-09-25 16:24:06 +02:00
Hivert Quentin 64865aa85a i18n(es_AR): Update SpanishArgentina translations 2023-09-25 16:24:06 +02:00
Hivert Quentin b08b5dd79a i18n(sl_SI): Update Slovenian translations 2023-09-25 16:24:05 +02:00
Hivert Quentin 8a10213b75 i18n(sk): Update Slovak translations 2023-09-25 16:24:05 +02:00
Hivert Quentin 1710112c4e i18n(sr@latin): Update SerbianLatin translations 2023-09-25 16:24:05 +02:00
Hivert Quentin 2242c21323 i18n(sr): Update Serbian translations 2023-09-25 16:24:05 +02:00
Hivert Quentin da609c448e i18n(ru): Update Russian translations 2023-09-25 16:08:07 +02:00
Hivert Quentin 9aebf9bf02 i18n(ro_RO): Update Romanian translations 2023-09-25 16:08:07 +02:00
Hivert Quentin 46d5779088 i18n(pt): Update Portuguese translations 2023-09-25 16:08:06 +02:00
Hivert Quentin 92d38c108e i18n(pl): Update Polish translations 2023-09-25 16:08:06 +02:00
Hivert Quentin 02d32d5f6c i18n(nn_NO): Update NorwegianNynorsk translations 2023-09-25 16:08:06 +02:00
Hivert Quentin 0368bad3c5 i18n(nb_NO): Update NorwegianBokmal translations 2023-09-25 16:08:06 +02:00
Hivert Quentin 865aba3248 i18n(sr_ME@latin): Update Montenegrin translations 2023-09-25 16:08:06 +02:00
Hivert Quentin bbb09555f0 i18n(mk_MK): Update Macedonian translations 2023-09-25 16:08:06 +02:00
Hivert Quentin 493f5f625f i18n(lv): Update Latvian translations 2023-09-25 16:08:05 +02:00
Hivert Quentin ed5199aee7 i18n(kk): Update Kazakh translations 2023-09-25 16:08:05 +02:00
Hivert Quentin 2fee2f8782 i18n(it): Update Italian translations 2023-09-25 16:08:03 +02:00
Hivert Quentin e50b66b62e i18n(id_ID): Update Indonesian translations 2023-09-25 16:08:03 +02:00
Hivert Quentin ee3ed0779c i18n(is): Update Icelandic translations 2023-09-25 16:08:02 +02:00
Hivert Quentin e3d392b12a i18n(hu): Update Hungarian translations 2023-09-25 16:08:01 +02:00
Hivert Quentin 41842e2d39 i18n(he): Update Hebrew translations 2023-09-25 16:08:01 +02:00
Hivert Quentin 86e5872dc1 i18n(gl): Update Galician translations 2023-09-25 16:08:01 +02:00
Hivert Quentin 7ff0699648 i18n(fi): Update Finnish translations 2023-09-25 16:08:01 +02:00
Hivert Quentin 03d43079d3 i18n(nl): Update Dutch translations 2023-09-25 16:08:01 +02:00
Hivert Quentin 9ef58e7c6d i18n(da_DK): Update Danish translations 2023-09-25 16:08:00 +02:00
Hivert Quentin 1a5408c2b3 i18n(cs): Update Czech translations 2023-09-25 16:08:00 +02:00
Hivert Quentin b1df5d4d14 i18n(hr_HR): Update Croatian translations 2023-09-25 16:08:00 +02:00
Hivert Quentin e330c552c3 i18n(zh_TW): Update ChineseTaiwan translations 2023-09-25 16:08:00 +02:00
Hivert Quentin 300cfe4e27 i18n(zh_CN): Update ChineseChina translations 2023-09-25 16:08:00 +02:00
Hivert Quentin c82a48f96f i18n(ca): Update Catalan translations 2023-09-25 16:07:59 +02:00
Hivert Quentin 6606f9865a i18n(bg_BG): Update Bulgarian translations 2023-09-25 16:07:58 +02:00
Hivert Quentin ce6efafe54 i18n(pt_BR): Update BrazilianPortuguese translations 2023-09-25 16:07:58 +02:00
Hivert Quentin fc93272d70 i18n(bs_BA): Update Bosnian translations 2023-09-25 16:07:58 +02:00
Hivert Quentin 6293f62d83 i18n(eu): Update Basque translations 2023-09-25 16:07:56 +02:00
Hivert Quentin 132912b566 i18n(ar): Update Arabic translations 2023-09-25 16:07:56 +02:00
Hivert Quentin 97d01fb14e i18n(ja): Update Japanese translations 2023-09-25 16:07:56 +02:00
Hivert Quentin 4974648c33 i18n(lt): Update Lithuanian translations 2023-09-25 16:07:56 +02:00
Hivert Quentin 0f0ecf71c3 i18n(de): Update German translations 2023-09-25 16:07:55 +02:00
Hivert Quentin ff263b99fe fix(contacts): Fix 5875 2023-09-25 15:11:45 +02:00
Hivert Quentin 8604389152 fix(translation): french syntax 2023-09-25 10:33:28 +02:00
Hivert Quentin bba1da1b2b fix(sieve): sieve availibility was checked even if we disable it 2023-09-18 11:44:45 +02:00
Hivert Quentin bafb1ffc69 chore(js/css): update generated files 2023-09-14 00:00:46 -04:00
Hivert Quentin 5534d4b6ee fix(notification): body was not send + missing tooltip 2023-09-13 14:52:08 +02:00
Hivert Quentin 8efdee4ef9 chore(html): change support mail to sogo 2023-09-12 11:23:25 +02:00
Hivert Quentin 320938445c chore(js/css): update generated files 2023-09-12 00:00:45 -04:00
smizrahi dc23721b75 fix(js): Fix url redirection to null when disconnected. Closes #5844. 2023-09-11 14:55:44 +02:00
smizrahi 4abf12b4bb fix(preferences): Signature could not be saved when SOGoCreateIdentitiesDisabled is set to YES and no signature is on identity 2023-09-11 11:56:10 +02:00
smizrahi 1a257c7768 fix(calendar): Fix Out of range value for column 'c_startdate' SQL error. Add log. 2023-09-11 11:34:20 +02:00
Hivert Quentin a1528bcc03 fix(cas): correction on pgtUrl 2023-09-09 11:43:24 +02:00
Hivert Quentin 041bb98e9d chore(cas): make script both python2 and 3 compatible 2023-09-09 10:15:34 +02:00
Hivert Quentin f2df405616 fix(calendar): some kinds of events are not shown 2023-09-07 13:17:44 +02:00
Hivert Quentin 68b1c1e5df fix(CAS): key based on tciket was too long for memecached 2023-09-07 09:14:24 +02:00
smizrahi f0719ee409 fix(addressbook): Remove vlist from dav request for Thunderbird only. In Thunderbird 115, using vlist results in contact duplication 2023-09-06 14:02:05 +02:00
smizrahi 87b89ed094 docs(calendar): Update Apple's calendar instructions for 5.8.9 2023-09-04 10:23:29 +02:00
Hivert Quentin 402e54a6fc chore(js/css): update generated files 2023-09-02 00:00:53 -04:00
Hivert Quentin 16af360006 fix(notifications): bug with older user profile 2023-09-01 17:21:38 +02:00
Hivert Quentin 27c9dd36e5 chore(js/css): update generated files 2023-09-01 00:00:53 -04:00
Hivert Quentin 3309346b46 feat(notificaiton) move custom message to body instead of subject 2023-08-31 15:22:56 +02:00
Hivert Quentin d133961302 chore(js/css): update generated files 2023-08-31 00:00:46 -04:00
Hivert Quentin 6b647050fc feat(notification): add custom message 2023-08-30 17:04:49 +02:00
Hivert Quentin acaddf5d4f chore(js/css): update generated files 2023-08-30 00:00:46 -04:00
Hivert Quentin 82b69d1414 feat(notification): add enotify sieve script 2023-08-29 10:07:53 +02:00
smizrahi 4f7c73143f fix(calendar): Fix MacOS X Ventura calendar support. Fixes #5639 2023-08-22 18:11:53 +02:00
smizrahi 1c93796ae1 test(timeout): Change some timeouts fo tests 2023-08-17 11:27:04 +02:00
smizrahi fce02db7d1 fix(calendar): Revert commit e47566e3a and change HTTP status from 409 to 403 when event has a sequence number lower than than the new one. This should fix some Apple's duplication events 2023-08-16 17:18:59 +02:00
Hivert Quentin c5814d60a4 fix(calendar): recurrenid wasn't working properly 2023-08-16 17:18:59 +02:00
Hivert Quentin f3ddc867cf chore(js/css): update generated files 2023-08-16 07:30:31 -04:00
smizrahi 5e471c5d66 fix(js): Fix invalid sass version 2023-08-16 13:27:34 +02:00
smizrahi a1a07ddcee chore(js/css): update generated files 2023-08-16 06:59:10 +00:00
smizrahi cab5bc011e fix(calendar): Avoid event duplication when adding an ics with an older sequence number and event already added in calendar 2023-08-14 17:18:37 +02:00
smizrahi 4d2c77195e fix(calendar): When an event has no date (weird case), it is not possible to remove the event (NSException) 2023-08-14 17:08:27 +02:00
Hivert Quentin e959583390 fix(mail): Templates namespace is correctly returned 2023-08-09 16:30:33 +02:00
smizrahi 82178eeba9 fix(calendar): Fix NAME:NSInvalidArgumentException REASON:SOGoAppointmentFolder(instance) does not recognize davCalendarProxyReadFor 2023-08-09 14:44:35 +02:00
smizrahi 382b8a0a1a fix(calendar): Do not send tentative participation mail when user open mail or add ics to calendar app 2023-08-08 15:49:15 +02:00
Hivert Quentin f3981c4276 fix(calendar): deleted occurence of repeated event could cause some troubles with other imrbicated occurences
The fix is within SOPE/NGCards/iCalRecurrenceCalculator.m:244, the others files are juste modified to make the code more readable
2023-08-07 17:16:50 +02:00
Hivert Quentin f5f74f751a fix(preferences): Fix language list sorting on preferences page 2023-08-04 10:36:50 +02:00
Hivert Quentin 528d178256 chore(packaging): debian 12 2023-08-02 11:36:36 +02:00
Hivert Quentin f3dce5d50b chore(js/css): update generated files 2023-08-01 00:00:53 -04:00
smizrahi b7e529dd49 fix(mail): When signature is too big and changing identity, a 'regex too big' error occurs. In this case just add signature at the end. Fixes #5695. 2023-07-31 10:41:37 +02:00
smizrahi 68cef9ae03 feat(calendar): Add CALDAV Mac OS X Sonoma (14) support 2023-07-31 09:19:23 +02:00
smizrahi 87bbba0c8d feat(calendar): Add CALDAV Mac OS X Sonoma (14) support 2023-07-31 09:19:15 +02:00
smizrahi e0d76fba65 fix(login): Fix language list sorting on login page 2023-07-27 14:15:26 +02:00
Hivert Quentin 5b352635b8 chore(js/css): update generated files 2023-07-27 00:00:52 -04:00
smizrahi 8582e423bd feat(preferences): Add user preferences to enable / disable signature for new mail, reply and forward 2023-07-26 19:38:57 +02:00
Hivert Quentin 577d991d42 chore(js/css): update generated files 2023-07-26 00:00:48 -04:00
smizrahi 5d315ac180 fix(addressbook): Fix broken image in shared address book when image is null 2023-07-25 20:39:49 +02:00
smizrahi 326bc68f4c fix(preferences): Fix the issue when signature is too long and preferences are not saved. Note that MySQL profile table should be updated with a migration script 2023-07-25 17:22:11 +02:00
smizrahi ec27f7e714 fix(user): Replace length with count for NSArray 2023-07-25 16:08:08 +02:00
smizrahi e731303439 docs(ldap): Fix ldap field invalid names 2023-07-25 10:08:23 +02:00
Hivert Quentin 0cb896d4fe chore(js/css): update generated files 2023-07-21 00:00:46 -04:00
Hivert Quentin ba4c7a5300 fix(preferences): add autocomplete for recipients in automatic forward 2023-07-20 09:26:16 +02:00
Hivert Quentin 40512f6b06 chore(js/css): update generated files 2023-07-20 00:00:48 -04:00
smizrahi d1a51e8340 feat(core): Add in user settings to force password change for a user when logging - update documentation 2023-07-17 11:07:43 +02:00
Hivert Quentin bd8b49d2c9 fix(calendar): Repeated events didn't use the correct timezone in some cases 2023-07-12 15:00:24 +02:00
smizrahi 57ba5397e5 fix(calendar): Fix duplicates in series appointments for Apple's Calendar 2023-07-12 08:49:01 +02:00
Hivert Quentin d55030323b chore(js/css): update generated files 2023-07-12 00:00:46 -04:00
smizrahi 9918f75580 feat(core): Add in user settings to force password change for a user when logging 2023-07-11 18:48:54 +02:00
smizrahi 7600e9e179 fix(calendar): Fix duplicates in series appointments for Apple's Calendar 2023-07-11 15:26:31 +02:00
smizrahi a48440754c fix(ui): Disable send button while mail is sending. Fixes #5825. 2023-07-10 11:22:08 +02:00
Hivert Quentin e53e5493c6 style(UX): add missing tooltips 2023-07-07 17:35:32 +02:00
WoodySlum 6eee167876 Merge pull request #345 from modir/patch-1
fix(doc): Update SOGo"s developer
2023-07-05 10:03:14 +02:00
Raffael 8e4d801df0 Changing "Inverse" to "Alinto" 2023-06-29 00:10:49 +02:00
smizrahi b666137a70 fix(preferences): Disable auxiliary mail accounts creation when SOGoCreateIdentitiesDisabled is enabled 2023-06-28 14:36:19 +02:00
Hivert Quentin a95f6c0799 chore(js/css): update generated files 2023-06-21 18:00:51 -04:00
smizrahi 09d03261af feat(preferences): Add subtext in vacation filter to explain the behavior 2023-06-21 16:33:54 +02:00
smizrahi 8a8dcae029 fix(calendar): Add negative timestamp support to use date before 1970-01-01. Fixes #4914 (partial) 2023-06-21 15:51:18 +02:00
smizrahi fccc910791 docs(installation): Add RHEL9 support 2023-06-20 22:27:26 +02:00
smizrahi e42f28cf22 chore(release): 5.8.4 2023-06-20 22:27:08 +02:00
smizrahi eb42e1787c fix(preferences): Fix NSException issue when SOGoCreateIdentitiesDisabled is set 2023-06-20 22:25:12 +02:00
Hivert Quentin 8baa770681 chore(js/css): update generated files 2023-06-14 18:00:51 -04:00
Hivert Quentin af59e57fc0 fix(mail): Fix a bug when pressing the key DEL more than once to delete mails 2023-06-14 17:47:23 +02:00
smizrahi 22372a7598 fix(calendar): Fix calendar green dot stucks in original day when browser is opened for days and day change. Fixes #5783 2023-06-12 10:18:26 +02:00
Hivert Quentin 117540dbb1 chore(npm): update ckeditor with galician language 2023-06-12 08:56:30 +02:00
Hivert Quentin 665861d830 i181(gl_ES) add Galician language support 2023-06-12 08:56:30 +02:00
smizrahi f9fdad251d fix(mail): Removed invalid HTML tags in mail body. Fixes #5755 2023-06-07 14:42:21 +02:00
smizrahi f22672cef8 fix(calendar): Fix calendar green dot stucks in original day when browser is opened for days and day changed 2023-06-07 10:06:59 +02:00
smizrahi fa5264e822 fix(calendar): Increase timeout to 60 seconds for large ics calendar. Closes #5781. 2023-06-06 09:04:01 +02:00
smizrahi b68a215ea2 fix(calendar): Fix regression on calendar event modification. Start date was set to 1970. Fixes #5777. 2023-06-01 17:13:49 +02:00
smizrahi e87d511e79 chore(js/css): update generated files 2023-05-30 16:32:40 +00:00
Hivert Quentin 854e83c22c fix(mail): autocomplete can find two lists named the same but in different address books 2023-05-30 18:29:55 +02:00
smizrahi 24200e7d34 chore(js/css): update generated files 2023-05-30 16:26:08 +00:00
smizrahi 9da6521cfb Merge branch 'master' into SOGo-5.8 2023-05-30 18:25:41 +02:00
Hivert Quentin c64fabd09b fix link in changelog + add files in gitignore 2023-05-30 14:59:04 +02:00
Hivert Quentin 4177ec13e0 chore(release): 5.8.3 2023-05-30 10:25:06 +02:00
Hivert Quentin 0f06c576f6 i18n(fr): Update French translations 2023-05-30 09:47:02 +02:00
Hivert Quentin b4e315b1d8 i18n(sr): Update Serbian translations 2023-05-30 09:47:02 +02:00
Hivert Quentin e8f507d7b9 i18n(nb_NO): Update NorwegianBokmal translations 2023-05-30 09:47:02 +02:00
Hivert Quentin 973a0efa6c i18n(de): Update German translations 2023-05-30 09:47:01 +02:00
Hivert Quentin ad47aec62e i18n(da_DK): Update Danish translations 2023-05-30 09:47:01 +02:00
Hivert Quentin a8f2a3749a i18n(hu): Update Hungarian translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 6655f06cc0 i18n(uk): Update Ukrainian translations 2023-05-30 09:47:01 +02:00
Hivert Quentin d8a2146014 i18n(tr_TR): Update TurkishTurkey translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 239016fdc2 i18n(ru): Update Russian translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 51817fc6b4 i18n(pl): Update Polish translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 97b69af241 i18n(it): Update Italian translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 42b9a03725 i18n(nl): Update Dutch translations 2023-05-30 09:47:01 +02:00
Hivert Quentin b6c7521f14 i18n(bg_BG): Update Bulgarian translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 818332edd6 i18n(pt_BR): Update BrazilianPortuguese translations 2023-05-30 09:47:01 +02:00
Hivert Quentin 5f47fc7bcb i18n(cy): Update Welsh translations 2023-05-30 09:47:00 +02:00
Hivert Quentin af96d2b5c4 i18n(sv): Update Swedish translations 2023-05-30 09:47:00 +02:00
Hivert Quentin 2b7552a5a9 i18n(es_ES): Update SpanishSpain translations 2023-05-30 09:47:00 +02:00
Hivert Quentin ccf4872347 i18n(es_AR): Update SpanishArgentina translations 2023-05-30 09:47:00 +02:00
Hivert Quentin 17fca79bb0 i18n(sl_SI): Update Slovenian translations 2023-05-30 09:46:59 +02:00
Hivert Quentin 1ea3f009bb i18n(sk): Update Slovak translations 2023-05-30 09:46:59 +02:00
Hivert Quentin b1f6d20e9f i18n(sr@latin): Update SerbianLatin translations 2023-05-30 09:46:59 +02:00
Hivert Quentin 7be8e644a9 i18n(ro_RO): Update Romanian translations 2023-05-30 09:46:58 +02:00
Hivert Quentin 6bb781b531 i18n(pt): Update Portuguese translations 2023-05-30 09:46:58 +02:00
Hivert Quentin 3e93296902 i18n(nn_NO): Update NorwegianNynorsk translations 2023-05-30 09:46:56 +02:00
Hivert Quentin d5bf149f7a i18n(sr_ME@latin): Update Montenegrin translations 2023-05-30 09:46:55 +02:00
Hivert Quentin d4a2d6b6f4 i18n(mk_MK): Update Macedonian translations 2023-05-30 09:46:55 +02:00
Hivert Quentin 07a01e3fdd i18n(lt): Update Lithuanian translations 2023-05-30 09:46:54 +02:00
Hivert Quentin 56e040c6d5 i18n(lv): Update Latvian translations 2023-05-30 09:46:53 +02:00
Hivert Quentin f3bdda516e i18n(kk): Update Kazakh translations 2023-05-30 09:46:52 +02:00
Hivert Quentin 8d842ccfb4 i18n(ja): Update Japanese translations 2023-05-30 09:46:52 +02:00
Hivert Quentin aa43c5bf31 i18n(id_ID): Update Indonesian translations 2023-05-30 09:46:50 +02:00
Hivert Quentin 7f7f224621 i18n(is): Update Icelandic translations 2023-05-30 09:46:49 +02:00
Hivert Quentin b8c5d8f4a8 i18n(he): Update Hebrew translations 2023-05-30 09:46:48 +02:00
Hivert Quentin 33427ac00b i18n(fi): Update Finnish translations 2023-05-30 09:46:48 +02:00
Hivert Quentin e5dc0408ce i18n(cs): Update Czech translations 2023-05-30 09:46:47 +02:00
Hivert Quentin b706d1b41f i18n(hr_HR): Update Croatian translations 2023-05-30 09:46:47 +02:00
Hivert Quentin 0a2d702c69 i18n(zh_TW): Update ChineseTaiwan translations 2023-05-30 09:46:46 +02:00
Hivert Quentin 0b4fddc232 i18n(zh_CN): Update ChineseChina translations 2023-05-30 09:46:45 +02:00
Hivert Quentin 87f778d01c i18n(ca): Update Catalan translations 2023-05-30 09:46:44 +02:00
Hivert Quentin 76dcd4f6aa i18n(bs_BA): Update Bosnian translations 2023-05-30 09:46:43 +02:00
Hivert Quentin fb5fa0c63d i18n(eu): Update Basque translations 2023-05-30 09:46:43 +02:00
Hivert Quentin 2c0b59fa71 i18n(ar): Update Arabic translations 2023-05-30 09:46:42 +02:00
smizrahi a44e96755a Update gitignore 2023-05-24 18:17:56 +02:00
smizrahi 1a06996381 test(core): Add junit output format 2023-05-24 18:17:41 +02:00
smizrahi a7ecb5816d Merge branch 'SOGo-5.8' into fix-green-dot 2023-05-24 11:13:12 +02:00
smizrahi e3a7acd329 Merge branch 'SOGo-5.8' into fix-5768 2023-05-23 15:54:54 +02:00
smizrahi 23da4cca7b fix(mail): Signature images are not handled properly in forwarded or replied to messages. Save extracted body parts (for signature) into file system. Fixes #5768 2023-05-23 15:50:48 +02:00
Hivert Quentin 10f2e622d2 chore(timezones): Update to version 2023c 2023-05-23 11:27:41 +02:00
Hivert Quentin 3b4bf71f77 chore(js/css): update generated files 2023-05-23 08:07:03 +00:00
Hivert Quentin 7292dbc780 chore(npm): Update CKEditor to version 4.21.0 2023-05-23 09:42:28 +02:00
smizrahi ab954a150e fix(mail): Fix email without subject according to RFC 2822. Fixes #5743 2023-05-22 18:23:28 +02:00
root 7b13006390 chore(js/css): update generated files 2023-05-22 16:21:59 +00:00
smizrahi 139ef15284 fix(calendar): Fix search issue on repeated events when one title is changed the event could not be found 2023-05-22 16:17:32 +02:00
smizrahi d436afb054 fix(mail): Signature images are not handled properly in forwarded or replied to messages. Save extracted body parts (for signature) into file system. Fixes #5768 2023-05-22 10:54:48 +02:00
Hivert Quentin e076d0db73 fix(calendar,preferences) Small fixes for commit 5c4d467d and 6050c4ee 2023-05-22 10:11:58 +02:00
Hivert Quentin 5c4d467d06 feat(calendar): add copy to clipboard button in "links to calendar" panel 2023-05-19 13:14:55 +02:00
Hivert Quentin 6050c4ee61 feat(preferences): show special characters when changing password 2023-05-17 18:12:21 +02:00
smizrahi 9ab59e7420 Merge branch 'master' into sogo-5.8 2023-05-16 10:58:23 +02:00
smizrahi 613ee7b8b3 docs(upgrading): Add instructions for Mac OS X Ventura changes introduced in SOGo 5.8.2 2023-05-16 10:58:03 +02:00
smizrahi 572abfb589 Merge branch 'master' into sogo-5.8 2023-05-16 10:34:19 +02:00
smizrahi 32a04998e5 fix(calendar): Fix Out of range value for column 'c_startdate' SQL error 2023-05-15 20:17:55 +02:00
smizrahi 158a5becc9 fix(calendar): Fix Out of range value for column 'c_startdate' SQL error 2023-05-15 20:07:34 +02:00
Hivert Quentin 9c7ef089c2 fix(mail): Recipients with umlaut (ü) trigerred the end of string
With chrome and edge and a german keyboard, the ü was considered as a separator keycode when adding recipients
2023-05-15 15:13:15 +02:00
Hivert Quentin a14f9a7b79 fix(preferences): Cannot save preferences when SOGoCreateIdentitiesDisabled=YES 2023-05-12 16:34:16 +02:00
Leon Klingele f04c73d495 fix(calendar(js)): prevent duplicate event creation in case of an event conflict
In case of an calendar event conflict the form submit button was not
disabled after use, allowing it to be clicked again.
This could have resulted in a double creation of the submit event.
2023-05-10 17:13:23 +02:00
Leon Klingele 5c944617d0 fix(calendar(js)): escape CSS selector names
SOGo uses the name of calendar categories verbatim to construct a CSS
selector without escaping characters such as "/". This patch ensures
those selector names are properly escaped so calendar categories
applied to a calendar event match the according selector and appear
in the correct color.

This patch makes use of the CSS escape API which is supported by all
major browsers. See https://caniuse.com/mdn-api_css_escape.

Also see https://mathiasbynens.be/notes/css-escapes.
2023-05-10 17:07:49 +02:00
smizrahi 1df2586745 fix(addressbook): Fix asynchronous selection of contacts - cards are not added as they're not yet loaded. 2023-05-10 10:32:46 +02:00
root 807622dd53 chore(js/css): update generated files 2023-05-10 08:27:21 +00:00
smizrahi a5d4715e76 fix(core): Add + = special characters in password policy 2023-05-10 09:39:38 +02:00
smizrahi d802b92a13 Revert "fix(UI): Make the login page honor the color theme"
This reverts commit 607bc08c92.
2023-05-03 15:02:11 +02:00
smizrahi 479d29a6e2 chore(sogo-tool): Fix delete ALL acl SQL issue 2023-05-02 17:44:29 +02:00
smizrahi dd60e016c6 fix(calendar): Fix Web Calendar (ics) subscription with authentication between SOGo instances not possible after upgrading from 5.7.0 to 5.8.2. Fixes #5753 2023-05-02 13:32:23 +02:00
smizrahi 39ab482b7f fix(activesync): Wrong decoding emails in Outlook via EAS. Force utf-8 when contnet-type is different than html part. Original fix from tfu. Fixes #5664 2023-04-26 09:49:54 +02:00
smizrahi d9ac1b916f Merge branch 'fix-5749' 2023-04-26 09:32:06 +02:00
smizrahi 6643cf531a chore(js/css): update generated files 2023-04-25 22:48:19 +02:00
smizrahi 96639b70a0 feat(calendar): Add week number on month view. Fixes #4457. 2023-04-25 22:46:18 +02:00
smizrahi 861dea8efa i18n(base): Fix the meaning of 'Disable auto reply on' 2023-04-25 09:07:44 +02:00
smizrahi dc8c1c10ed i18n(fr): Fix the meaning of 'Disable auto reply on' 2023-04-25 08:57:25 +02:00
smizrahi d43de46a5a i18n(en): Fix the meaning of 'Disable auto reply on' 2023-04-25 08:56:54 +02:00
smizrahi 810cd1235f feat(mail): Add autolink from ckeditor. Fixes #5749 2023-04-24 10:05:47 +02:00
smizrahi 3b0fbdd4f4 fix(js): Fix JavaScript error when send mail from Addressbook. Fixes #5750. 2023-04-24 09:41:21 +02:00
smizrahi 7b711eabb3 fix(eas): Fix error 500 when SOGoCacheCleanup triggered cleanup with shibboleth 4.2.1. Fore refresh ticket in iFrame in this case 2023-04-29 16:07:32 +02:00
smizrahi 650ca16ff7 fix(calendar): Fix calendar green dot stucks in original day when browser is opened for days and day changed 2023-04-19 23:31:49 +02:00
smizrahi af6202bee6 feat(preferences): Add SOGoCreateIdentitiesDisabled domain option which disables identity creation for users in preferences 2023-04-18 16:57:31 +02:00
smizrahi 5500ce7085 fix(eas): Fix error 500 when SOGoCacheCleanup triggered cleanup with shibboleth 4.2.1. Fore refresh ticket in iFrame in this case 2023-04-17 10:53:23 +02:00
smizrahi 46215aca87 fix(calendar): Rework confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Rework of #5585. Closes #5720. Fixes #5732. 2023-04-06 10:57:52 +02:00
smizrahi dbd4e20c34 fix(mail): Fix images in attachements when replying to a mail. Fixes #5731 2023-04-06 09:13:08 +02:00
smizrahi 4fc61a28d5 fix(calendar): Rework confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Rework of #5585. Closes #5720. 2023-04-05 17:49:01 +02:00
smizrahi fd7bdd8393 i18n(fr): Update French localization 2023-04-05 14:24:31 +02:00
WoodySlum a5e7a53c8b Merge pull request #325 from adetk/master
i18n(ru): Date specific Russian from and to translations
2023-04-05 14:19:40 +02:00
smizrahi 6ccd22b511 fix(calendar): Rework confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Rework of #5585. Closes #5720. 2023-04-05 14:13:17 +02:00
adetk a2c357f045 Update Localizable.strings
i18n(ru): Date specific Russian from and to translations (PR #325)
2023-04-05 11:31:34 +06:00
smizrahi 2f36fa55fe fix(core): Add . , : ; special characters in password policy 2023-04-04 17:18:05 +02:00
smizrahi d49ef4047a fix(mail): Fix invalid forward template when replying. Closes #5726 2023-04-04 08:45:12 +02:00
smizrahi 0edd3f757f fix(mail): Removed attachements of images when replying to a mail. As the image is inline, the attachement shall be removed. 2023-04-03 19:11:53 +02:00
Adet Kineyev b61bde9072 i18n(kk): Update Kazakh translations 2023-04-03 13:22:37 +06:00
smizrahi 6acb245fec fix(js): Fix display of body message when 'to' field is not filled in. Closes #5721 2023-04-03 09:08:35 +02:00
adetk 346a3edbcf Merge branch 'Alinto:master' into master 2023-04-03 12:51:53 +06:00
smizrahi 6338ca19c2 chore(release): 5.8.2 2023-03-28 21:43:35 +02:00
smizrahi 95cb615e92 chore(release): 5.8.2 2023-03-28 21:34:01 +02:00
smizrahi 5e11702d88 Update ChangeLog 2023-03-28 21:28:35 +02:00
smizrahi f813b78c3c fix(calendar): Impossible to create a new event after creating a new one. Closes #5718 2023-03-28 21:26:21 +02:00
adetk 5e8a4b4034 Merge branch 'Alinto:master' into master 2022-12-24 16:57:31 +06:00
adetk c46e16742e Merge branch 'Alinto:master' into master 2022-08-19 09:55:09 +06:00
Adet Kineyev d1401e3bfc i18n(ru): Date specific Russian from and to translations 2022-08-19 09:22:56 +06:00
Adet Kineyev d1ad970864 i18n(kk): Add .wod files for Kazakh translation 2022-07-23 15:16:58 +06:00
Adet Kineyev 0fcf113c16 i18n(kk): Add Kazakh translation to source code files 2022-07-19 09:04:34 +06:00
Nazym Idrissova 29bda6b945 i18n(kk): Add Kazakh translation by Nazym Idrissova 2022-06-20 11:02:28 +06:00
1262 changed files with 61866 additions and 28228 deletions

No files matched your search

+13 -13
View File
@@ -3,7 +3,7 @@
## Reporting Bugs and Suggesting Enhancements
If you encounter a possible bug with SOGo, you can access our
[bug tracking system](https://sogo.nu/bugs/).
[bug tracking system](https://bugs.sogo.nu/).
Please make sure to respect the following guidelines when reporting a bug:
@@ -19,25 +19,25 @@ Begin by reading [SOGo Developer's Guide](../Documentation/SOGoDevelopersGuide.a
### Translations
Three type of files must be translated. The first type are **Localizable.strings**; they can be
translated online using **[Transifex](https://www.transifex.com/inverse/sogo/)**. To use Transifex,
translated online using **[Transifex](https://www.transifex.com/alinto/sogo/)**. To use Transifex,
you must first sign up for a [free account](https://www.transifex.com/signup/). Once registered,
[request a new team](https://www.transifex.com/inverse/teams/) for your language. Once authorized,
[request a new team](https://www.transifex.com/alinto/teams/) for your language. Once authorized,
you'll be able to start/continue translating SOGo in your language.
The second type are **wox and html templates**. Only words outside the tags (<>) must be
translated. Start by duplicating the English templates:
* [UI/Templates/SOGoACLEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishAdditionAdvisory.wox)
* [UI/Templates/SOGoACLEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishRemovalAdvisory.wox)
* [UI/Templates/SOGoACLEnglishModificationAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishModificationAdvisory.wox)
* [UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox)
* [UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox)
* [SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html](https://raw.githubusercontent.com/inverse-inc/sogo/master/SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html)
* [SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html](https://raw.githubusercontent.com/inverse-inc/sogo/master/SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html)
* [UI/Templates/SOGoACLEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishAdditionAdvisory.wox)
* [UI/Templates/SOGoACLEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishRemovalAdvisory.wox)
* [UI/Templates/SOGoACLEnglishModificationAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishModificationAdvisory.wox)
* [UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox)
* [UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox)
* [SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html](https://raw.githubusercontent.com/alinto/sogo/master/SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html)
* [SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html](https://raw.githubusercontent.com/alinto/sogo/master/SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html)
The third type is the locale file formatted as a **plist**. Duplicate the English locale:
The third type is the locale file formatted as a **plist**. Duplicate the English locale. Beware that words with other characters than [a-zA-Z] (accents, non-latin...) must be between double quotes ("). You can look at other files as arabic or french to have an example:
* [UI/MainUI/English.lproj/Locale](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/MainUI/English.lproj/Locale)
* [UI/MainUI/English.lproj/Locale](https://raw.githubusercontent.com/alinto/sogo/master/UI/MainUI/English.lproj/Locale)
Once translated, create an archive with all the files and [contact
us](https://sogo.nu/support.html#/commercial). We'll integrate it in the next version of SOGo.
@@ -107,7 +107,7 @@ The body should include the motivation for the change and contrast this with pre
#### Footer
The footer should contain any information about **Breaking Changes** and is also the
place to reference [Mantis](https://sogo.nu/bugs/) issues that this commit **Fixes** or **Resolves**.
place to reference [Mantis](https://bugs.sogo.nu) issues that this commit **Fixes** or **Resolves**.
> Breaking Changes are intended to be highlighted in the CHANGELOG as changes that will require
> community users to modify their code after updating to a version that contains this commit.
+10
View File
@@ -12,6 +12,7 @@
ActiveSync/ActiveSync.SOGo
Documentation/*.docbook
Documentation/*.pdf
Documentation/*.html
SoObjects/SOGo/SOGo.framework/
SoObjects/SOGo/derived_src/
Tests/*/config.py
@@ -46,3 +47,12 @@ UI/WebServerResources/js/vendor/ckeditor/skins/n1theme/*.md
# Transifex
.tx/config_20230213185112.bak
# Tests
Tests/node_modules
Tests/lib/config.js
Tests/results.xml
Tests/results
# SAML2 autogenerated files
SoObjects/SOGo/SOGoSAML2Exceptions.*
+1 -1
View File
@@ -1,6 +1,6 @@
[main]
host = https://www.transifex.com
lang_map = fr: French, pt_BR: BrazilianPortuguese, ru: Russian, sk: Slovak, es_AR: SpanishArgentina, fi: Finnish, id_ID: Indonesian, lt: Lithuanian, tr_TR: TurkishTurkey, zh_TW: ChineseTaiwan, ar: Arabic, cs: Czech, nn_NO: NorwegianNynorsk, sl_SI: Slovenian, uk: Ukrainian, zh_CN: ChineseChina, sv: Swedish, bg_BG: Bulgarian, cy: Welsh, is: Icelandic, sr: Serbian, lv: Latvian, pl: Polish, ro_RO: Romanian, bs_BA: Bosnian,ca: Catalan, he: Hebrew, kk: Kazakh, pt: Portuguese, es_ES: SpanishSpain, eu: Basque, hu: Hungarian, ja: Japanese, mk_MK: Macedonian, nb_NO: NorwegianBokmal, nl: Dutch, sr@latin: SerbianLatin, da_DK: Danish, de: German, hr_HR: Croatian, it: Italian, sr_ME@latin: Montenegrin
lang_map = fr: French, pt_BR: BrazilianPortuguese, ru: Russian, sk: Slovak, es_AR: SpanishArgentina, fi: Finnish, id_ID: Indonesian, lt: Lithuanian, tr_TR: TurkishTurkey, zh_TW: ChineseTaiwan, ar: Arabic, cs: Czech, nn_NO: NorwegianNynorsk, sl_SI: Slovenian, uk: Ukrainian, zh_CN: ChineseChina, sv: Swedish, bg_BG: Bulgarian, cy: Welsh, is: Icelandic, sr: Serbian, lv: Latvian, pl: Polish, ro_RO: Romanian, bs_BA: Bosnian,ca: Catalan, he: Hebrew, kk: Kazakh, pt: Portuguese, es_ES: SpanishSpain, eu: Basque, hu: Hungarian, ja: Japanese, mk_MK: Macedonian, nb_NO: NorwegianBokmal, nl: Dutch, sr@latin: SerbianLatin, da_DK: Danish, de: German, hr_HR: Croatian, it: Italian, sr_ME@latin: Montenegrin, gl_ES: Galician
[o:alinto:p:sogo:r:soobjects-appointments]
source_file = SoObjects/Appointments/English.lproj/Localizable.strings
+1 -1
View File
@@ -34,7 +34,7 @@ ActiveSync_RESOURCE_FILES += \
ADDITIONAL_OBJCFLAGS += -Wno-deprecated-declarations
ADDITIONAL_INCLUDE_DIRS += -I../SOPE/ -I../SoObjects/
ADDITIONAL_LIB_DIRS += -L../SOPE/GDLContentStore/obj/ -L../SOPE/NGCards/obj/
ADDITIONAL_INCLUDE_DIRS += -I/usr/include/libwbxml-1.0/
ADDITIONAL_INCLUDE_DIRS += $(shell pkg-config --cflags libwbxml2)
ADDITIONAL_LDFLAGS += -Wl,--no-as-needed -lwbxml2
-include GNUmakefile.preamble
+2 -2
View File
@@ -2627,17 +2627,17 @@ FIXME
// We first check of any of the collections we want to sync are already
// in an other sync process. If that's the case, we do not do anything
// and we return immediately. So we'll let the other sync process terminate
globalMetadata = [self globalMetadataForDevice];
for (j = 0; j < [allCollections count]; j++)
{
aCollection = [allCollections objectAtIndex: j];
globalMetadata = [self globalMetadataForDevice];
key = [NSString stringWithFormat: @"SyncRequest+%@", [[[(id)[aCollection getElementsByTagName: @"CollectionId"] lastObject] textValue] stringByUnescapingURL]];
if (!([[globalMetadata objectForKey: key] isEqual: processIdentifier]))
{
if (debugOn)
[self logWithFormat: @"EAS - Discard response %@", [self globalMetadataForDevice]];
[self logWithFormat: @"EAS - Discard response %@", globalMetadata];
[output appendString: @"<Status>13</Status>"];
[output appendString: @"</Sync>"];
+2 -2
View File
@@ -410,7 +410,7 @@ struct GlobalObjectId {
charset = [[[self lookupInfoForBodyPart: key] objectForKey: @"parameterList"] objectForKey: @"charset"];
if (![charset length])
if (![charset length] || [charset caseInsensitiveCompare: @"us-ascii"] == NSOrderedSame)
charset = @"utf-8";
s = [NSString stringWithData: d usingEncodingNamed: charset];
@@ -708,7 +708,7 @@ struct GlobalObjectId {
charset = [[[self lookupInfoForBodyPart: @""] objectForKey: @"parameterList"] objectForKey: @"charset"];
if (![charset length])
if (![charset length] || [charset caseInsensitiveCompare: @"us-ascii"] == NSOrderedSame)
charset = @"utf-8";
d = [[self fetchPlainTextParts] objectForKey: @""];
+491
View File
@@ -1,5 +1,496 @@
# Changelog
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
## [5.11.0](https://github.com/Alinto/sogo/compare/SOGo-5.10.0...SOGo-5.11.0) (2024-08-07)
### Features
* **core:** Add MySQL/MariaDB SSL connection support ([0168ca5](https://github.com/Alinto/sogo/commit/0168ca56b2e5f51ac98be2a78ddfcea4a688b74f))
* **core:** Update to ckeditor 5 ([0cfaa77](https://github.com/Alinto/sogo/commit/0cfaa7740af509389e43c395649ea82a3fb432be) [e92fb8f](https://github.com/Alinto/sogo/commit/e92fb8f52d615b72a6945760aecdf95039e1cbf2) [b7a7114](https://github.com/Alinto/sogo/commit/b7a71140f2b3eefb494a3acc151fe556ce1d3ce4) [a9e02d9](https://github.com/Alinto/sogo/commit/a9e02d94a26cd30c9e56196a1ec24ddec0c4db9c) [98e00d0](https://github.com/Alinto/sogo/commit/98e00d09a3e31b388592e2d1068d89bc57ff1d99) [2b23ff3](https://github.com/Alinto/sogo/commit/2b23ff3eb8dac6acc570b1aaa6e0baff72dd17ea) [65ab696](https://github.com/Alinto/sogo/commit/65ab6962d870baeba7cb4b3c1b66eb6447174e1b) [dd965ba](https://github.com/Alinto/sogo/commit/dd965baae110176c6144ccd64cbade3ef757966a))
* **mail:** Improve mail search (advanced search) ([ed95166](https://github.com/Alinto/sogo/commit/ed951667ec610b8ad48a49a606b6b1c33c60914d) [f621d97](https://github.com/Alinto/sogo/commit/f621d972893c94977cda432efe3dcc837ec8bf58) [0cbcad9](https://github.com/Alinto/sogo/commit/0cbcad9d91cd52afcfd14034786457a106013182) [9eb8039](https://github.com/Alinto/sogo/commit/9eb80396988bd7c8ac3a1f44dbc48147ced20750))
### Enhancements
* **calendar:** Add option to disable email appointmoint notifications when using caldav ([2637434](https://github.com/Alinto/sogo/commit/2637434436c19157ce6255fb071dcb99cf57ad89))
* **mail:** Add 'View raw message' mail contextual option. This option open message in a popup without HTML mail CSS content modification. ([6ac8525](https://github.com/Alinto/sogo/commit/6ac8525bfe161409c0565e3dca1e9e92f87c1c08))
* **mail:** Add location in email ics representation template ([591d283](https://github.com/Alinto/sogo/commit/591d2834252441a9593f27012f7b148d38b9a511))
* **mail:** add options to not add X-Foward header in mail ([96331ca](https://github.com/Alinto/sogo/commit/96331cac905ee7b6dc1adfda083dcefffe0f8795))
* **ytnef:** add possibility to add event to calendar from winmail.dat ([f609c31](https://github.com/Alinto/sogo/commit/f609c31a324683dd4c210284f672618cfffb9908))
* **calendar:** Optimization of date computation when handle attendees. Report of 77b2d9f8. ([53d77f3](https://github.com/Alinto/sogo/commit/53d77f3105c2d7f6aa2be1cac691dd19a4754df8))
### Bug Fixes
* **addressbook:** Removed SOGoGlobalAddressBookFirstEntries (use listRequiresDot instead) and move SOGoGlobalAddressBookFirstEntriesCount to globalAddressBookFirstEntriesCount in source scope. This fixed the broken listRequiresDot in 5.10 ([4dba56f](https://github.com/Alinto/sogo/commit/4dba56f70dbda81822b3fd26e1420c367c1b7298))
* **attachment:** properly download openxmlformats in attachments ([2e2e36e](https://github.com/Alinto/sogo/commit/2e2e36e0a2b759d5d734bdefc274f127937e9b89))
* **calendar(js):** escape CSS selector names ([5c94461](https://github.com/Alinto/sogo/commit/5c944617d0efdc03a72a677e9f60922cb3ab90bd))
* **calendar(js):** prevent duplicate event creation in case of an event conflict ([f04c73d](https://github.com/Alinto/sogo/commit/f04c73d495dfce6e93d33ceb0964f1ee6aeb51a5))
* **calendar:** Fix all day recurring event displayed on 2 days when a DST change occurs at the endDate ([980b5e2](https://github.com/Alinto/sogo/commit/980b5e28dd0c4cfd42619c64872bb08674d64765))
* **calendar:** Fix assertion when is_cycle is set but without c_cycleinfo ([d404667](https://github.com/Alinto/sogo/commit/d4046673eebf21180f494e516a39a7b04243f669) [49e9988](https://github.com/Alinto/sogo/commit/49e9988b82b206ae751feb10979f5e0859d2ec77) [d9ee884](https://github.com/Alinto/sogo/commit/d9ee88445997a21623b33129fe28466042229696))
* **calendar:** fix crash when using a 2*16bits chars at the 75th char of ics file ([31c0473](https://github.com/Alinto/sogo/commit/31c0473c48238de2288e5a5c0c8295fc67710d32))
* **calendar:** fix disabled change view buttons ([910effd](https://github.com/Alinto/sogo/commit/910effd664e24a3fc5343145f24a2e2d9cf58027))
* **calendar:** Fix empty recurence list when creating event from mail ([2756176](https://github.com/Alinto/sogo/commit/27561765038358243a628853b47b20c2db256dc2))
* **calendar:** Fix issue on template introduced in commit [#275617650](https://bugs.sogo.nu/view.php?id=275617650) ([eee160e](https://github.com/Alinto/sogo/commit/eee160e5bf60b2e59b96adabae805d61c5d85292))
* **calendar:** Fix issue when doubleclick creates an event of 2 days after creating an event > 1 days ([7b23342](https://github.com/Alinto/sogo/commit/7b233422f5790147dd2522261c3b79dac85bfd6c))
* **calendar:** Fix issue where a calendar's subscribed user can give acl to another user ([ae01ed0](https://github.com/Alinto/sogo/commit/ae01ed077dcca8d3c3778cde6645075dada9b92d) [cb55413](https://github.com/Alinto/sogo/commit/cb55413e91ac0f10b649abaaeaa5fdab141f0958) [0fafda5](https://github.com/Alinto/sogo/commit/0fafda55d633401c1eeadcbfafd9ae251234787a))
* **calendar:** Fix NSData returned instead of NSString on c_cycleinfo depending on database issue. CLoses [#5940](https://bugs.sogo.nu/view.php?id=5940). ([5215aa4](https://github.com/Alinto/sogo/commit/5215aa4f4114acc09bc923542e4fe23fa2779d3b))
* **calendar:** Memory optimization on _appendCycleException ([45fd999](https://github.com/Alinto/sogo/commit/45fd999010a80ee39c7fa26f96c1460ddf0d3af9))
* **calendar:** resource was busy even if they have delegated ([880eb89](https://github.com/Alinto/sogo/commit/880eb897191c906d141afafe628d66f9a5025640) [5830053](https://github.com/Alinto/sogo/commit/58300530260469594f40db7ee3b67e34ba60d1ce))
* **chore:** Remove check on -p option to sogo-ealarms-notify as the SMTP Master account has been implemented ([f96eb4d](https://github.com/Alinto/sogo/commit/f96eb4d3ca32a916ecc63221d022014f736cd94b))
* **contacts:** can now reset contacts categories more than once ([526aa28](https://github.com/Alinto/sogo/commit/526aa281d9a92e9fd29046b8a1551aea16c58772))
* **core:** Add disableSubgroups option in SOGoUserSources LDAP settings to avoid infinite recursive loop when using a group name with the same name as a member. Fixes [#5913](https://bugs.sogo.nu/view.php?id=5913) ([fd9b8dc](https://github.com/Alinto/sogo/commit/fd9b8dcfcd07217e7456a67c2e69f13fca743874))
* **core:** Add timer to avoid spamming onEditorChanged for CKEditor 5. Fixes [#5944](https://bugs.sogo.nu/view.php?id=5944). ([bc804ae](https://github.com/Alinto/sogo/commit/bc804ae823a8a61e6cb02495759f75a104c77753) [2f4c125](https://github.com/Alinto/sogo/commit/2f4c125bdd9b5eebbba41e2204e2fc9c93a3eebd))
* **core:** Clean html parasite code to avoid ckeditor hangs. Fixes [#5944](https://bugs.sogo.nu/view.php?id=5944). ([127df39](https://github.com/Alinto/sogo/commit/127df3968998c96d5349f7368adba1e5e371ed4c))
* **core:** Fix int overflow on vms and rss computation ([4b343f7](https://github.com/Alinto/sogo/commit/4b343f707016f2b45fbd71c6c2f039b50a076f30))
* **core:** Improve error logging on url encryption ([b8a6d57](https://github.com/Alinto/sogo/commit/b8a6d576e19828ffddf6c8e3c3353efd03836b2e))
* **core:** Notify sgCkeditor component when clicking the send button to update content. Fixes [#5952](https://bugs.sogo.nu/view.php?id=5952). ([c2d9050](https://github.com/Alinto/sogo/commit/c2d9050539c13f843f2a7395b0b9a24a4b8db3f3))
* **core:** On some emails print, first page is blank. Closes [#5602](https://bugs.sogo.nu/view.php?id=5602). ([e39c104](https://github.com/Alinto/sogo/commit/e39c1044364d68df49ea6142072928d0b0e4c1eb))
* **doc:** Fix typo with SOGoURLEncryptionEnabled in documentation ([a06331e](https://github.com/Alinto/sogo/commit/a06331eb86aad8ec9a30f30df55aa4282a78654c))
* **event:** fix rdate timezones ([e4cb0a3](https://github.com/Alinto/sogo/commit/e4cb0a35ef34b496d8b7e0d6e2e10fe0844e37f8))
* **event:** resource was considered busy for an event he has delegated ([adf1117](https://github.com/Alinto/sogo/commit/adf111704642126272301ab7961603fb0b787c9e))
* **event:** user was considered busy for an event he has delegated ([815a87d](https://github.com/Alinto/sogo/commit/815a87de0b8bc8e8a7431b8a7b3aedc66d4dde2a))
* **languages:** somme "array" strings were using the wrong comma delimiter ([7c0699b](https://github.com/Alinto/sogo/commit/7c0699b96ff1539011e04a1d60f8f4c7334e79b1))
* **mail:** Add encoding fallback when there are ISO char in file name. Fixes [#5388](https://bugs.sogo.nu/view.php?id=5388). ([e6ff9a4](https://github.com/Alinto/sogo/commit/e6ff9a408d94d2817ce0d9b9f078811e19ea4a39))
* **mail:** Fix advanced search no select/action on results. Fixes [#5978](https://bugs.sogo.nu/view.php?id=5978) ([1a47fdb](https://github.com/Alinto/sogo/commit/1a47fdb7d62242001c770ac28df84bf8c999c179))
* **mail:** Fix errors while spamming arrow keys on mail list. The transition was not finished ([049a569](https://github.com/Alinto/sogo/commit/049a569d7faff5f3a507671d17bc0da309ec14ac))
* **mail:** Fix Exception when using delegated identities. Closes [#5951](https://bugs.sogo.nu/view.php?id=5951) ([f8c354c](https://github.com/Alinto/sogo/commit/f8c354c302b34b1676764a869481f8a6160f6120))
* **mail:** Fix invalid content when forwarding a text/plain mail. Fixes [#5983](https://bugs.sogo.nu/view.php?id=5983). ([ef88039](https://github.com/Alinto/sogo/commit/ef88039a4a3d590de09cf75da5668db9d6fd29f0) [43388ac](https://github.com/Alinto/sogo/commit/43388ac42c99a6fc47cc4191291f81d45faf9a8d))
* **mail:** Fix not called draft expunge function when sending mail. ([7ec7a7d](https://github.com/Alinto/sogo/commit/7ec7a7d6aead1a7aee025324e2ae64696b2d087c))
* **mail:** Fix template issues with Galician and Basque ([19ee54f](https://github.com/Alinto/sogo/commit/19ee54fe055bc6a45bae6e5f71dcdb60bad766fd))
* **mail:** Fix ukrainian encoding issue. Fixes [#5702](https://bugs.sogo.nu/view.php?id=5702). ([776a798](https://github.com/Alinto/sogo/commit/776a798e173e6bacc29c8ab3d32bddabd383da55))
* **mail:** Fix unsupported koi-u encoding ([5710c4d](https://github.com/Alinto/sogo/commit/5710c4d97e2fbcf3ff0b187f1100892d8efcacb2))
* **mail:** Remove some css when generating UIxMailPartHTMLViewer. Sometimes, the mail contains SOGo mail template in the content, and broke mail display. ([863280d](https://github.com/Alinto/sogo/commit/863280d6ac54783a7fe6a8ce3fcdd8c3a4c4e4ff))
* **mail:** Removed bracket display when inline text or inline html ([06ea167](https://github.com/Alinto/sogo/commit/06ea167ee58c65f54cf4474927d977513d380b3b))
* **mail:** Restore scroll position when refreshing emails ([9d71be9](https://github.com/Alinto/sogo/commit/9d71be9c45eb9b9af0cb62be99a440ea7652248b))
* **mail:** Update len value as data is modified in loop. This fixes the issue on sanitizedContentUsingVoidTags whenthere are meta html tags in mail content. ([99da6e0](https://github.com/Alinto/sogo/commit/99da6e0f81a99f94e453ece7fe0761fcf1186fb6))
* **mail:** When the signature is empty, the -- seperator appears. ([58db9c9](https://github.com/Alinto/sogo/commit/58db9c980eb518dc726e908307988b98cf7a4d84))
* **preferences:** Can not save preferences when there is a constraint on mail ([990f1e8](https://github.com/Alinto/sogo/commit/990f1e8e8fda67537a3a4ed3a067011e3b81e7dd))
* **ui:** Fix invalid display when creating new appointment / mail on mobile. Initialize isFullscreen to if screen is in portrait. Fixes [#5970](https://bugs.sogo.nu/view.php?id=5970). ([314b39d](https://github.com/Alinto/sogo/commit/314b39dd1c65e321920fdc095915c2954a53b944))
* **vulnerability:** prevent cross-site scripting when previewing attachments ([2e37e59](https://github.com/Alinto/sogo/commit/2e37e59ed140d4aee0ff2fba579ca5f83f2c5920))
### Localization
* **ar:** Update Arabic translations ([1aa59dc](https://github.com/Alinto/sogo/commit/1aa59dcd7e5755873ac0a68c770ecb33efe50077))
* **bg_BG:** Update Bulgarian translations ([be6a69a](https://github.com/Alinto/sogo/commit/be6a69a4d600da2ac3bccd00d10b185871295c2a))
* **bs_BA:** Update Bosnian translations ([0b530f9](https://github.com/Alinto/sogo/commit/0b530f9e36a996f9910432b5410ce14e0c74a979))
* **calendar:** Change Email Attendees to Email Attendees (internal users ([eb63e6d](https://github.com/Alinto/sogo/commit/eb63e6d047c4f3967b83f17c6457d353acf2d9ae))
* **ca:** Update Catalan translations ([ca0b001](https://github.com/Alinto/sogo/commit/ca0b00107a65b2cd5b78d084d8591a99d6055d07))
* **cs:** Update Czech translations ([5ee1904](https://github.com/Alinto/sogo/commit/5ee190468e7616e2fb05a90fd146dbb0a76ccb6a))
* **cy:** Update Welsh translations ([fad8c21](https://github.com/Alinto/sogo/commit/fad8c21473bdb975826a37f728f7da76a21afd6f))
* **da_DK:** Update Danish translations ([bcb2410](https://github.com/Alinto/sogo/commit/bcb2410b1224981f0fec618f2e073197d2539666))
* **de:** Update German translations ([37f2b1d](https://github.com/Alinto/sogo/commit/37f2b1dc5c630ea58ad356c568d706bb81747cb7))
* **es_AR:** Update SpanishArgentina translations ([94d32c4](https://github.com/Alinto/sogo/commit/94d32c419c525067415c8ff9c2aa44fd00c361ed))
* **es_ES:** Update SpanishSpain translations ([6e11cdf](https://github.com/Alinto/sogo/commit/6e11cdf2893727ae77625cad1d0be4cd0e60e1bd))
* **eu:** Update Basque translations ([55563d2](https://github.com/Alinto/sogo/commit/55563d21132c43841fe009ea93e71bae5058a37c))
* **fi:** Update Finnish translations ([ed3e790](https://github.com/Alinto/sogo/commit/ed3e790b47f60b2b2548888c23eeb1945c7d8156))
* **gl:** Update Galician translations ([6b6dc6b](https://github.com/Alinto/sogo/commit/6b6dc6b3b845357b2d9986abe3b84e91484f7c58))
* **he:** Update Hebrew translations ([8bf1a77](https://github.com/Alinto/sogo/commit/8bf1a77efc12eeaf41b4f6d32aec6eddfe5f4f5c))
* **hr_HR:** Update Croatian translations ([fa23124](https://github.com/Alinto/sogo/commit/fa2312470adff5026c1d8b75c3e32109b55e51a4))
* **hu:** Update Hungarian translations ([b82fa1d](https://github.com/Alinto/sogo/commit/b82fa1d0771b082d07e3c654e41a3ef82888e525))
* **id_ID:** Update Indonesian translations ([de289d9](https://github.com/Alinto/sogo/commit/de289d9b4cd7b0ed6050183acb020c8e1c4054ca))
* **is:** Update Icelandic translations ([2fabfdf](https://github.com/Alinto/sogo/commit/2fabfdfb9f78df085531a4525707311004d6c4ed))
* **it:** Update Italian translations ([227b92b](https://github.com/Alinto/sogo/commit/227b92b7434ded7f54affe9aad629b08a3e2badf))
* **ja:** Update Japanese translations ([0c2c9d7](https://github.com/Alinto/sogo/commit/0c2c9d7682a9ca66ac4d3778ae0efc907f525aa8))
* **kk:** Update Kazakh translations ([c4b58a6](https://github.com/Alinto/sogo/commit/c4b58a6ae75110482801b4aa2141b564b8943476))
* **lt:** Update Lithuanian translations ([a84ab76](https://github.com/Alinto/sogo/commit/a84ab7655d05aec16c0d247d13f6da3b46a95221))
* **lv:** Update Latvian translations ([88c9074](https://github.com/Alinto/sogo/commit/88c9074aeab8759d841ea79db2245520fe998543))
* **mk_MK:** Update Macedonian translations ([5bb0253](https://github.com/Alinto/sogo/commit/5bb025323f63b93b984707ffa507d900846f6ec5))
* **nb_NO:** Update NorwegianBokmal translations ([943e96f](https://github.com/Alinto/sogo/commit/943e96f459cc5a8fd93ec8da36f064f251d30dc2))
* **nl:** Update Dutch translations ([85c1cc7](https://github.com/Alinto/sogo/commit/85c1cc7fa3f3e21b6a158cd51c3e640e94f0e81e))
* **nn_NO:** Update NorwegianNynorsk translations ([65f29f2](https://github.com/Alinto/sogo/commit/65f29f21dc2d957e3bcabdedb8873e71f65461ee))
* **pl:** Update Polish translations ([84c0fb4](https://github.com/Alinto/sogo/commit/84c0fb496d5727ccb4248b96b36d57a620ef440a))
* **pt_BR:** Update BrazilianPortuguese translations ([af630f0](https://github.com/Alinto/sogo/commit/af630f033d3cc1188019e1f3cfe0ebb852f3560f))
* **pt:** Update Portuguese translations ([9a0e03b](https://github.com/Alinto/sogo/commit/9a0e03bf9afdf049bcce0045411400931c6ce9f1))
* **ro_RO:** Update Romanian translations ([b889064](https://github.com/Alinto/sogo/commit/b889064dbc7e137298ef8e70538f6a7196477596))
* **ru:** Update Russian translations ([33df476](https://github.com/Alinto/sogo/commit/33df476db55890fcae1c40bd29e9e81017c86e72))
* **sk:** Update Slovak translations ([7b7cfdb](https://github.com/Alinto/sogo/commit/7b7cfdb499766867430e49376185105cfbf2ab4f))
* **sl_SI:** Update Slovenian translations ([68b17a5](https://github.com/Alinto/sogo/commit/68b17a5c4a6a2e015d32dc79c7b33d348be1a5f2))
* **sr_ME@latin:** Update Montenegrin translations ([8d4597d](https://github.com/Alinto/sogo/commit/8d4597d3610928191313986490eafb44f3077ca5))
* **sr@latin:** Update SerbianLatin translations ([a4f0397](https://github.com/Alinto/sogo/commit/a4f03978cfc815d3a337d94d5a46bbe10166306a))
* **sr:** Update Serbian translations ([7de9dc8](https://github.com/Alinto/sogo/commit/7de9dc8f9ba3e62d082d91f4305c5be6c9d2a7c6))
* **sv:** Update Swedish translations ([dd1a660](https://github.com/Alinto/sogo/commit/dd1a6607fe3ed9e65991d349588179acb7f2eb6c))
* **tr_TR:** Update TurkishTurkey translations ([56012c6](https://github.com/Alinto/sogo/commit/56012c65e191937b5132c091f6366b6b24546a5f))
* **uk:** Update Ukrainian translations ([6537d96](https://github.com/Alinto/sogo/commit/6537d961e13604ae373e787664f6fa91f9912ab5))
* **zh_CN:** Update ChineseChina translations ([0e5657e](https://github.com/Alinto/sogo/commit/0e5657e635012cd2568e30060741e7114ef1a591))
* **zh_TW:** Update ChineseTaiwan translations ([1136c18](https://github.com/Alinto/sogo/commit/1136c182885d716dc2613d58f59a58fdcf8d8168))
## [5.10.0](https://github.com/Alinto/sogo/compare/SOGo-5.9.1...SOGo-5.10.0) (2024-02-20)
### Features
* **accounts:** Add parameter to encrypt/decrypt auxiliary account's password ([9898e52](https://github.com/Alinto/sogo/commit/9898e5210fb275f1fdd11a8287be673becb78073) [e6bfab7](https://github.com/Alinto/sogo/commit/e6bfab7ee17ca789d6e07be06577c742dfc9bb3f) [dde154d](https://github.com/Alinto/sogo/commit/dde154df3f766d7aa670835bb20686d9ef1eb302) [04596c9](https://github.com/Alinto/sogo/commit/04596c9f4e0ee480a63772b7ef9a51e183b2af52) [ce0e650](https://github.com/Alinto/sogo/commit/ce0e650c62e542c5c9e9817f1d91c7a5b6794712))
* **accounts:** Can now add smtp server to auxilliary accounts ([adc2d74](https://github.com/Alinto/sogo/commit/adc2d74e544531ee94f3148ab32754a657c50cd8) [f0010af](https://github.com/Alinto/sogo/commit/f0010afef4d7a36b75d552ce42e48fa151772d9d)) *This feature has been sponsored by a user from the community: [sogouser5646](https://bugs.sogo.nu/view_user_page.php?id=3108)*
* **calendar:** Add double click to calendar create events ([68398d2](https://github.com/Alinto/sogo/commit/68398d2086452f7b4eaae65eb005b2bbdedd3a9d))
* **contact:** Show 100 first results for global address book ([17eca6f](https://github.com/Alinto/sogo/commit/17eca6f96a4537a580d66a4abb8ba13e965892c8))
* **core:** Add message of the day ([2e7a7a9](https://github.com/Alinto/sogo/commit/2e7a7a97ccff6887bda1ef7b0d5c2f051c233fe5) [49b0316](https://github.com/Alinto/sogo/commit/49b0316b9e87ad1f6f6524e4e3d7c8f5031ff072) [eee5069](https://github.com/Alinto/sogo/commit/eee50697b09c03af251996cec593131ffd3609a6) [6324877](https://github.com/Alinto/sogo/commit/63248772c168cff618e6f1d831c0170dc80d56ff) [455fe97](https://github.com/Alinto/sogo/commit/455fe97cbe9c76dddefd74a9f945cb029d3731ba)) *This feature has been sponsored by the [University Of Cologne](https://portal.uni-koeln.de/en/uoc-home)*
* **core:** Add URL encryption for GDPR compliancy ([930a06e](https://github.com/Alinto/sogo/commit/930a06e520de1d0d00f58c6be6def32679e4e68c) [10d789f](https://github.com/Alinto/sogo/commit/10d789fb1fe8157a19c71252fb9c485b90d9993c) [31c6f78](https://github.com/Alinto/sogo/commit/31c6f78913f109d081d5032ad010042e112a1f88) [64a6319](https://github.com/Alinto/sogo/commit/64a63196357b91bd8cfc92396c8fde16481d9b84) [7ace9c2](https://github.com/Alinto/sogo/commit/7ace9c2c222f086be196acc5c65bca2376abb0ab) [7104ae6](https://github.com/Alinto/sogo/commit/7104ae6d234ff5f2b2fbc59dea6c6b8b736c50f4) [42511d6](https://github.com/Alinto/sogo/commit/42511d666fe9cf979e59e590b2510c436a70460a) [fc77829](https://github.com/Alinto/sogo/commit/fc778295ffc1730a873d2c965efcf30ed04c748b) [f43974b](https://github.com/Alinto/sogo/commit/f43974bbb799ba5d2ea53587139a0d5569ae0082) [fc0f5d9](https://github.com/Alinto/sogo/commit/fc0f5d9d984df9a30a2a9e0ca25cdbbd15847a34) [2748d1d](https://github.com/Alinto/sogo/commit/2748d1dd081358c353624591fe302b1684488a4e))
### Bug Fixes
* **acl:** bool was not set to NO ([e81fdad](https://github.com/Alinto/sogo/commit/e81fdadeccb3882717a852defe561afcf216b9a8))
* **addressbook:** Fix exception when using multiple address book source and searching. Fixes [#5906](https://bugs.sogo.nu/view.php?id=5906). ([f85c531](https://github.com/Alinto/sogo/commit/f85c53190c38c4e28536f78e43623f6776248291))
* **build:** fix missing ld flag in GNUmakefile ([136134](https://github.com/Alinto/sogo/commit/1361341545e7f45b86f8e7ed5ac7407a34ed361e)). *This fix has been made by @konsultaner*
* **calendar:** Couldn't choose some reminder options when creating events ([8dc69ef](https://github.com/Alinto/sogo/commit/8dc69efd70bf93c9a41811d16ad24d578981407e))
* **calendar:** Fix high memory usage when importing an ics ([3acab3f](https://github.com/Alinto/sogo/commit/3acab3f89612bde3e74b7f108e47ea3ff4bd9bb6))
* **calendar:** Prevent clicking on delete event button when network is slow ([acd4a1f](https://github.com/Alinto/sogo/commit/acd4a1f4aa2177eb2b71ba9951307fe9c6adc7ce))
* **contacts:** c_cn could be null whereas it isn't ([6aab869](https://github.com/Alinto/sogo/commit/6aab869b81e3c73c55ee6bc4f79128324cc08031))
* **contacts:** Custom contacts categories in sogo.conf wasn't working ([26c7462](https://github.com/Alinto/sogo/commit/26c7462eb0e1a86c9d644a27724f81d8ae496cb7))
* **core:** Add missing method WORequest+SOGo.h ([31a66c4](https://github.com/Alinto/sogo/commit/31a66c461abc72ee287a9b21b2fdb560655df7a8))
* **core:** *SOPE* Add error handler on sax parsing (pushBytes) ([ff9a7f9](https://github.com/Alinto/sope/commit/ff9a7f9ab93f20b9106327babfce971b8b06672e))
* **crypto:** add protections for decryption ([a6319e1](https://github.com/Alinto/sogo/commit/a6319e1689c351f9292350917f1f3e983ab0a7f5))
* **crypto:** check if NSData is null terminated ([5197b9b](https://github.com/Alinto/sogo/commit/5197b9bd0b0150503824dfc68a6910116c2bf344))
* **docs:** Fix typo in documentation ([9560bdc](https://github.com/Alinto/sogo/commit/9560bdcf0cd1139ce49f8c16127d0e227ee63a9b))
* **gnustep:** *SOPE* chance constant name when using gnutspe > 1.29 ([393f20c](https://github.com/Alinto/sope/commit/393f20cce158b45f780346d5604d740ac7f295a6)) *This fix has been made by @binary-jam*
* **http:** *SOPE* http header host was not correct for local url ([4b9366d](https://github.com/Alinto/sope/commit/4b9366d60c49729b5024b5d814ec643f8b3c3fa0))
* **imap:** *SOPE* Fix some cases where IMAP delimiter was returned as empty([1160846](https://github.com/Alinto/sope/commit/1160846ac35a51d0ae85e73f5c1e0ec2ab3f0216))
* **js:** Remove check version for ckeditor ([5081de1](https://github.com/Alinto/sogo/commit/5081de1639162be9d259a3c921fb05084f879ce4))
* **mail:** Disable inline images in attachments when HTML emails writing is disabled. Fixes [#5877](https://bugs.sogo.nu/view.php?id=5877). ([0d0eda2](https://github.com/Alinto/sogo/commit/0d0eda26984e825c8af82528c749238678baf159))
* **mail:** Fix inline pdf attachement issue when Hide inline attachment option is set. Now the option hides only inline images ([9e3e3b2](https://github.com/Alinto/sogo/commit/9e3e3b22911133c3da5ad5bb6f51e9b7d158a35f) [a6fc83c](https://github.com/Alinto/sogo/commit/a6fc83c35bf62430b4a626107ff62cfcf9532539))
* **mail:** Fix inline text issue when Hide inline attachment option is set ([00d6956](https://github.com/Alinto/sogo/commit/00d69560ba3526f68396e5a1febf1e1d9d58726b))
* **mail:** Fix security [@import](https://github.com/import) css injection ([2146870](https://github.com/Alinto/sogo/commit/21468700718ed71774eaf2979ee59330fc569424))
* **mail:** Use text/plain fallback if an error occured while parsing html message ([f56910d](https://github.com/Alinto/sogo/commit/f56910db1efe25d2ce1d36db787c010a9f2a36f9))
* **mail:**: *SOPE* allow 'GMT' timezone in mail header ([604c8ef](https://github.com/Alinto/sope/commit/604c8ef291b2755dc5c821a9fcea7aafdef5eb7b))
* **password recovery:** Add default from mail parameter ([26b1467](https://github.com/Alinto/sogo/commit/26b14671f5e3edc6ff40212d4bbe153c0decb2eb))
* **preferences:** Add error message when SOGoCreateIdentitiesDisabled is enabled and user try to activate html fields with browser inspector. Check changes of email and replyTo. ([f27b33a](https://github.com/Alinto/sogo/commit/f27b33a0c8b4a98490090faec20912b349ab35fe))
* **preferences:** Fix error 500 when changing password ([37379ba](https://github.com/Alinto/sogo/commit/37379ba416abb7beef56439f2a584a0445e17c7f))
* **sql:** *SOPE* remove deprecated param for mysql ([3d4613c8](https://github.com/Alinto/sope/commit/3d4613c89f6537fa0bcaefe6105c517513bd84c1))
* **ui:** Fix text/placeholder overlaps when Chrome autofill applies ([51b6c0d](https://github.com/Alinto/sogo/commit/51b6c0d9a3ee1b2c43011b2f29ff50f78327caad))
### Localization
* **ar:** Update Arabic translations ([1206d2f](https://github.com/Alinto/sogo/commit/1206d2f459cd2446010b2e2badb096d6c4b71902))
* **bg_BG:** Update Bulgarian translations ([65d31f2](https://github.com/Alinto/sogo/commit/65d31f2b144d04a882454cd6cf8f301837b05a0a))
* **bs_BA:** Update Bosnian translations ([ace1515](https://github.com/Alinto/sogo/commit/ace1515dfcebf809b22afa46b86941c390189d9a))
* **ca:** Update Catalan translations ([344d4da](https://github.com/Alinto/sogo/commit/344d4da9308fb72ed399c04fb94277d9eb903b17))
* **cs:** Update Czech translations ([af22a30](https://github.com/Alinto/sogo/commit/af22a30f12eaeb55ad782e34575208f936f267c6))
* **cy:** Update Welsh translations ([ca1d549](https://github.com/Alinto/sogo/commit/ca1d5495ab0d88a1196666201c4e9242ee74d93b))
* **da_DK:** Update Danish translations ([c8eee39](https://github.com/Alinto/sogo/commit/c8eee39017382b1bcc5b5e752cd77331defe698e))
* **de:** Update German translations ([28f446a](https://github.com/Alinto/sogo/commit/28f446a6ad63dc0b74fde94b3a599ac57f76346c))
* **es_AR:** Update SpanishArgentina translations ([7582266](https://github.com/Alinto/sogo/commit/7582266479043aa4f5acfcada2eef85a7c0b6010))
* **es_ES:** Update SpanishSpain translations ([30f819e](https://github.com/Alinto/sogo/commit/30f819e2a42545b468f37f6d9e0506ebdf240874))
* **eu:** Update Basque translations ([c2fc80e](https://github.com/Alinto/sogo/commit/c2fc80ecd1b83d368332047fc732195874adb6a3))
* **fi:** Update Finnish translations ([ce8c697](https://github.com/Alinto/sogo/commit/ce8c697d96322decb9008ce35a04b3df26e694a8))
* **fr:** Update French translations ([62d5414](https://github.com/Alinto/sogo/commit/62d5414936f5d71cb82a8a6f1e2725c0bbed32bb))
* **gl:** Update Galician translations ([ef29aa2](https://github.com/Alinto/sogo/commit/ef29aa2bab7fad5cdfe22223f71191f9a067953e))
* **he:** Update Hebrew translations ([82db4d9](https://github.com/Alinto/sogo/commit/82db4d99d429d35a9764a43b94b25bbb2231d309))
* **hr_HR:** Update Croatian translations ([c5b6611](https://github.com/Alinto/sogo/commit/c5b6611f8977e7e15c4971c34a1961ae56a821c2))
* **hu:** Update Hungarian translations ([8581aa7](https://github.com/Alinto/sogo/commit/8581aa7840bb8c4346c62c344e79ce64db72a806))
* **id_ID:** Update Indonesian translations ([c3cefb6](https://github.com/Alinto/sogo/commit/c3cefb6ae8865c5544f2a33033525c4cdea42aab))
* **is:** Update Icelandic translations ([ae85548](https://github.com/Alinto/sogo/commit/ae85548f2734e7c93a83426ec78f8b0eb991a35d))
* **it:** Update Italian translations ([e924ac4](https://github.com/Alinto/sogo/commit/e924ac4e67f74c517aecd691d343700980ddd384))
* **ja:** Update Japanese translations ([a75bfbb](https://github.com/Alinto/sogo/commit/a75bfbb2c7ac03f7dadf5ae48dfbd312a7c4c367))
* **kk:** Update Kazakh translations ([adc17a3](https://github.com/Alinto/sogo/commit/adc17a3639fed8a69417079f68caef9a86cfce01))
* **lt:** Update Lithuanian translations ([ab8c236](https://github.com/Alinto/sogo/commit/ab8c236621a08b92bfc90654e6e620c47319b9f7))
* **lv:** Update Latvian translations ([74a730d](https://github.com/Alinto/sogo/commit/74a730d094a7184c5aa3febb8f0bcd610fa6f113))
* **mk_MK:** Update Macedonian translations ([adf2d40](https://github.com/Alinto/sogo/commit/adf2d409bad3c7dbf53bcc141604d807591f665c))
* **nb_NO:** Update NorwegianBokmal translations ([ee55f7a](https://github.com/Alinto/sogo/commit/ee55f7a64fb456aa1b791636752a331d70a7a407))
* **nl:** Update Dutch translations ([ad75555](https://github.com/Alinto/sogo/commit/ad75555a0f6ec7f8b00310f323813d513d949088))
* **nn_NO:** Update NorwegianNynorsk translations ([add792f](https://github.com/Alinto/sogo/commit/add792fc1e7020b64a4ec8f905740172dad9be35))
* **pl:** Update Polish translations ([083fa1f](https://github.com/Alinto/sogo/commit/083fa1fefd8704aebc7b7e3f24eff5f2ad5d41c8))
* **pt_BR:** Update BrazilianPortuguese translations ([434be9e](https://github.com/Alinto/sogo/commit/434be9ea71e21205ba8f08c0b78bf22e50a600d7))
* **pt:** Update Portuguese translations ([26719a1](https://github.com/Alinto/sogo/commit/26719a146189301d7daf30035698bd6a332c245a))
* **ro_RO:** Update Romanian translations ([c827880](https://github.com/Alinto/sogo/commit/c827880f2a1e812a959c63c7d6e9752fafd69023))
* **ru:** Update Russian translations ([0f0ecf7](https://github.com/Alinto/sogo/commit/0f0ecf75218df232268faf8c9aa030bcd1511051))
* **sk:** Update Slovak translations ([2db48dc](https://github.com/Alinto/sogo/commit/2db48dc7fb68515daf9218106d61944d1a46617d))
* **sl_SI:** Update Slovenian translations ([24888b2](https://github.com/Alinto/sogo/commit/24888b23d59b7e3b874ff312c96d474260fd5366))
* **sr_ME@latin:** Update Montenegrin translations ([71e66d6](https://github.com/Alinto/sogo/commit/71e66d65b8d10e3f0371c92cbf7719c1fecf7708))
* **sr@latin:** Update SerbianLatin translations ([91c22c0](https://github.com/Alinto/sogo/commit/91c22c08001952de7563eb9627bf6da2eddcb721))
* **sr:** Update Serbian translations ([5146d9d](https://github.com/Alinto/sogo/commit/5146d9d2156799914cc9c392102c4ee86e3eceaf))
* **sv:** Update Swedish translations ([c93b1e9](https://github.com/Alinto/sogo/commit/c93b1e977539cd11bc52057b6ffcdf57334bb572))
* **tr_TR:** Update TurkishTurkey translations ([2b1e7bd](https://github.com/Alinto/sogo/commit/2b1e7bdb67312e5ea34d370b22c8e9d60550bc93))
* **uk:** Update Ukrainian translations ([34407df](https://github.com/Alinto/sogo/commit/34407df4f7713646cf8cd1a7bd60b875965fd617))
* **zh_CN:** Update ChineseChina translations ([31eb798](https://github.com/Alinto/sogo/commit/31eb7987d8d95f23b94360ad854f9077298e0975))
* **zh_TW:** Update ChineseTaiwan translations ([7e78781](https://github.com/Alinto/sogo/commit/7e78781044f7d43f3c347e5fcc9e2285212ae445))
## [5.9.1](https://github.com/Alinto/sogo/compare/SOGo-5.9.0...SOGo-5.9.1) (2023-12-12)
### Features
* **addressbook:** Add global address book autocomplete on vlist ([11ad203](https://github.com/Alinto/sogo/commit/11ad203388ad33a22bd300047745869a27872cd9) [0b1f2b0](https://github.com/Alinto/sogo/commit/0b1f2b0405410628cb7ba8602b9286d71256d8e6) [0560efd](https://github.com/Alinto/sogo/commit/0560efd1f6a94bcb256d970ebe5535954e36cafe), [f85c531](https://github.com/Alinto/sogo/commit/f85c53190c38c4e28536f78e43623f6776248291))
* **core:** Add mobile provisioning download for Apple's devices ([19915e3](https://github.com/Alinto/sogo/commit/19915e3dffc14c90b03277f9f97b4e6b1158aa87) [6d16ee7](https://github.com/Alinto/sogo/commit/6d16ee798863a7f196c14915c47888adf0758f1a) [d38cc86](https://github.com/Alinto/sogo/commit/d38cc86d29ffce580bf26dd278a6b68556471c14) [cd50ee0](https://github.com/Alinto/sogo/commit/cd50ee017656f3e6cfd46cff7147258d4893706b) [65f8336](https://github.com/Alinto/sogo/commit/65f8336255577566282039f4058fe4f3c38a16d4) [4fe01f9](https://github.com/Alinto/sogo/commit/4fe01f96d73690bf1a2d60755bb552d25324ccaf) [a273f7a](https://github.com/Alinto/sogo/commit/a273f7aca5df120a50af0486161880040ee20519))
* **core:** add SOGoDisableExport option to disable export for mail, calendar and contacts ([d0b4b50](https://github.com/Alinto/sogo/commit/d0b4b50456cf3e23aa12d5cf7165531a7670edf6))
* **core:** Add SOGoDisableSharingAnyAuthUser option to disable sharing to any user authenticated for mail, contacts and calendar ([e0ef59d](https://github.com/Alinto/sogo/commit/e0ef59d5f212aced72a17e3af9e72a434eedd68e))
* **mail:** Add an option in Preferences to display full email instead of name alone in mailboxes ([2e670f7](https://github.com/Alinto/sogo/commit/2e670f7e6293b703f8cfe23ebf923ce13b463a19))
* **mail:** Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes [#5490](https://bugs.sogo.nu/view.php?id=5490). ([f41ab2e](https://github.com/Alinto/sogo/commit/f41ab2ed0c71903b80bda66adc54cc94b0cf70d6) [abce5f4](https://github.com/Alinto/sogo/commit/abce5f42cf4daef721ebf6b48d727eb957e20b14) [aa53524](https://github.com/Alinto/sogo/commit/aa535247513b06804fce666fe20ebcc9bd231c1f) [ca2c5c1](https://github.com/Alinto/sogo/commit/ca2c5c188ed980629f494e5b8e23ba42cdd54f58))
* **password:** Add specials characters to POLICY_MIN_SPECIAL_SYMBOLS ([7d66699](https://github.com/Alinto/sogo/commit/7d666992198e5e91e29081b99443607b1c96d354))
* **preferences:** can set SOGoForwardConstraints to 3 to accept both internal and external domains from SOGoForwardConstraintsDomains ([c872fb4](https://github.com/Alinto/sogo/commit/c872fb4d9c68382431a52181073ba1964cf44c22))
* **reply:** add references header when replying ([b396a27](https://github.com/Alinto/sogo/commit/b396a277f00d879d2c179db780d6f621a9057d0c))
* **ux:** select all button will unselect all if click again ([6e60b10](https://github.com/Alinto/sogo/commit/6e60b107556212123f41d95e4399d9605a4c16f9) [1ae02eb](https://github.com/Alinto/sogo/commit/1ae02ebd708da0a53ae588531e122adddaa7a5de))
### Bug Fixes
* **addressbook:** autocomplete correctly return two contacts from two ldap with same id ([1d3da92](https://github.com/Alinto/sogo/commit/1d3da92bab972ec7ec935eba72128e72387216c0))
* **calendar:** do not let DURATION and DTEND be both present in vevent ([0023a9c](https://github.com/Alinto/sogo/commit/0023a9ce3c4027bb32699efc5529a4a53d7699f6))
* **calendar:** If content is NSData, properly convert it to NSString ([21571ab](https://github.com/Alinto/sogo/commit/21571ab1e000da47b91b3f21bfaba89d1abec71f))
* **calendar:** properly set the start date range for yearly events ([1e8127b](https://github.com/Alinto/sogo/commit/1e8127b46122e83df02c394536950288b0ee16aa))
* **core:** Add cache for CDefaultsSize to avoid spamming SQL request ([87e1240](https://github.com/Alinto/sogo/commit/87e1240ace297645559e698a8c1f1a76b9901895) [81f2d88](https://github.com/Alinto/sogo/commit/81f2d88db362cc21c50858295d0e9d375db61f67))
* **core:** Fix calendar issues with Thunderbird related to vlist exclusion. Fix error log on photo. Closes [#5885](https://bugs.sogo.nu/view.php?id=5885) ([6b08f2e](https://github.com/Alinto/sogo/commit/6b08f2e4decc87ee57609355dee5a6657bca6110))
* **core:** Fix user profile retrieval when using utf8mb4_bin collation - in this case the SQL results may return NSdata instead of NSString. Fixes [#5902](https://bugs.sogo.nu/view.php?id=5902). ([3cd9910](https://github.com/Alinto/sogo/commit/3cd991063805f88a5672b10fbcc04a4149e13e26))
* **hmtl:** prevent html injection of tag form ([7481ccf](https://github.com/Alinto/sogo/commit/7481ccf37087c3f456d7e5a844da01d0f8883098))
* **http:** set correct Accept header when dowloading eml file ([c569ed2](https://github.com/Alinto/sogo/commit/c569ed2d77cf23c274c3dfc7cd3533cf268d09af))
* **mail:** Clean temporary files when mail is sent ([f35a37b](https://github.com/Alinto/sogo/commit/f35a37bbdd2005a63b42f9bab1588ce9a935b112) [d163405](https://github.com/Alinto/sogo/commit/d1634054d6f4dd18bdb82a7903b3bbbceae5b0e8))
* **mail:** Fix duplication of images when saving draft. Fixes [#5888](https://bugs.sogo.nu/view.php?id=5888) ([ee9899f](https://github.com/Alinto/sogo/commit/ee9899fe3d6aa7bf694f959a8e4f09faa39e737a) [9c09485](https://github.com/Alinto/sogo/commit/9c0948518b1e8365d6fadb3fccae1a0257b518ed))
* **scripts:** wrong type for c_value in script for complete unicode coverage ([65374e4](https://github.com/Alinto/sogo/commit/65374e44fc2a861d3a7c9f1f9ba25505601d79f1))
* **sogo-tool:** add protection to expire-sessions if the input is not an integer ([bb943e4](https://github.com/Alinto/sogo/commit/bb943e414d3fc8b71ebb169e31c261cd2dcd6d37))
* **translation:** incorret value causing trouble to transifex ([4b45dc7](https://github.com/Alinto/sogo/commit/4b45dc7584984602071efe99b9638c6231efba8c))
### Localization
* **ar:** Update Arabic translations ([28d883d](https://github.com/Alinto/sogo/commit/28d883dac1ccbafb878b9e13ba38f570f44ea325))
* **bg_BG:** Update Bulgarian translations ([3815bc1](https://github.com/Alinto/sogo/commit/3815bc1c5e6fe37aaad5492c246697fe34e4286d))
* **bs_BA:** Update Bosnian translations ([2afbcbe](https://github.com/Alinto/sogo/commit/2afbcbeaed24571785437aa5af1c092ba129ce97))
* **ca:** Update Catalan translations ([3040543](https://github.com/Alinto/sogo/commit/3040543c797fe9176df048b8a72a2c6f7dbfd3b7))
* **cs:** Update Czech translations ([029a821](https://github.com/Alinto/sogo/commit/029a82143f1d0d82ca8d6a5c9e5a14ac351718bf))
* **cy:** Update Welsh translations ([06a6ed7](https://github.com/Alinto/sogo/commit/06a6ed776824f47e5606c29a162903380e72fbd9))
* **da_DK:** Update Danish translations ([76911fd](https://github.com/Alinto/sogo/commit/76911fd4454c9f0213f11b4e2e95b29010eed9a4))
* **de:** Update German translations ([8a4bc2a](https://github.com/Alinto/sogo/commit/8a4bc2a71642a2a431008c02214ffdd0eb2ace23))
* **es_AR:** Update SpanishArgentina translations ([527fded](https://github.com/Alinto/sogo/commit/527fded19ceaf995963e997659b79c5e1290b8c5))
* **es_ES:** Update SpanishSpain translations ([057a1ba](https://github.com/Alinto/sogo/commit/057a1ba1053f462cd0633b86c3ee86d76acbd6bb))
* **eu:** Update Basque translations ([33f3a1b](https://github.com/Alinto/sogo/commit/33f3a1b716a006df8a28c416fc947e44fc285e37))
* **fi:** Update Finnish translations ([dba2332](https://github.com/Alinto/sogo/commit/dba2332864fa38116615c9b58eb3590fe251a37a))
* **gl:** Change Galician name to Galego ([6eae3f2](https://github.com/Alinto/sogo/commit/6eae3f2b1601033558a791c27bc4e27acf0825e7))
* **gl:** Update Galician translations ([5aa7ebf](https://github.com/Alinto/sogo/commit/5aa7ebf2aefef6e45423b2193c136fadced51375))
* **he:** Update Hebrew translations ([694c21d](https://github.com/Alinto/sogo/commit/694c21de99522733c95304d0e775e81493ff7200))
* **hr_HR:** Update Croatian translations ([715d25d](https://github.com/Alinto/sogo/commit/715d25d40a84b518b1d8f97b4946045a4be761b5))
* **hu:** Update Hungarian translations ([0b22fa6](https://github.com/Alinto/sogo/commit/0b22fa6cd5b55db5d021bbbfcc53d411ff4bb9d7))
* **id_ID:** Update Indonesian translations ([a16d29b](https://github.com/Alinto/sogo/commit/a16d29b70b50eeee14a3ad1b627e8f8a59216461))
* **is:** Update Icelandic translations ([2de6241](https://github.com/Alinto/sogo/commit/2de624122045d9df877f39f665d271056af0fba8))
* **it:** Update Italian translations ([53036b3](https://github.com/Alinto/sogo/commit/53036b323fe65b4bf40c838ff0578fa076bfea93))
* **ja:** Update Japanese translations ([41fb85e](https://github.com/Alinto/sogo/commit/41fb85e6a320b25776ce63672ef4251e932f82f0))
* **kk:** Update Kazakh translations ([2174195](https://github.com/Alinto/sogo/commit/21741954dd2762b3f03c0b5b21b8feb4d826cfb1))
* **lt:** Update Lithuanian translations ([6e9e7f9](https://github.com/Alinto/sogo/commit/6e9e7f98ef379ce26937e00daedfad88383615a4))
* **lv:** Update Latvian translations ([a9ecaed](https://github.com/Alinto/sogo/commit/a9ecaed5fa6fe8fecf08ec0354bbb187824d2fbb))
* **mk_MK:** Update Macedonian translations ([d6c9ecd](https://github.com/Alinto/sogo/commit/d6c9ecdeb0490fa44bc1c444819b5c82ccf89073))
* **nb_NO:** Update NorwegianBokmal translations ([3d5f352](https://github.com/Alinto/sogo/commit/3d5f35211189802ef031be688cadddc2ab684d37))
* **nl:** Update Dutch translations ([402c3d0](https://github.com/Alinto/sogo/commit/402c3d0a1f83d32af2fca2f3e5abafbe8850de08))
* **nn_NO:** Update NorwegianNynorsk translations ([6d270fe](https://github.com/Alinto/sogo/commit/6d270fe7a4bad2253f7e8427be660405460b2139))
* **pl:** Update Polish translations ([c75f210](https://github.com/Alinto/sogo/commit/c75f210864de1a7bb313c1ba21be987143a2f7ca))
* **pt_BR:** Update BrazilianPortuguese translations ([cfab856](https://github.com/Alinto/sogo/commit/cfab85624b3e725f121ea61d181340189e969229))
* **pt:** Update Portuguese translations ([e4f07c4](https://github.com/Alinto/sogo/commit/e4f07c466e195d59f72b934567cb3aa4d18cb9f3))
* **ro_RO:** Update Romanian translations ([d9c716c](https://github.com/Alinto/sogo/commit/d9c716c1b679a792876c9bc7ebed2d530ab8d89f))
* **ru:** Update Russian translations ([3809ec3](https://github.com/Alinto/sogo/commit/3809ec3904a7882239e50c671aa72c9f7f013c62))
* **sk:** Update Slovak translations ([cd7e06c](https://github.com/Alinto/sogo/commit/cd7e06c2ede339d078e54b76b6078523b78383fc))
* **sl_SI:** Update Slovenian translations ([ca21bf4](https://github.com/Alinto/sogo/commit/ca21bf4ce1758717eac8ec961788d067e9428456))
* **sr_ME@latin:** Update Montenegrin translations ([fe7369e](https://github.com/Alinto/sogo/commit/fe7369e427d7cc6f4efb23a78437bd2b2c65e6cd))
* **sr@latin:** Update SerbianLatin translations ([9126cae](https://github.com/Alinto/sogo/commit/9126cae27d49b7f199f2a6b259eb40589b011a55))
* **sr:** Update Serbian translations ([ed444fd](https://github.com/Alinto/sogo/commit/ed444fdc2266888f9d15d557e1ba92896158d870))
* **sv:** Update Swedish translations ([10369aa](https://github.com/Alinto/sogo/commit/10369aa654058b50285ae7239a9356f736c7ac1c))
* **tr_TR:** Update TurkishTurkey translations ([8d1fc1e](https://github.com/Alinto/sogo/commit/8d1fc1e306d926b3efeab2e3017823201254caf0))
* **uk:** Update Ukrainian translations ([0e50d37](https://github.com/Alinto/sogo/commit/0e50d37531d850b46009af2af5049a6b46541da0))
* **zh_CN:** Update ChineseChina translations ([cf87022](https://github.com/Alinto/sogo/commit/cf87022348296b9659e83e3a3985b48d89f5e01f))
* **zh_TW:** Update ChineseTaiwan translations ([fc2a82c](https://github.com/Alinto/sogo/commit/fc2a82c3b0f4b780df3b4d27ad0da78e34f665c6))
## [5.9.0](https://github.com/Alinto/sogo/compare/SOGo-5.8.3...SOGo-5.9.0) (2023-09-27)
### Features
* **calendar:** Add CALDAV Mac OS X Sonoma (14) support ([68cef9a](https://github.com/Alinto/sogo/commit/68cef9ae039e3040348a6a16733f4017a7e8ba42) [87bbba0](https://github.com/Alinto/sogo/commit/87bbba0c8d7893a776ff9ccafbe8227e98aa14ed))
* **core:** Add in user settings to force password change for a user when logging ([9918f75](https://github.com/Alinto/sogo/commit/9918f7558028f7a9d403d93c034f62a384ede4f2) [d1a51e8](https://github.com/Alinto/sogo/commit/d1a51e8340a74e7803cb808f7ff8a7bf959759c1))
* **notification:** add enotify sieve script in preferences ([82b69d1](https://github.com/Alinto/sogo/commit/82b69d14149c4ef3f6e913232bed478635009ed5) [6b64705](https://github.com/Alinto/sogo/commit/6b647050fc64b9beb024379ed7d37b6a54356798))
* **preferences:** Add user preferences to enable / disable signature for new mail, reply and forward ([8582e42](https://github.com/Alinto/sogo/commit/8582e423bdd69e200ff8cdec7f1d94634455e519))
### Enhancements
* **calendar:** add copy to clipboard button in "links to calendar" panel ([5c4d467](https://github.com/Alinto/sogo/commit/5c4d467d06161324826ee1ef0a713fc340dfaed5))
* **preferences:** Add subtext in vacation filter to explain the behavior ([09d0326](https://github.com/Alinto/sogo/commit/09d03261af82071b451fcba32a431f5c0432fa5d))
* **preferences:** show special characters when changing password ([6050c4e](https://github.com/Alinto/sogo/commit/6050c4ee61811b989e39b3c38a2e86360213be28))
* **packaging:** Add debian 10 support ([528d178](https://github.com/Alinto/sogo/commit/528d1782563c10bb0905ab159eb3577973615ae4))
### Bug Fixes
* **addressbook:** Fix asynchronous selection of contacts - cards are not added as they're not yet loaded. ([1df2586](https://github.com/Alinto/sogo/commit/1df25867455b46ff634e3a53cdf10fbb8f2a6a4b))
* **addressbook:** Fix broken image in shared address book when image is null ([5d315ac](https://github.com/Alinto/sogo/commit/5d315ac18066bd952fc45121ad1fe431a7b0305c))
* **addressbook:** Remove vlist from dav request for Thunderbird only. In Thunderbird 115, using vlist results in contact duplication ([f0719ee](https://github.com/Alinto/sogo/commit/f0719ee409dee693e7b4792bd127ccdd4b3043f1))
* **calendar:** Add negative timestamp support to use date before 1970-01-01. Fixes [#4914](https://bugs.sogo.nu/view.php?id=4914) (partial) ([8a8dcae](https://github.com/Alinto/sogo/commit/8a8dcae0298b81a486ad454bd58b90821eec6894))
* **calendar:** Avoid event duplication when adding an ics with an older sequence number and event already added in calendar ([cab5bc0](https://github.com/Alinto/sogo/commit/cab5bc011eb3afb5ff36e0f49f9919380c5835e9))
* **calendar:** deleted occurence of repeated event could cause some troubles with other imrbicated occurences ([f3981c4](https://github.com/Alinto/sogo/commit/f3981c42765f04431dd34af35d446aca03a1b5bc))
* **calendar:** Do not send tentative participation mail when user open mail or add ics to calendar app ([382b8a0](https://github.com/Alinto/sogo/commit/382b8a0a1a37fe89d268224a28570134bd2d2481))
* **calendar:** Fix calendar green dot stucks in original day when browser is opened for days and day change. Fixes [#5783](https://bugs.sogo.nu/view.php?id=5783) ([22372a7](https://github.com/Alinto/sogo/commit/22372a7598adbcf9c229f174f58842a89ada963f))
* **calendar:** Fix calendar green dot stucks in original day when browser is opened for days and day changed ([f22672c](https://github.com/Alinto/sogo/commit/f22672cef852116d08ba6a8720721fd0ce2f717f) [650ca16](https://github.com/Alinto/sogo/commit/650ca16ff78ecbd0dbf23bdf381461d75dda864e))
* **calendar:** Fix duplicates in series appointments for Apple's Calendar ([57ba539](https://github.com/Alinto/sogo/commit/57ba5397e5c14b3cb0a31c5617718c2866fca72f) [7600e9e](https://github.com/Alinto/sogo/commit/7600e9e1798062db167b1206829d1ca8be8c8881))
* **calendar:** Fix MacOS X Ventura calendar support. Fixes [#5639](https://bugs.sogo.nu/view.php?id=5639) ([4f7c731](https://github.com/Alinto/sogo/commit/4f7c73143f38b1e7e00a51b9457b55ce609a02a9))
* **calendar:** Fix NAME:NSInvalidArgumentException REASON:SOGoAppointmentFolder(instance) does not recognize davCalendarProxyReadFor ([82178ee](https://github.com/Alinto/sogo/commit/82178eeba95d19842afcd309d1a291e971d04bbe))
* **calendar:** Fix Out of range value for column 'c_startdate' SQL error ([32a0499](https://github.com/Alinto/sogo/commit/32a04998e50cc4adbc72b7dc36de67b8e9e4b0f2) [158a5be](https://github.com/Alinto/sogo/commit/158a5becc902b1d241575ac5098ceb527a0011ff) [1a257c7](https://github.com/Alinto/sogo/commit/1a257c7768fb9010db32e050650693d26f3e5a29))
* **calendar:** Fix regression on calendar event modification. Start date was set to 1970. Fixes [#5777](https://bugs.sogo.nu/view.php?id=5777). ([b68a215](https://github.com/Alinto/sogo/commit/b68a215ea29807db688e2f9a46a4a8d0907f83b8))
* **calendar:** Fix search issue on repeated events when one title is changed the event could not be found ([139ef15](https://github.com/Alinto/sogo/commit/139ef1528456d416ec5e99b56eba4f064d20738b))
* **calendar:** Increase timeout to 60 seconds for large ics calendar. Closes [#5781](https://bugs.sogo.nu/view.php?id=5781). ([fa5264e](https://github.com/Alinto/sogo/commit/fa5264e822867549aa5bc23fb905fd18c065c087))
* **calendar:** recurrenceid wasn't working properly ([c5814d6](https://github.com/Alinto/sogo/commit/c5814d60a4b3bb632a5ef50121453f592e9b4bd6))
* **calendar:** Repeated events didn't use the correct timezone in some cases ([bd8b49d](https://github.com/Alinto/sogo/commit/bd8b49d2c95a187b218bd7c4b8689a85faa3dda2))
* **calendar:** Revert commit e47566e3a and change HTTP status from 409 to 403 when event has a sequence number lower than than the new one. This should fix some Apple's duplication events ([fce02db](https://github.com/Alinto/sogo/commit/fce02db7d15c827c24a89d67a457f23379199e4e))
* **calendar:** some kinds of events are not shown ([f2df405](https://github.com/Alinto/sogo/commit/f2df4056161a96da750cba4a083a05ce1390ad55))
* **calendar:** When an event has no date (weird case), it is not possible to remove the event (NSException) ([4d2c771](https://github.com/Alinto/sogo/commit/4d2c77195e72def1e39caab6c402c9b297d844ff))
* **cas:** correction on pgtUrl ([a1528bc](https://github.com/Alinto/sogo/commit/a1528bcc0304ca4cce1a088c557e0e7d806309d9))
* **CAS:** key based on tciket was too long for memecached ([68b1c1e](https://github.com/Alinto/sogo/commit/68b1c1e5dfac8383e6cbafadf639105d25680cb4))
* **contacts:** Fix 5875 ([ff263b9](https://github.com/Alinto/sogo/commit/ff263b99fe5234752e875cd25101948c3fd177a5))
* **js:** Fix invalid sass version ([5e471c5](https://github.com/Alinto/sogo/commit/5e471c5d66f48d01cc1a75419dbdbaed57600331))
* **js:** Fix url redirection to null when disconnected. Closes [#5844](https://bugs.sogo.nu/view.php?id=5844). ([dc23721](https://github.com/Alinto/sogo/commit/dc23721b75405ff27624210598799366bdad91a9))
* **login:** Fix language list sorting on login page ([e0d76fb](https://github.com/Alinto/sogo/commit/e0d76fba65d46a8299bb00aa677308521f7cfc03))
* **mail:** autocomplete can't find two lists named the same but in different address books ([854e83c](https://github.com/Alinto/sogo/commit/854e83c22c5ca47915e0f426482d004e5ecc9868))
* **mail:** Fix a bug when pressing the key DEL more than once to delete mails ([af59e57](https://github.com/Alinto/sogo/commit/af59e57fc03f0bb5b5908510ad5da8ad11a601d9))
* **mail:** Fix email without subject according to RFC 2822. Fixes [#5743](https://bugs.sogo.nu/view.php?id=5743) ([ab954a1](https://github.com/Alinto/sogo/commit/ab954a150e99b4b35317a836791e831d460a1059))
* **mail:** Recipients with umlaut (ü) trigerred the end of string ([9c7ef08](https://github.com/Alinto/sogo/commit/9c7ef089c28df73ff3171efa1ca7f34d0d8b3a6c))
* **mail:** Removed invalid HTML tags in mail body. Fixes [#5755](https://bugs.sogo.nu/view.php?id=5755) ([f9fdad2](https://github.com/Alinto/sogo/commit/f9fdad251da20617430e1626a72c574221215ff1))
* **mail:** Signature images are not handled properly in forwarded or replied to messages. Save extracted body parts (for signature) into file system. Fixes [#5768](https://bugs.sogo.nu/view.php?id=5768) ([23da4cc](https://github.com/Alinto/sogo/commit/23da4cca7bbf5907f499d218c65b063d875a3120) [d436afb](https://github.com/Alinto/sogo/commit/d436afb05433bde00040b8b9cdd7432bf5d00bb0))
* **mail:** Templates namespace is correctly returned ([e959583](https://github.com/Alinto/sogo/commit/e959583390f50339f02f4870ef88a16c63b0dbd5))
* **mail:** When signature is too big and changing identity, a 'regex too big' error occurs. In this case just add signature at the end. Fixes [#5695](https://bugs.sogo.nu/view.php?id=5695). ([b7e529d](https://github.com/Alinto/sogo/commit/b7e529dd490c493a726878df0c712670fbd3fa3f))
* **notification:** body was not send + missing tooltip ([5534d4b](https://github.com/Alinto/sogo/commit/5534d4b6eed4b7b2343bb711fa9b7441f1d13ed7))
* **notifications:** bug with older user profile ([16af360](https://github.com/Alinto/sogo/commit/16af360006dd67e246590a41574634a669cf6070))
* **preferences:** add autocomplete for recipients in automatic forward ([ba4c7a5](https://github.com/Alinto/sogo/commit/ba4c7a5300d7eb5ea15c13a8b3fd9b27aa4cf53a))
* **preferences:** Disable auxiliary mail accounts creation when SOGoCreateIdentitiesDisabled is enabled ([b666137](https://github.com/Alinto/sogo/commit/b666137a7036a1fb095b17c767f342028df8211c))
* **preferences:** Fix language list sorting on preferences page ([f5f74f7](https://github.com/Alinto/sogo/commit/f5f74f751a63f6de3e247db7fff7da5ca215bdff))
* **preferences:** Fix NSException issue when SOGoCreateIdentitiesDisabled is set ([eb42e17](https://github.com/Alinto/sogo/commit/eb42e1787c427c8ac2bae9ecb9129fcf430eaaca))
* **preferences:** Fix the issue when signature is too long and preferences are not saved. Note that MySQL profile table should be updated with a migration script ([326bc68](https://github.com/Alinto/sogo/commit/326bc68f4c928ed2be8cea6d57d62a6e2ca04f6b))
* **preferences:** Signature could not be saved when SOGoCreateIdentitiesDisabled is set to YES and no signature is on identity ([4abf12b](https://github.com/Alinto/sogo/commit/4abf12b4bb27cfafdb3cc725f677e8f66fe5709e))
* **sieve:** sieve availibility was checked even if we disable it ([bba1da1](https://github.com/Alinto/sogo/commit/bba1da1b2b8d4babef7ab1a523741877cf58d61f))
* **translation:** french syntax ([8604389](https://github.com/Alinto/sogo/commit/860438915212a06f983da8c283d386a48745d049))
* **ui:** Disable send button while mail is sending. Fixes [#5825](https://bugs.sogo.nu/view.php?id=5825). ([a484407](https://github.com/Alinto/sogo/commit/a48440754cb9e4ea1bc13c5bc68c05bd93f89d51))
* **user:** Replace length with count for NSArray ([ec27f7e](https://github.com/Alinto/sogo/commit/ec27f7e7141c8ddae3450b36344415e98ae8f794))
### Localization
* **ar:** Update Arabic translations ([132912b](https://github.com/Alinto/sogo/commit/132912b56610141d6bcd6a5ce9170837796b5991))
* **bg_BG:** Update Bulgarian translations ([6606f98](https://github.com/Alinto/sogo/commit/6606f9865a619cecf8f37e0c4c39ca8fa0aa31cc))
* **bs_BA:** Update Bosnian translations ([fc93272](https://github.com/Alinto/sogo/commit/fc93272d70661db3eafcf2c089d2f8cae65bd799))
* **ca:** Update Catalan translations ([c82a48f](https://github.com/Alinto/sogo/commit/c82a48f96f3f114d3ac771f13fe0687bb24308f1))
* **cs:** Update Czech translations ([1a5408c](https://github.com/Alinto/sogo/commit/1a5408c2b323f46d03f2078ac17895493b0cd986))
* **cy:** Update French translations ([487ad1a](https://github.com/Alinto/sogo/commit/487ad1a849290a21807e2bca55d884116b9991bf))
* **cy:** Update Welsh translations ([0e2deac](https://github.com/Alinto/sogo/commit/0e2deac164b16b6bd105bd9d629275ae1147a902))
* **da_DK:** Update Danish translations ([9ef58e7](https://github.com/Alinto/sogo/commit/9ef58e7c6d143e2ac7d13719ec2e2be281de377f))
* **de:** Update German translations ([0f0ecf7](https://github.com/Alinto/sogo/commit/0f0ecf71c30ce7b5742ce7e6b6e9cb55b1b85a84))
* **es_AR:** Update SpanishArgentina translations ([64865aa](https://github.com/Alinto/sogo/commit/64865aa85a715095788452b1132bafe8f8fea018))
* **es_ES:** Update SpanishSpain translations ([ea8f04a](https://github.com/Alinto/sogo/commit/ea8f04ac7c5baf6c70bf4741298cb7e0b7147750))
* **eu:** Update Basque translations ([6293f62](https://github.com/Alinto/sogo/commit/6293f62d83bb4e855ec199cf92dce8e8f9086134))
* **fi:** Update Finnish translations ([7ff0699](https://github.com/Alinto/sogo/commit/7ff0699648a9531270f2c6299bced91d2d8256b5))
* **gl:** Update Galician translations ([86e5872](https://github.com/Alinto/sogo/commit/86e5872dc1303cfc5302ef728be40df73c0894d2))
* **he:** Update Hebrew translations ([41842e2](https://github.com/Alinto/sogo/commit/41842e2d3956fc6c34e74c9b79294e11233aa70f))
* **hr_HR:** Update Croatian translations ([b1df5d4](https://github.com/Alinto/sogo/commit/b1df5d4d142da783e0dc87bc509bba6e71ac1b88))
* **hu:** Update Hungarian translations ([e3d392b](https://github.com/Alinto/sogo/commit/e3d392b12ab4d3ff03cadba52f0848e1063d1573))
* **id_ID:** Update Indonesian translations ([e50b66b](https://github.com/Alinto/sogo/commit/e50b66b62e494564306b58157112e2c71a75c5cf))
* **is:** Update Icelandic translations ([ee3ed07](https://github.com/Alinto/sogo/commit/ee3ed0779cc29121d04267cab44998a4296deed6))
* **it:** Update Italian translations ([2fee2f8](https://github.com/Alinto/sogo/commit/2fee2f8782e0db1c7ba5fa0d3305149b7ce25506))
* **ja:** Update Japanese translations ([97d01fb](https://github.com/Alinto/sogo/commit/97d01fb14e45b6e2f4cda977de462ab5fa5a782f))
* **kk:** Update Kazakh translations ([ed5199a](https://github.com/Alinto/sogo/commit/ed5199aee71d53ccf7cd1dec7e08fb33ab3ac31b))
* **lt:** Update Lithuanian translations ([4974648](https://github.com/Alinto/sogo/commit/4974648c3323e853ca0ac440105020fb8a215805))
* **lv:** Update Latvian translations ([493f5f6](https://github.com/Alinto/sogo/commit/493f5f625fa87bab69b1d6b13b6ed9d0278b00f2))
* **mk_MK:** Update Macedonian translations ([bbb0955](https://github.com/Alinto/sogo/commit/bbb09555f0c07e2ea57ca12cd1ec8a218c475e59))
* **nb_NO:** Update NorwegianBokmal translations ([0368bad](https://github.com/Alinto/sogo/commit/0368bad3c5bd90107703f469b7605fa0c1a1c277))
* **nl:** Update Dutch translations ([03d4307](https://github.com/Alinto/sogo/commit/03d43079d3934a6ef20098df425e4c15d30aca6f))
* **nn_NO:** Update NorwegianNynorsk translations ([02d32d5](https://github.com/Alinto/sogo/commit/02d32d5f6ced2c2411b549e198cda59352942142))
* **pl:** Update Polish translations ([92d38c1](https://github.com/Alinto/sogo/commit/92d38c108e627520a5143a8059ff013a4a0d6080))
* **pt_BR:** Update BrazilianPortuguese translations ([ce6efaf](https://github.com/Alinto/sogo/commit/ce6efafe54673f55ae02e348c7844f7258f5cb3a))
* **pt:** Update Portuguese translations ([46d5779](https://github.com/Alinto/sogo/commit/46d5779088c4ceb34578c3233fea34cf8885d858))
* **ro_RO:** Update Romanian translations ([9aebf9b](https://github.com/Alinto/sogo/commit/9aebf9bf022b6ad49b14e5980ef4b8d22ff4f59d))
* **ru:** Update Russian translations ([da609c4](https://github.com/Alinto/sogo/commit/da609c448e57168b6e691b5c756eb06c49e4c50c))
* **sk:** Update Slovak translations ([8a10213](https://github.com/Alinto/sogo/commit/8a10213b751fc04a3d3f08b96eb58f87dc794663))
* **sl_SI:** Update Slovenian translations ([b08b5dd](https://github.com/Alinto/sogo/commit/b08b5dd79a68eadd7e5482d55bf0ace54d96d3b1))
* **sr_ME@latin:** Update Montenegrin translations ([865aba3](https://github.com/Alinto/sogo/commit/865aba32486c3bacdd6ca78e32ef4cf37a123219))
* **sr@latin:** Update SerbianLatin translations ([1710112](https://github.com/Alinto/sogo/commit/1710112c4e7d7997d277fbb22413d28cec4388a0))
* **sr:** Update Serbian translations ([2242c21](https://github.com/Alinto/sogo/commit/2242c213238c88318fbda0a7fc2ffccea3d42c32))
* **sv:** Update Swedish translations ([d5c1b74](https://github.com/Alinto/sogo/commit/d5c1b742f45130cd3a9efd6bbacb8ce53a1db7ca))
* **tr_TR:** Update TurkishTurkey translations ([dfc1ab7](https://github.com/Alinto/sogo/commit/dfc1ab7e0ecf7d304d62a5a5a1bfd9c583ca070d))
* **uk:** Update Ukrainian translations ([5ee12a4](https://github.com/Alinto/sogo/commit/5ee12a45074f679aa90c8596d0e95d7e6cdb345d))
* **zh_CN:** Update ChineseChina translations ([300cfe4](https://github.com/Alinto/sogo/commit/300cfe4e27e60b0b6f9ba80ff1ce9dc88a58efdb))
* **zh_TW:** Update ChineseTaiwan translations ([e330c55](https://github.com/Alinto/sogo/commit/e330c552c3917cf662fe4b124686d504904e4e13))
### [5.8.4](https://github.com/Alinto/sogo/compare/SOGo-5.8.3...SOGo-5.8.4) (2023-06-20)
### Bug Fixes
* **preferences:** Fix NSException issue when SOGoCreateIdentitiesDisabled is set ([ef958f6](https://github.com/Alinto/sogo/commit/ef958f6aaaa606eaa7c06c1edd3a93667b869d3b))
### Enhancements
* **packaging:** Add RHEL9 support
## [5.8.3](https://github.com/Alinto/sogo/compare/SOGo-5.8.2...SOGo-5.8.3) (2023-05-30)
### Enhancements
* **calendar:** Add week number on month view. Fixes [#4457](https://bugs.sogo.nu/view.php?id=4457). ([96639b7](https://github.com/Alinto/sogo/commit/96639b70a05cc3646939f8d2e078c6896cfc6af5))
* **mail:** Add autolink from ckeditor. Fixes [#5749](https://bugs.sogo.nu/view.php?id=5749) ([810cd12](https://github.com/Alinto/sogo/commit/810cd1235f37a3dd25e5294b0c6c28bb379ba9a7))
* **preferences:** Add SOGoCreateIdentitiesDisabled domain option which disables identity creation for users in preferences ([af6202b](https://github.com/Alinto/sogo/commit/af6202bee6fe647f178a98ef784f98eeaaacd592) [a14f9a7](https://github.com/Alinto/sogo/commit/a14f9a7b7991271727b8837a253c0ce9c154e012))
### Bug Fixes
* **activesync:** Wrong decoding emails in Outlook via EAS. Force utf-8 when contnet-type is different than html part. Original fix from tfu. Fixes [#5664](https://bugs.sogo.nu/view.php?id=5664) ([39ab482](https://github.com/Alinto/sogo/commit/39ab482b7f1a9206528a3e9fdb229b3b4e276baf))
* **calendar:** Fix Web Calendar (ics) subscription with authentication between SOGo instances not possible after upgrading from 5.7.0 to 5.8.2. Fixes [#5753](https://bugs.sogo.nu/view.php?id=5753) ([dd60e01](https://github.com/Alinto/sogo/commit/dd60e016c6c7f9a19b831804d55b6d39321d4a2a))
* **calendar:** Rework confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Rework of [#5585](https://bugs.sogo.nu/view.php?id=5585). Closes [#5720](https://bugs.sogo.nu/view.php?id=5720). ([4fc61a2](https://github.com/Alinto/sogo/commit/4fc61a28d529add9b879449a6c64a9d32ead3cab) [6ccd22b](https://github.com/Alinto/sogo/commit/6ccd22b511783d5f14d5af047e38791f3849d08e) [46215ac](https://github.com/Alinto/sogo/commit/46215aca87350cca0d608040e90b8187268f2f08))
* **core:** Add . , : ; + = special characters in password policy ([2f36fa5](https://github.com/Alinto/sogo/commit/2f36fa55fe5f4e8136198a0f26dd8b4254b43433) [a5d4715](https://github.com/Alinto/sogo/commit/a5d4715e7693097b2d38a700f5e71db4aade0b02))
* **eas:** Fix error 500 when SOGoCacheCleanup triggered cleanup with shibboleth 4.2.1. Fore refresh ticket in iFrame in this case ([7b711ea](https://github.com/Alinto/sogo/commit/7b711eabb346e7197c94880c8bfe264e0e3b6f0f) [5500ce7](https://github.com/Alinto/sogo/commit/5500ce7085a1c45a6858483b89fda5867f2aef36))
* **js:** Fix display of body message when 'to' field is not filled in. Closes [#5721](https://bugs.sogo.nu/view.php?id=5721) ([6acb245](https://github.com/Alinto/sogo/commit/6acb245fec44bfc0bb7cf8b5b37dfd56b62089c5))
* **js:** Fix JavaScript error when send mail from Addressbook. Fixes [#5750](https://bugs.sogo.nu/view.php?id=5750). ([3b0fbdd](https://github.com/Alinto/sogo/commit/3b0fbdd4f4584a010195daab9fa64c617e093c76))
* **mail:** Fix images in attachements when replying to a mail. Fixes [#5731](https://bugs.sogo.nu/view.php?id=5731) ([dbd4e20](https://github.com/Alinto/sogo/commit/dbd4e20c344666a01cfb1fa5dfdd5547a59f0520))
* **mail:** Fix invalid forward template when replying. Closes [#5726](https://bugs.sogo.nu/view.php?id=5726) ([d49ef40](https://github.com/Alinto/sogo/commit/d49ef4047a5c7f51850cf6e49cb3465b0dc7ac91))
* **mail:** Removed attachements of images when replying to a mail. As the image is inline, the attachement shall be removed. ([0edd3f7](https://github.com/Alinto/sogo/commit/0edd3f757fc07aabd4270b393677cea6ff4a8ed6))
### Localization
* **ar:** Update Arabic translations ([2c0b59f](https://github.com/Alinto/sogo/commit/2c0b59fa71551ccac690f603e0ca3bfdbe308798))
* **base:** Fix the meaning of 'Disable auto reply on' ([861dea8](https://github.com/Alinto/sogo/commit/861dea8efa3699928e7f4a7194efd802ff889944))
* **bg_BG:** Update Bulgarian translations ([b6c7521](https://github.com/Alinto/sogo/commit/b6c7521f144b54645cf97c6f3592908b8b05bf9a))
* **bs_BA:** Update Bosnian translations ([76dcd4f](https://github.com/Alinto/sogo/commit/76dcd4f6aa82fd634b3fc58b960fdf5461b94e75))
* **ca:** Update Catalan translations ([87f778d](https://github.com/Alinto/sogo/commit/87f778d01c573d5cb9b8d428283b048afb0124b2))
* **cs:** Update Czech translations ([e5dc040](https://github.com/Alinto/sogo/commit/e5dc0408ce20faf9f3092a717331447f1311b437))
* **cy:** Update Welsh translations ([5f47fc7](https://github.com/Alinto/sogo/commit/5f47fc7bcb98af998deefb1433f9d03674c8cf65))
* **da_DK:** Update Danish translations ([ad47aec](https://github.com/Alinto/sogo/commit/ad47aec62e7199ed8efdca5f93289484b9427ac7))
* **de:** Update German translations ([973a0ef](https://github.com/Alinto/sogo/commit/973a0efa6c654496a3f6acd0f25ba310350ba121))
* **en:** Fix the meaning of 'Disable auto reply on' ([d43de46](https://github.com/Alinto/sogo/commit/d43de46a5a1977d3c5f6be9e39b6dc3eb0da92a5))
* **es_AR:** Update SpanishArgentina translations ([ccf4872](https://github.com/Alinto/sogo/commit/ccf4872347133f71ad0babdbb3c64d82efd861f1))
* **es_ES:** Update SpanishSpain translations ([2b7552a](https://github.com/Alinto/sogo/commit/2b7552a5a9237a0a4646f6567e0698402903f785))
* **eu:** Update Basque translations ([fb5fa0c](https://github.com/Alinto/sogo/commit/fb5fa0c63d892885c2aa33798fa88df1822c3818))
* **fi:** Update Finnish translations ([33427ac](https://github.com/Alinto/sogo/commit/33427ac00bdb262c55c102c30a9a1c45f9757c02))
* **fr:** Update French translations ([0f06c57](https://github.com/Alinto/sogo/commit/0f06c576f60d77ba21593340cc1409a926d05a25) [fd7bdd8](https://github.com/Alinto/sogo/commit/fd7bdd8393883f284b4103508df5f8f4662b384d) [dc8c1c1](https://github.com/Alinto/sogo/commit/dc8c1c10ed4f20bca4e0fe53fff847533683592d))
* **he:** Update Hebrew translations ([b8c5d8f](https://github.com/Alinto/sogo/commit/b8c5d8f4a85511da8ac475ccab9e87a48cff9a39))
* **hr_HR:** Update Croatian translations ([b706d1b](https://github.com/Alinto/sogo/commit/b706d1b41fa0c007199ceff96e5e703833ec3f42))
* **hu:** Update Hungarian translations ([a8f2a37](https://github.com/Alinto/sogo/commit/a8f2a3749aa171a4d484bcb56e45c0a5c1037078))
* **id_ID:** Update Indonesian translations ([aa43c5b](https://github.com/Alinto/sogo/commit/aa43c5bf31f87f9bf759b473496867a25b6b95e6))
* **is:** Update Icelandic translations ([7f7f224](https://github.com/Alinto/sogo/commit/7f7f2246214037742c324e7266b4469b2227f999))
* **it:** Update Italian translations ([97b69af](https://github.com/Alinto/sogo/commit/97b69af241b6a67555e9a1e34b9c404064882d76))
* **ja:** Update Japanese translations ([8d842cc](https://github.com/Alinto/sogo/commit/8d842ccfb4b84517b24bf04a9d9bef57d09d9896))
* **kk:** Update Kazakh translations ([f3bdda5](https://github.com/Alinto/sogo/commit/f3bdda516e0a729697a4f5fbe13b89cf390c8763) [0fcf113](https://github.com/Alinto/sogo/commit/0fcf113c168d70bd9f77b7c5afbd0954bbad4a62) [29bda6b](https://github.com/Alinto/sogo/commit/29bda6b9457e237093a76bec4d2701540b38c4c7) [d1ad970](https://github.com/Alinto/sogo/commit/d1ad970864998face2b4b7ade49648c548e85d70) [b61bde9](https://github.com/Alinto/sogo/commit/b61bde90720851bc397861b06fe57fb6f454e43e))
* **lt:** Update Lithuanian translations ([07a01e3](https://github.com/Alinto/sogo/commit/07a01e3fdd7bb0102fe9c99b7ded407f74b2e52f))
* **lv:** Update Latvian translations ([56e040c](https://github.com/Alinto/sogo/commit/56e040c6d5bdbc6aa2c0c47b3939ecaeba28cc89))
* **mk_MK:** Update Macedonian translations ([d4a2d6b](https://github.com/Alinto/sogo/commit/d4a2d6b6f4c9b1d4f885a1fa239417d72e850fd2))
* **nb_NO:** Update NorwegianBokmal translations ([e8f507d](https://github.com/Alinto/sogo/commit/e8f507d7b90ffb85030193bb9659c7925a791077))
* **nl:** Update Dutch translations ([42b9a03](https://github.com/Alinto/sogo/commit/42b9a037252540d9662a85b1a4fa923721156c23))
* **nn_NO:** Update NorwegianNynorsk translations ([3e93296](https://github.com/Alinto/sogo/commit/3e9329690200849a944c36f57a11af5f4a199411))
* **pl:** Update Polish translations ([51817fc](https://github.com/Alinto/sogo/commit/51817fc6b41498ecccc73205ec8ebdca18194516))
* **pt_BR:** Update BrazilianPortuguese translations ([818332e](https://github.com/Alinto/sogo/commit/818332edd661d2d9394977fa5fa86f9fb9dcd326))
* **pt:** Update Portuguese translations ([6bb781b](https://github.com/Alinto/sogo/commit/6bb781b531ad109d11ddb4406bd9c71b23dedc5b))
* **ro_RO:** Update Romanian translations ([7be8e64](https://github.com/Alinto/sogo/commit/7be8e644a9f461f818e3d55e145f9f0cae8a54d7))
* **ru:** Date specific Russian from and to translations ([d1401e3](https://github.com/Alinto/sogo/commit/d1401e3bfc7cc569b333d74cafed76335e123273))
* **ru:** Update Russian translations ([239016f](https://github.com/Alinto/sogo/commit/239016fdc28923595e1287c80010a0ce098537c6))
* **sk:** Update Slovak translations ([1ea3f00](https://github.com/Alinto/sogo/commit/1ea3f009bb164a676b5e54baa1438a1648ebf406))
* **sl_SI:** Update Slovenian translations ([17fca79](https://github.com/Alinto/sogo/commit/17fca79bb0c320a3f4c099eacce50de66c762131))
* **sr_ME@latin:** Update Montenegrin translations ([d5bf149](https://github.com/Alinto/sogo/commit/d5bf149f7a753d554e92635665af3301f0c6a2ca))
* **sr@latin:** Update SerbianLatin translations ([b1f6d20](https://github.com/Alinto/sogo/commit/b1f6d20e9f9fbf5239c369f660968f9d99ed12a3))
* **sr:** Update Serbian translations ([b4e315b](https://github.com/Alinto/sogo/commit/b4e315b1d82328026558e597105e675b830bb028))
* **sv:** Update Swedish translations ([af96d2b](https://github.com/Alinto/sogo/commit/af96d2b5c4c6aec7de764ce83baaaed6493e1a33))
* **tr_TR:** Update TurkishTurkey translations ([d8a2146](https://github.com/Alinto/sogo/commit/d8a214601415643693782a192e92dbc5b65246b4))
* **uk:** Update Ukrainian translations ([6655f06](https://github.com/Alinto/sogo/commit/6655f06cc0592216ab521ccec5fff8da1fd31626))
* **zh_CN:** Update ChineseChina translations ([0b4fddc](https://github.com/Alinto/sogo/commit/0b4fddc23293c550a0462c397252ad48b9938acb))
* **zh_TW:** Update ChineseTaiwan translations ([0a2d702](https://github.com/Alinto/sogo/commit/0a2d702c69f2af8c91c188f12dce07e565967569))
## [5.8.2](https://github.com/Alinto/sogo/compare/SOGo-5.8.1...SOGo-5.8.2) (2023-03-28)
### Bug Fixes
* **calendar:** Impossible to create a new event after creating a new one. Closes [#5718](https://bugs.sogo.nu/view.php?id=5718) ([f813b78c](https://github.com/Alinto/sogo/commit/f813b78c3cbe9ea4764fa2af2ea108b58ae26c37))
## [5.8.1](https://github.com/Alinto/sogo/compare/SOGo-5.8.0...SOGo-5.8.1) (2023-03-28)
+31726 -16078
View File
File diff suppressed because it is too large. Load diff
+772 -20
View File
@@ -21,7 +21,7 @@ devices with SOGo.
The instructions are based on version {release_version} of SOGo.
The latest version of this guide is available
at https://sogo.nu/downloads/documentation.html.
at https://www.sogo.nu/support.html#/documentation.
Introduction
------------
@@ -162,10 +162,10 @@ Operating System Requirements
The following operating systems are currently supported by SOGo:
* Red Hat Enterprise Linux (RHEL) Server 7 and 8
* Community ENTerprise Operating System (CentOS) 7 and 8
* Debian GNU/Linux 7.0 (Wheezy), 8.0 (Jessie), 9.0 (Stretch) and 10.0 (Buster)
* Ubuntu 14.04 (Trusty), 16.04 (Xenial), 18.04 (Bionic) and 20.04 (Focal)
* Red Hat Enterprise Linux (RHEL) Server 7, 8 and 9
* Community ENTerprise Operating System (CentOS) 7, 8 and 9
* Debian GNU/Linux 7.0 (Wheezy), 8.0 (Jessie), 9.0 (Stretch), 10 (Buster), 11 (Bullseye) and 12 (Bookworm)
* Ubuntu 14.04 (Trusty), 16.04 (Xenial), 18.04 (Bionic), 20.04 (Focal), 22.04 (Jammy) and 24.04 (Noble)
Make sure the required components are started automatically at boot time
and that they are running before proceeding with the SOGo configuration.
@@ -227,7 +227,7 @@ Some of the softwares on which SOGo depends are available from the repository
"Extra Packages for Enterprise Linux" (EPEL). To add EPEL to your packages
sources, install the following package:
On RHEL/CentOS 7,
On RHEL/CentOS 7
----
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
----
@@ -237,12 +237,17 @@ For RHEL/CentOS 8
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
----
For RHEL/CentOS 9
----
dnf install -y epel-release && dnf update -y
dnf install -y yum-utils && dnf config-manager --set-enabled crb
----
SOGo relies on the GNUstep and ytnef packages provided by Alinto and must not use the
packages from EPEL. Adjust the repository definition to exclude those packages:
----
sed -i '/enabled=1/a \
exclude=gnustep* ytnef*' /etc/yum.repos.d/epel.repo
sed -i '/enabled=1/a exclude=gnustep* ytnef*' /etc/yum.repos.d/epel.repo
----
For more information on EPEL, visit http://fedoraproject.org/wiki/EPEL/.
@@ -525,6 +530,10 @@ This could be `America/New_York`, `Europe/Berlin`, `Asia/Tokyo` or
In our example, we set the time zone to `America/Montreal`.
|D |SOGoMailDisableXForward
|Parameter used to prevent sogo from adding the mail header X-Forward that
contains the user ip. Set to 'YES' to disable this header. Default to 'NO'.
|D |SOGoMailDomain
|Parameter used to set the default domain name used by SOGo. SOGo uses
this parameter to build the list of valid email addresses for users.
@@ -618,6 +627,7 @@ for SOGo. Possible values are:
* `English`
* `Finnish`
* `French`
* `Galician`
* `German`
* `Hungarian`
* `Icelandic`
@@ -687,6 +697,13 @@ Defaults to `NO` when unset.
|S |SOGoDisableSharing
|List of modules where sharing should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (sharing enabled for everybody).
|S |SOGoDisableSharingAnyAuthUser
|List of modules where sharing with any authenticated user option should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (sharing enabled for everybody).
|S |SOGoDisableExport
|List of modules where export should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (export enabled for everybody).
|S |SOGoPasswordChangeEnabled
|Parameter used to allow or not users to change their passwords from
SOGo.
@@ -711,7 +728,7 @@ of 1 day by default.
|Parameter used to configure which languages are available from SOGo's
Web interface. Available languages are specified as an array of string.
The default value is: `( "Arabic", "Basque", "Catalan", "Czech", "Dutch", "Danish", "Welsh", "English", "SpanishSpain", "SpanishArgentina", "Finnish", "French", "German", "Icelandic", "Italian", "Hungarian", "BrazilianPortuguese", "NorwegianBokmal", "NorwegianNynorsk", "Polish", "Russian", "Slovak", "Ukrainian", "Swedish" )`
The default value is: `( "Arabic", "Basque", "Catalan", "Czech", "Dutch", "Danish", "Welsh", "English", "SpanishSpain", "SpanishArgentina", "Finnish", "French", "Galician", "German", "Icelandic", "Italian", "Hungarian", "BrazilianPortuguese", "NorwegianBokmal", "NorwegianNynorsk", "Polish", "Russian", "Slovak", "Ukrainian", "Swedish" )`
|D |SOGoHideSystemEMail
|Parameter used to control if SOGo should hide or not the system email
@@ -789,12 +806,25 @@ Default value is `YES`, or enabled.
authentication and global address books. Multiple sources can be
specified as an array of dictionaries.
|S |SOGoForbidUnknownDomainsAuth
|Boolean. If set to `YES`, prevent user that try to connect with an unknown domain.
The known domains are set in parameter `SOGoDomainAllowed` and/or the domains listed in a <<multi-domains-configuration, Multi-domains Configuration>>. Default value is `NO`.
Obiously, if your users can connect without specifying a domain, let this parameter to `NO`.
|S |SOGoDomainAllowed
|Parameter used to define which domains SOGo should allowed during a connection request. This parameter is an array of strings.
|S |SOGoPasswordRecoveryEnabled
|Boolean enable password recovery with secret question or secondary e-mail. Default value is `NO`.
|S |SOGoPasswordRecoveryDomains
|List of domains where password recovery is enabled, for example `(example.org, example.net)`. If empty array `()`, disabled for all domains. If not set, enabled for all domains.
|D |SOGoPasswordRecoveryFrom
|From email when `SOGoPasswordRecoverySecondaryEmail` is set and no user domain is defined - otherwise it will use noreply@foo.bar where foo.bar is the selected user domain. Default value is `noreply@domain.com`.
|U |SOGoPasswordRecoveryMode
|User password recovery mode. Values can be `Disabled`, `SecretQuestion` or `SecondaryEmail`.
@@ -810,10 +840,118 @@ specified as an array of dictionaries.
|S |SOGoJWTSecret
|JWT secret according to RFC-7519. Default value is `SOGo`.
|D |SOGoCreateIdentitiesDisabled
|Disable identity creation for users in preferences. If `YES`, users won't be able to add new identities and will allow to change only full name, signature and default identity. Default value is `NO`. Note : If this settings is set to `YES`, it will not be possible to crete auxiliary mail accounts.
|S |SOGoURLEncryptionEnabled
|Enable URL encryption to make SOGo GDPR compatible. Setting this parameter to `YES` will encrypt username in URL. The encryption data are cached to avoid high cpu usage, if the value of thie parameter is changed, memcached server needs to be restarted. Default value is `NO`.
|S |SOGoURLEncryptionPassphrase
|Passphrase for `SOGoURLEncryptionEnabled`. The string must be 128 bits (16 characters). If this settings change, the cache server must be restarted, and the DAV url will change. Default value is `SOGoSuperSecret0`.
|D |SOGoForceRawHtmlSignature
|Add `<div class="raw-html-embed sogo-raw-html-embed">` around signature to avoid CKEditor 5 modifying HTML code and breaking signature (https://bugs.sogo.nu/view.php?id=5920). Default value is `YES` (tag is added).
|=======================================================================
[[Secret-for-sensitive-data]]
Secret for sensitive data
~~~~~~~~~~~~~~~~~~~~~~~~~
_Since 5.10_
SOGo can store sensitive data in its database. In default behavior, SOGo will not do anything and store them in plain text.
Starting with 5.10, you can now set a secret for SOGo to encrypt this data in database.
The encryption method is AES-GCM with a 256 bits key.
Two parameters in your sogo.conf are needed to do that
[cols="^4,46,50a"]
|=======================================================================
|S |SOGoSecretType
|Parameter to define what kind is the secret: 'plain' to directly put the secret in _SOGoSecretValue_, 'env'
to put the name of a environment variable in _SOGoSecretValue_ or 'none' to not use any secret.
For now, it is only used to encrypt/decrypt auxiliary account's password. the secret must be
256 bits long i.e. 32 utf8 chars string.
Defaults to 'none' when unset
|S |SOGoSecretValue
|Parameter used whenever SOGo need a secret to encrypt/decrypt. For now,
only for password of auxiliary accounts. If _SOGoSecretType_ is 'plain',
directly put the secret here. if _SOGoSecretType_ is 'env', put the name
of the environment variable here. Must be set with _SOGoSecretType_.
If _SOGoSecretType_ is not 'none', sogo won't start is the value is unfetchable or incorrect
There is no default value
|=======================================================================
If you want to use an environment variable, set:
----
SOGoSecretType = "env";
SOGoSecretValue = "SOGO_SECRET";
----
SOGO_SECRET must be an environment variable containing a 32 chars (256 bits) string. Note that SOGO_SECRET must be accessible
to the unix user 'sogo'. If you use sogo with systemd or init.d, be sure your process have access to that environment variable.
If you want to directly put the secret in your sogo.conf:
----
SOGoSecretType = "plain";
SOGoSecretValue = "secret_is_a_32_characters_string";
----
*Note that if _SOGoSecretType_ is set to something different than 'none', sogo will check the secret and won't start if it is not ok.
The reason will be given in the log (size, can't found the env...)*
If you want to use a secret for the first time or change the secret. There is a a _sogo-tool_ command to encrypt all
your sensitive data. Check the doc of _<<sogo-tool-update-secret,sogo-tool update-secret>>_
**How to use a secret for the first time?**
- Stop sogo
- Modify your sogo.conf to add your secret
- Use the sogo-tool command to encrypt all sensitive data that are already in your database
----
sogo-tool update-secret -n myNewSecret
----
- Restart sogo
**How to change the value of the secret?**
- Stop sogo
- Modify your sogo.conf to modify your secret
- Use the sogo-tool command to encrypt all sensitive data with the new secret, you will need to pass your current secret too.
----
sogo-tool update-secret -n myNewSecret -p myCurrentSecret
----
- Restart sogo
**I can't stop sogo in my environement**
In that case, simply modify the sogo.conf and use the sogo-tool. If you're unluncky, a user would have made
a request that will encrypt its data without the correct secret at the same time you run sogo-tool.
If that's the case, the wrong behavior and their solution are listed below.
**Unexpected behavior**
Be aware that it must have a synchronisation between the secret in your sogo.conf and the sensitive data in your database. Meaning if the
data is not encrypted with the correct secret, some wrong behavior can happens. There are listed here as well as their solution.
As for now, it only affects the IMAP's passwords of auxiliary accounts and here the unexpected behavior in case of mismatch of secret are:
- *The auxiliary account of the user is correctly set but it can't see any mail folders*: The user will have to go to preferences -> mail -> imap accounts.
Then it simply has to edit its account, put its password again and save the preferences. The password will be correctly encrypted then.
- *the user has errors and blank pages*: Should not happen, please open a ticket. But, if it does, do this to unstuck the user:
----
sogo-tool user-preferences unset default <user> AuxiliaryMailAccounts
----
user being the full mail address or just the username if domainless. After that, the user will have to set its auxiliary accounts again.
Authentication using LDAP
~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -1138,14 +1276,21 @@ Defaults to `NO` when unset.
(with read-only access). Note that if set to `NO`, autocompletion will
not work for entries in this source and thus, freebusy lookups.
!displayName (optional)
!If set as an address book, the human identification name of the LDAP
|displayName (optional)
|If set as an address book, the human identification name of the LDAP
repository
|listRequiresDot (optional)
|If set to `YES`, listing of this LDAP source is only possible when performing a search (respecting the SOGoSearchMinimumWordLength parameter) or when explicitly typing a single dot.
Defaults to `YES` when unset.
|globalAddressBookFirstEntriesCount (optional)
|Number of entries displayed when `listRequiresDot` is enabled. Default value is `-1` (all records / equals to SOGoLDAPQueryLimit). This parameter must be less or equal to SOGoLDAPQueryLimit. If source is LDAP, the LDAP overlay sssvlv must be enabled on the system for server side sorting.
|disableSubgroups (optional)
|If set to `YES`, disable recursive search. Consider this option when groups have the same name than a member (https://bugs.sogo.nu/view.php?id=5913).
Defaults to `NO` when unset.
|ModulesConstraints (optional)
|Limits the access of any module through a constraint based on an LDAP
attribute; must be a dictionary with keys `Mail`, and/or `Calendar`,
@@ -1254,9 +1399,9 @@ mapping = {
|===
2+h|Name
|First |givenName
|First |givenname
|Last |sn
|DisplayName |displayName _or_ cn _or_ givenName + sn
|DisplayName |displayname _or_ cn _or_ givenname + sn
|Nickname |mozillanickname
2+h|Internet
@@ -1265,7 +1410,7 @@ mapping = {
|ScreenName |nsaimid
2+h|Phones
|Work |telephoneNumber
|Work |telephonenumber
|Home |homephone
|Mobile |mobile
|Fax |facsimiletelephonenumber
@@ -1286,7 +1431,7 @@ mapping = {
|Address |street + mozillaworkstreet2
|City |l
|State/Province |st
|Zip/Postal code |postalCode
|Zip/Postal code |postalcode
|Country |c
|Web page |mozillaworkurl
@@ -1559,6 +1704,14 @@ if you set this parameter.
For PostgresSQL, set the database URL to something like:
`postgresql://sogo:sogo@127.0.0.1:5432/sogo/sogo_cache_folder`.
|S |OCSAdminURL
|Parameter used to set the database URL so that SOGo can use to store
all administration elements.
For PostgresSQL, set the database URL to something like:
`postgresql://sogo:sogo@127.0.0.1:5432/sogo/sogo_admin`.
|=======================================================================
@@ -1587,6 +1740,19 @@ default-character-set=utf8
default-character-set=utf8
----
MySQL SSL Connection
^^^^^^^^^^^^^^^^^^^^
Add the following settings in the `sogo.conf` file to enable SSL connection between SOGo and MySQL / MariaDB :
----
MySQL4SSLEnabled = YES;
MySQL4SSLKeyPath = "/mysql_keys/client-key.pem";
MySQL4SSLCertPath = "/mysql_keys/client-cert.pem";
MySQL4SSLCaPath = "/mysql_keys/ca-cert.pem";
----
MySQL complete Unicode compliance
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -2264,18 +2430,27 @@ Defaults to `NO` when unset.
|D |SOGoForwardConstraints
|Parameter used to set constraints on possible addresses used when
automatically forwarding mails. When set to `0` (default), no constraint
is enforced. When set to `1`, only internal domains can be used. When
set to `2`, only external domains can be used.
is enforced. When set to `1`, only internal domains can be used.
When set to `2`, only external domains defined in `SOGoForwardConstraintsDomains`
can be used. When set to `3`, internal domains and other domains defined
in `SOGoForwardConstraintsDomains` can be used.
|D |SOGoForwardConstraintsDomains
|Parameter used to set which domains are allowed as external domains
when SOGoForwardConstraints is set to `2`. For example, setting:
|Parameter used to set which external domains are allowed
when SOGoForwardConstraints is set to `2` or `3`. For example, setting:
SOGoForwardConstraintsDomains = ("gmail.com", "googlemail.com");
will allow users to forward emails to only `gmail.com` and `googlemail.com` domains.
When empty or undefined, no constraints are imposed.
|D |SOGoNotificationEnabled
|Parameter used to activate the edition from the preferences window of
notifications for emails. Requires Sieve script support on the IMAP
host.
Defaults to `NO` when unset.
|D |SOGoSieveScriptsEnabled
|Parameter used to activate the edition from the preferences windows of
server-side mail filters. Requires Sieve script support on the IMAP
@@ -2465,6 +2640,13 @@ Defaults to `NO` when unset.
Defaults to `inline` when unset.
|U |SOGoMailDisplayFullEmail
|Show recipients or sender full email in mailboxes if set to `YES`. Default value is `NO`.
|U |SOGoMailHideInlineAttachments
|Hide attachements for inline images if set to `YES`. Default value is `NO`.
|U |SOGoMailCustomFullName
|The string to use as full name when composing an email, if
_SOGoMailCustomFromEnabled_ is set in the user's domain defaults.
@@ -2506,6 +2688,21 @@ Possible values are:
Defaults to `below`.
|U |SOGoMailUseSignatureOnNew
|Add signature to new message
Defaults to `YES`.
|U |SOGoMailUseSignatureOnReply
|Add signature to reply
Defaults to `YES`.
|U |SOGoMailUseSignatureOnForward
|Add signature to forward
Defaults to `YES`.
|U |SOGoMailComposeMessageType
|The message composition format. Possible values are:
@@ -2637,6 +2834,8 @@ like this:
}
----
[[multi-domains-configuration]]
Multi-domains Configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -2831,6 +3030,21 @@ The _cronjob_ should look like this:
0 0 * * * sogo /usr/sbin/sogo-tool update-autoreply -p /etc/sogo/sieve.creds
----
_Password_ — Force user password change at login
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The following commands force user to change his password at login :
----
/usr/sbin/sogo-tool user-preferences set settings [USER] ForceResetPassword 1
----
Disable :
----
/usr/sbin/sogo-tool user-preferences unset settings [USER] ForceResetPassword
----
Managing User Accounts
----------------------
@@ -3160,7 +3374,7 @@ your site. However, be aware that in order to use the SOGo Integrator
plug in, you will need to repackage it with specific modifications.
Please refer to the documentation published online:
https://sogo.nu/downloads/documentation.html
https://www.sogo.nu/support.html#/documentation
If you only use the SOGo Connector plug in, you can still easily access
your data.
@@ -3197,6 +3411,12 @@ http://127.0.0.1/SOGo/dav/jdoe/
Note that the trailing slash is important for the old Apple iCal 3 application.
Since SOGo 5.9.1, calendar can be installed using provisioning profiles. On the calendar interface next to the calendar name (eg `Personal`), click on the three dots button and click on `Download iOS - MacOS configuration profile`.
You have to add the profile to your device :
* Go to Settings / Profiles / Click on + / Continue
* Type your SOGo account password and click on install
Apple AddressBook
~~~~~~~~~~~~~~~~~
@@ -3240,6 +3460,12 @@ The virtual host should be defined like:
This configuration is also required if you want to configure a CardDAV
account on an Apple iOS device (version 4.0 and later).
Since SOGo 5.9.1, address book can be installed using provisioning profiles. On the address book interface next to the address book name (eg `Personal`), click on the three dots button and click on `Download iOS - MacOS configuration profile`.
You have to add the profile to your device :
* Go to Settings / Profiles / Click on + / Continue
* Type your SOGo account password and click on install
Microsoft ActiveSync
~~~~~~~~~~~~~~~~~~~~
@@ -3250,6 +3476,520 @@ any mobile devices that support Microsoft ActiveSync. Microsoft Outlook
The Microsoft ActiveSync server URL is generally something
like: `http://127.0.0.1/Microsoft-Server-ActiveSync`.
Using sogo-tool
---------------
The command _sogo-tool_ allows to do some operations on database and sieve filter. It is included with
the sogo package on Debian/Ubuntu but must be installed manually on RHEl/CentOS:
yum install sogo-tool
*_WARNING_: Use sogo-tool with full awareness of what you are doing. This is an admin tool that can cause loss of data
or completely make the webmail unusable by a user.*
sogo-tool backup/restore
~~~~~~~~~~~~~~~~~~~~~~~~
The backup tool saves the information of a user into a file. The information saved are its preferences, its events and its contacts.
sogo-tool backup directory ALL|user1 [user2] ...
* First argument, *directory* must be a path, only the last subdirectory will be created, the previous ones must exist.
* Second argument is *ALL* to backup all users or put each user space-separated.
* Each user's info will take one file, the filename will be the username.
* The files are readable but in a specific format for _sogo-tool restore_.
Example:
----
sogo-tool backup /tmp/foo ALL # Will save all users into /tmp/foo
sogo-tool backup /etc/sogo_backup/foo user1 user2 # Will save only user1 and user2. The directory /etc/sogo_backup must exist.
----
Using the files produced by the backup, you can restore all or some information of a user with the _restore_ command:
sogo-tool restore [-l|-p|-f/-F folder/ALL] [-c credentialFile] directory user
* First argument must be one of the four mode options *-l*, *-p*, *-f* or *-F*.
* Second, optional, is *-c* with the credential file. Only useful with *-p* mode.
* *directory* is the path where the backup file is.
* *user* is the name of the backup file, which is the username if you use the _backup_ tool.
The differents mode are:
* *-l* will only list the folders (meaning calendar and address book) that would be restored with *-f* or *-F*.
Example:
----
sogo-tool restore -l /tmp/backup user1
----
Result:
----
Calendar/60C8-65323D80-7-4D9F7D80 (new_calendar)
Calendar/personal (Personal Calendar)
Contacts/personal (Personal Address Book)
----
* *-p* will restore the user's preferences. If the user has an active sieve script (filter, vacation, forward...) you must provide a credential file with
the parameters *-c*. The credential file is a simple one-line file that contains the "username:password" of an admin account of your imap/sieve server.
Example:
----
sogo-tool restore -p /tmp/backup user1
sogo-tool restore -p -c /var/sogo/cred /tmp/backup user1
----
* *-f* will restore the events/contacts of folders (calendar and address book) from the backup file that don't exist in the database. If the event/contact
was deleted but is in the backup file, it will be restored. If the event/contact exist, nothing will be done even if it has been modified compared to the
backup file. If a whole folder has been deleted but is in the backup file, it will be restored. *-f* expect a value that can be ALL to restore all folders,
or the name of the folder to restore. You can list them with the *-l* mode.
Example:
----
sogo-tool restore -f ALL /tmp/backup user1
sogo-tool restore -f "Contacts/personal" tmp/backup user1
sogo-tool restore -f "Calendar/60C8-65323D80-7-4D9F7D80" tmp/backup user1
----
The commands will either prints out nothing or any events/contacts restored:
----
restoring record '60CA-65323D00-1-680B0A00.ics'
restoring record '60C8-65323D00-1-4D9F7D80.vcf'
restoring record '60C8-65323D80-9-4D9F7D80.ics'
----
* *-F* has the same behavior as *-f* but it will first delete all contacts and events in database before restoring the backup.
So if an event/contact is not in the backup file, it will be lost. If a folder exists but is not in the backup file, nothing will happen
to it and its content.
*-F* expect a value that can be ALL to restore all folders, or the name of the folder to restore. You can list them with the *-l* mode.
Example:
----
sogo-tool restore -F ALL /tmp/backup user1
sogo-tool restore -F "Contacts/personal" tmp/backup user1
sogo-tool restore -F "Calendar/60C8-65323D80-7-4D9F7D80" tmp/backup user1
----
sogo-tool checkup
~~~~~~~~~~~~~~~~~
Check the events and contacts data's integrity of a user
sogo-tool checkup [-d] user...
* *-d*, optional, will delete all corrupted data.
* *user* is a single username or multiple user each space-separated.
Will print out nothing if no corrupted data were found or one of the following messages:
* Corrupted calendar item (missing tags) in path <path> with c_name = <ics_id>
* Corrupted calendar item (unparsable) in path <path> with c_name = <ics_id>
* Missing start date of event in path <path> with c_name = <ics_id> (<event_name>)"
* Missing end date of event in path <path> with c_name = <ics_id> (<event_name>)"
* Start date (<start_date>) is not before end date (<end_date>) for event in path <path> with c_name = <ics_id> (<event_name>)
* Corrupted card item (unparsable) in path <path> with c_name = <vcard_id>
It can also print log from SOGo if it raise errors:
* <0x0x55e0956c4d00[VSCardSaxDriver]> serious inconsistency among begin/end tags
Example:
----
sogo-tool checkup user1
sogo-tool checkup -d user1
----
sogo-tool cleanup
~~~~~~~~~~~~~~~~~
Will purge all user's deleted events and contacts which the deletion is older than a number of days.
sogo-tool cleanup [days] ALL|user1 [user2]
* *days* the age of deleted records to purge in days
* Second argument is *ALL* to purge events of all users or put each user space-separated.
Example:
----
sogo-tool cleanup 30 ALL
sogo-tool cleanup 30 user1 user2
----
Outputs:
----
Purged 3 records from folder /Users/user1/Calendar/60C7-65325300-9-18F39AA0
Purged 1 records from folder /Users/user1/Calendar/60C8-65323D80-7-4D9F7D80
Purged 0 records from folder /Users/user1/Calendar/personal
Purged 0 records from folder /Users/user1/Contacts/personal
Purged 5 records from folder /Users/user2/Calendar/personal
----
sogo-tool create-folder
~~~~~~~~~~~~~~~~~~~~~~~
Create a folder (Calendar or Address Book) for a user.
create-folder user type [displayname ...]
* *user* is the name of the user
* *type* is either "Calendar" or "Contacts"
* *displayname* is the folder's name. If the name is already taken, a new folder will still be made but with another uid.
Example:
----
sogo-tool create-folder user1 Contacts Pro_Contacts Ext_Contacts
sogo-tool create-folder user2 Calendar Pro_Calendar
----
sogo-tool dump-defaults
~~~~~~~~~~~~~~~~~~~~~~~
Output all current defaults value of GNUstep and SOGo (sogo.conf)
sogo-tool dump-defaults [-f <filename>|[all]]
* Can be used without arguments and will output the defaults for gnustep domain 'sogod'.
* *all* option will output all defaults value found from sogo and gnustep in property list format.
* *-f* expect a filepath of an .xml file and will output it in property list format (sogo.conf). May need some tweaks, though.
Example:
----
sogo-tool dump-defaults
sogo-tool dump-defaults all
sogo-tool dump-defaults -f /tmp/foo/conf.xml
----
sogo-tool expire-sessions
~~~~~~~~~~~~~~~~~~~~~~~~~
Expires user sessions from database without activity for specified number of minutes. When a user log in to sogo for
the first time, sogo will create a entry in database's table OCSSessionsFolderURL with the user's information. Sogo will
also set a cookie with an encoded value to fetch this database table. That way, each time the user make a request with that cookie,
sogo will know which connected user it is. This command will remove all user's session from database
without activity for specified number of minutes. Those users will have to log in again.
sogo-tool expire-sessions [nbMinutes]
* *nbMinutes* Integer, number of minutes. All session without activity in these last minutes will be removed.
Example:
----
sogo-tool expire-sessions #Will print usage.
sogo-tool expire-sessions 160 #Will remove session which last activity is older than 160 minutes.
sogo-tool expire-sessions 0 #Will remove session which last activity is older than 0 minutes.
----
sogo-tool manage-acl
~~~~~~~~~~~~~~~~~~~~
Manage access-control list (ACL) of a user for folders (Calendar and Address Book).
sogo-tool manage-acl get|add|remove|subscribe|unsubscribe owner folder user|group <rights>
* First argument is the action among *get*, *add*, *remove*, *subscribe* and *unsubscribe*.
* Second argument is the username of the folder's owner.
* Third argument is the name of the folder.
* Fourth argument is the user whom to manage its acl. It also can be _ALL_, _anonymous_ and _<defaults>_.
* Fifth argument, only needed with *add* action, is the rights to set for the user.
The actions:
* *get* will print out the folder's rights of the user or nothing if the user is not found or doesn't have any rights.
Example:
----
sogo-tool manage-acl get sogo-tests1 Calendar/5E1F-653FC400-1-38155940 sogo-tests2
----
Result:
----
Rights for sogo-tests2 ["PublicModifier", "ConfidentialModifier", "PrivateModifier", "ObjectCreator", "ObjectEraser"]
----
* *add* will add the given rights to the user for the given folder. the value right is a json string of an array with each right to set.
Be Careful as there is no check for the rights already set. It could be better to first remove them, then add them.
The rights for Address Book are:
* _ObjectCreator_: can create cards (contact of list)
* _ObjectEditor_: can modify cards
* _ObjectViewer_: can view cards
* _ObjectEraser_: can delete cards
The rights for Calendar are:
* _ObjectCreator_: can create event or task
* _ObjectEraser_: can delete event or task
* _<type>_ can be _Public_, _Confidential_ or _Private_
* _<type>Viewer_: can view the whole events (ex: PrivateViewer)
* _<type>DAndTViewer_: can only view the date and time of events
* _<type>Modifier_: can view and edit the events
* _<type>Responder_: can view the events
Example:
----
sogo-tool manage-acl add sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2 '["ObjectViewer", "ObjectEraser"]'
----
* *remove* all user's rights to the folder.
Example:
----
sogo-tool manage-acl remove sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
----
* *subscribe* the user to the folder.
Example:
----
sogo-tool manage-acl subscribe sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
----
* *unsubscribe* the user to the folder.
Example:
----
sogo-tool manage-acl unsubscribe sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
----
sogo-tool manage-eas
~~~~~~~~~~~~~~~~~~~~
Manage EAS folders
sogo-tool manage-eas listdevices|listfolders|resetdevice|resetfolder|mergevcard|mergevevent user <deviceId | folderId> <YES | NO>
* First argument is the action among *listdevices*, *listfolders*, *resetdevice*, *resetfolder*, *mergevcard* and *mergevevent*.
* Second argument is the *user* whom to perform the action.
* Third argument is the *deviceId* of, if the action is *resetFolder*, the *folderId*. No need of this argument if the action is *listdevices*
* Fourth argument, only use with *mergevcard* and *mergevevent* is either YES to merge and *NO* to un-merge.
The actions:
* *listdevices*: list the devices belonging to user.
* *listfolders*: list all folders of deviceId for user.
* *resetdevice*: force deviceId of user to resync everything.
* *resetfolder*: force folderId of user to resync everything.
* *mergevcard*: merge/un-merge all addressbooks into one for deviceId of user.
* *mergevevent*: merge/un-merge all calendars into one for deviceId of user.
Examples:
----
sogo-tool manage-eas listdevices janedoe
sogo-tool manage-eas listfolders janedoe androidc316986417
sogo-tool manage-eas resetdevice janedoe androidc316986417
sogo-tool manage-eas resetfolder janedow androidc316986417 folderlala-dada-sasa_7a13_1a2386e0_e
sogo-tool manage-eas mergevcard janedow androidc316986417 YES
sogo-tool manage-eas mergevevent janedow androidc316986417 YES
----
sogo-tool remove
~~~~~~~~~~~~~~~~
Remove all folders (Calendar and Address Book) and Preference settings of a user. The personal Calendar and Address Book
will stay but be emptied of all entries. The Preferences will go back to defaults values as for a new user.
sogo-tool remove user1 [user2]
* Arguments one user or several space-separated.
* You can add -v after sogo*tool to list all removed folders
Example:
----
sogo-tool remove user1
sogo-tool -v remove user2
----
Output example with -v options:
----
Deleting /Users/user2/Calendar/B088-65363400-3-2B9DF0C0
Deleting /Users/user2/Calendar/personal
Deleting /Users/user2/Contacts/B087-65363380-5-374DA380
Deleting /Users/user2/Contacts/B087-65363400-7-374DA380
Deleting /Users/user2/Contacts/personal
----
sogo-tool remove-doubles
~~~~~~~~~~~~~~~~~~~~~~~~
remove duplicate contacts from the specified user addressbook
sogo-tool remove-doubles USER FOLDER
* *USER* is the name of the user to perform the removal
* *FOLDER* is the name of the folder to clean from duplicates
Two contacts are considered duplicates when they have the same mails or display name. When two or more contacts
are duplicates, each one will get a score. The ones with the highest score will be kept and the others
will be discarded. If two records have the same score, the first one to have reach it will be kept.
The scores are distributed as such:
* Record which has been the last modified: +1
* Record has the most content: +2
* Record has the most quick field set: +3
* Record is in a contact list: +6
Example:
----
sogo-tool remove-doubles user1 personal
sogo-tool remove-doubles user2 489-65376E80-1-2D2BA000
----
sogo-tool rename-user
~~~~~~~~~~~~~~~~~~~~~
Update records pertaining to a user after a change of user id. Will change all folders path, subscriptions from others users,
all mention of user id in database.
sogo-tool rename-user fromuserid touserid
* *fromuserid* Previous user id
* *touserid* New user id
If the new user id already exist, the command will output a message and do nothing.
**WARNING** This command only change database of sogo, if you use ldap or others databases they will still keep the old id.
Example:
----
sogo-tool rename-user old_username new_username
----
sogo-tool truncate-calendar
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Remove old calendar entries from the specified user calendar.
sogo-tool truncate-calendar [-r] USER FOLDER DATE
* *-r* optional, to also delete recurrent events that have occurrence after *DATE*
* *USER* is the name of the owner of the calendar
* *FOLDER* is the name of the calendar folder to clean up
* *DATE* UTC datetime, event older than this date will be removed
Without *-r*, only reccurrent events which all occurrences are older than *DATE* will be removed.
With *-r*, event the if there are occurrences after *DATE*, the recurrent event will be removed.
*DATE* can take the value `date +%FT%T` which is the current time
Example:
----
sogo-tool truncate-calendar sogo-tests1 personal 2023-10-25T00:00:00
sogo-tool truncate-calendar -r sogo-tests2 5E38-6538BE80-5-AFF8310 2022-01-01T15:30:00
sogo-tool truncate-calendar -r sogo-tests2 personal `date +%FT%T` #will delete all event older than now
----
Result:
----
No record to remove. All records kept.
----
----
Removing 1 records...
Removed 1 records.
----
sogo-tool update-autoreply
~~~~~~~~~~~~~~~~~~~~~~~~~~
_This command is only useful if your sieve server doesn't have the capabilities *date* or *relational*_
In that case this command will check vacation's setting of all the users. If vacation is enabled/disabled,
the starting and ending date, the body and others parameters. If needed, the command
will write the sieve script accordingly.
sogo-tool update-autoreply -p credentialFile
* *-p- The credential file, a simple one-line file that contains "username:password" of an admin account of your imap/sieve server.
Example:
----
sogo-tool update-autoreply -p /var/sogo/cred
----
[[sogo-tool-update-secret]]
sogo-tool update-secret
~~~~~~~~~~~~~~~~~~~~~~~
_New in 5.10_
Please read this section before <<Secret-for-sensitive-data, Secret for sensitive data>>
This command will encrypt/decrypt sensitive data in your database. For now it only affects the IMAP's passwords of auxiliary account.
A secret is a 32 chars utf-8 string (256 bits). Be careful, the secret use here must match the secret of _SOGoSecretValue_.
sogo-tool update-secret -n newSecret -o oldSecret
If your data are still plain and you want to encrypt them, use:
----
sogo-tool update-secret -n myNewSecret
----
If your data are already encrypted with 'oldSecret' but you want to encrypt them with a new secret value 'myNewSecret':
----
sogo-tool update-secret -n myNewSecret -o oldSecret
----
If your data are already encrypted with 'oldSecret' but you want to decrypt them to plain data:
----
sogo-tool update-secret -o oldSecret
----
sogo-tool user-preferences
~~~~~~~~~~~~~~~~~~~~~~~~~~
Get, set or unset user defaults / settings in the database.
_Settings_ stores parameters for user's calendar, mail and contacts. It can be graphic
as month view or week view for calendar but it also stores subscription, delegation...
It also stores the private Salt for TOTP and the parameter ForceResetPassword to force the
user to change password.
_Defaults_ stores all parameters that can be found in Preferences panel. So it goes from default language to
autoreply to many others options.
user-preferences get|set|unset defaults|settings user key [value|-f filename] [-p credentialFile]
* First argument is the action *get*, *set* or *unset*
* Second argument is parameter type *settings* or *defaults*
* Third argument *user* is the name of the user where to make the action
* Fourth argument *key* is the name of the parameters where to make the action
* If the action is *set*, you should provide either *value* as fifth argument or a file with the value inside with *-f* filename/path
* If the action is *set* or *unset* and the *key* concerns a sieve script (filter, vacation, forward...), you
should provide a credential file, a one-line file that contains "username:password" of an admin account of your imap/sieve server.
As there is a lot of parameters, this documentation will not go into details for each one. To know what are
the key names and their value you should got to your database in table defined by _SOGoProfileURL_ in your sogo.conf.
Here, for each row (user) you will find c_defaults and c_settings which are json with the keys. However, if
a parameter has never been set, it won't appears in those json. The clean way to know the missing keys is to
set it up in one of your dummy/dev/test account then see the values in _SOGoProfileURL_. Be careful, a value
can be a json itself, only the primary key can be get/set/unset.
Example with forwarding, *get* action:
----
sogo-tool user-preferences get defaults user1 Forward
----
If forward has never been set the result will be:
----
Value for key "Forward" not found in defaults
----
Else it will be
----
{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":1}
----
*unset* action:
----
sogo-tool user-preferences unset defaults user1 Forward -p /etc/sogo/cred
----
*set* action:
----
sogo-tool user-preferences set defaults user1 Forward '{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":0}' -p cred
----
or create a json file which contains _{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":0}_ then:
----
sogo-tool user-preferences set defaults user1 Forward -f /path/filename -p cred
----
Upgrading
---------
@@ -3258,6 +3998,18 @@ current version of SOGo from the previous release.
[cols="100a"]
|=======================================================================
h|5.11
|Parameters `SOGoGlobalAddressBookFirstEntries` and `SOGoGlobalAddressBookFirstEntriesCount` has been removed. Please use `listRequiresDot` and `globalAddressBookFirstEntriesCount` instead. Signature are now between a div tag to avoid CKEditor changing the content - set `SOGoForceRawHtmlSignature` to `NO` to leave signature (https://bugs.sogo.nu/view.php?id=5920).
h|5.9.0
|Run the shell script `sql-update-5.8.4_to_5.9.0.sh` (if you are using MySQL). This will change the `c_defaults` to `MEDIUMTEXT`.
For mac Apple's Calendar users who re-create their calendar in 5.8.2, the account must be removed and re-added (https://bugs.sogo.nu/view.php?id=5639#c16901). This can be achived in `` / `System Settings` / `Internet Accounts`.
h|5.8.2
|Changes in Mac OS X Ventura 13.3. For mac Apple's Calendar users, the account must be removed and re-added (https://bugs.sogo.nu/view.php?id=5639#c16901). This can be achived in `` / `System Settings` / `Internet Accounts`.
h|5.8.1
|New options `SOGoSMTPMasterUserEnabled`, `SOGoSMTPMasterUserUsername` and `SOGoSMTPMasterUserPassword` has been added. Those parameters replace the `-p` option for sogo-ealarms-notify.
@@ -22,7 +22,7 @@ devices (iPhone, iPod touch, and iPad).
The instructions are based on version {release_version} of SOGo.
The latest version of this guide is available at
https://sogo.nu/downloads/documentation.html.
https://www.sogo.nu/support.html#/documentation.
Introduction
------------
@@ -22,7 +22,7 @@ Guide_ for more information on installing and configuring SOGo.
The instructions are based on version {release_version} of SOGo.
The latest version of this guide is available
at https://sogo.nu/downloads/documentation.html.
at https://www.sogo.nu/support.html#/documentation.
Introduction
------------
+15 -4
View File
@@ -314,6 +314,9 @@ static BOOL debugLeaks;
{
fm = [GCSFolderManager defaultFolderManager];
// Create the sessions table
[[fm adminFolder] createFolderIfNotExists];
// Create the sessions table
[[fm sessionsFolder] createFolderIfNotExists];
@@ -349,8 +352,10 @@ static BOOL debugLeaks;
{
if ([[context request] handledByDefaultHandler])
authenticator = [SOGoWebAuthenticator sharedSOGoWebAuthenticator];
else
else {
authenticator = [SOGoDAVAuthenticator sharedSOGoDAVAuthenticator];
}
}
return authenticator;
@@ -363,10 +368,16 @@ static BOOL debugLeaks;
{
SOGoUser *user;
id userFolder;
NSData *decodedLogin;
NSString *login;
WORequest *request;
user = [SOGoUser userWithLogin: _key roles: nil];
request = [_ctx request];
login = [SOGoUser getDecryptedUsernameIfNeeded: _key request: request];
user = [SOGoUser userWithLogin: login roles: nil];
if (user)
userFolder = [$(@"SOGoUserFolder") objectWithName: _key
userFolder = [$(@"SOGoUserFolder") objectWithName: login
inContainer: self];
else
userFolder = nil;
@@ -472,7 +483,7 @@ static BOOL debugLeaks;
- (void) checkIfDaemonHasToBeShutdown
{
unsigned int vmem;
unsigned long long vmem;
if (vMemSizeLimit > 0)
{
+10 -1
View File
@@ -48,7 +48,16 @@ main (int argc, char **argv, char **env)
rc = 0;
sd = [SOGoSystemDefaults sharedSystemDefaults];
[NSTimeZone setDefaultTimeZone: [sd timeZone]];
WOWatchDogApplicationMain (@"SOGo", argc, (void *) argv);
//Check if sogo secret is set and correct
if([sd isSogoSecretSet] && ![sd sogoSecretValue])
{
rc =-1;
NSLog (@"Sogo secret is not correctly set");
}
else
{
WOWatchDogApplicationMain (@"SOGo", argc, (void *) argv);
}
}
else
{
+4 -3
View File
@@ -12,16 +12,16 @@ There are multiple ways you can contribute to the project
## Source Code
You can browse the lastest version of the source code online from Inverse's github repository:
You can browse the lastest version of the source code online from Alinto's github repository:
* [https://github.com/Alinto/sogo](https://github.com/Alinto/sogo)
To compile SOGo, you first need to obtain the source code of both SOGo and SOPE. The source code of SOPE and SOGo can be obtained from Inverse's github repositories:
To compile SOGo, you first need to obtain the source code of both SOGo and SOPE. The source code of SOPE and SOGo can be obtained from Alinto's github repositories:
* [https://github.com/Alinto/sope/archive/master.zip](https://github.com/Alinto/sope/archive/master.zip)
* [https://github.com/Alinto/sogo/archive/master.zip](https://github.com/Alinto/sogo/archive/master.zip)
The source code of the SOGo Connector extension for Thunderbird 78+ can be obtained from Inverse's github repository:
The source code of the SOGo Connector extension for Thunderbird 78+ can be obtained from Alinto's github repository:
* [https://github.com/Alinto/sogo-connector](https://github.com/Alinto/sogo-connector)
@@ -46,6 +46,7 @@ SOGo and its associated components are available in various languages. The follo
* [nl] Dutch - Roel van Os
* [fi] Finnish - Kari Salmu
* [fr] French - [Alinto](https://www.alinto.com)
* [gl] Galician - Simon Lang
* [de] German - Alexander Greiner-Baer
* [he] Hebrew - Raz Aidlitz
* [hu] Hungarian - Sándor Kuti
+53
View File
@@ -0,0 +1,53 @@
/* GCSAdminFolder.h - this file is part of $PROJECT_NAME_HERE$
*
* Copyright (C) 2023 Alinto
*
* This file is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#ifndef GCSALARMSFOLDER_H
#define GCSALARMSFOLDER_H
@class NSCalendarDate;
@class NSException;
@class NSNumber;
@class NSString;
@class GCSFolderManager;
@interface GCSAdminFolder : NSObject
{
GCSFolderManager *folderManager;
}
+ (id)adminFolderWithFolderManager:(GCSFolderManager *)newFolderManager;
- (void) setFolderManager: (GCSFolderManager *) newFolderManager;
/* operations */
- (NSString *)getMotd;
- (void) createFolderIfNotExists;
- (BOOL) canConnectStore;
- (NSException *)writeMotd:(NSString *)motd;
- (NSException *)deleteMotd;
@end
#endif /* GCSALARMSFOLDER_H */
+347
View File
@@ -0,0 +1,347 @@
/* GCSAdminFolder.m - this file is part of SOGo
*
* Copyright (C) 2023 Alinto
*
* This file is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#import <NGExtensions/NSObject+Logs.h>
#import <NGExtensions/NSNull+misc.h>
#import <GDLAccess/EOAdaptorContext.h>
#import <GDLAccess/EOAttribute.h>
#import <GDLAccess/EOEntity.h>
#import <GDLAccess/EOSQLQualifier.h>
#import "EOQualifier+GCS.h"
#import "GCSChannelManager.h"
#import "GCSFolderManager.h"
#import "GCSSpecialQueries.h"
#import "NSURL+GCS.h"
#import "GCSAdminFolder.h"
static NSString *adminFolderURLString = nil;
#warning GCSAdminFolder should share a common ancestor with GCSFolder
@implementation GCSAdminFolder
+ (void) initialize
{
NSUserDefaults *ud;
if (!adminFolderURLString)
{
ud = [NSUserDefaults standardUserDefaults];
ASSIGN (adminFolderURLString,
[ud stringForKey: @"OCSAdminURL"]);
}
}
+ (id) adminFolderWithFolderManager: (GCSFolderManager *) newFolderManager
{
GCSAlarmsFolder *newFolder;
if (adminFolderURLString)
{
newFolder = [self new];
[newFolder autorelease];
[newFolder setFolderManager: newFolderManager];
}
else
{
[self errorWithFormat: @"'OCSAdminURL' is not set"];
newFolder = nil;
}
return newFolder;
}
- (void) setFolderManager: (GCSFolderManager *) newFolderManager
{
ASSIGN (folderManager, newFolderManager);
}
/* accessors */
- (NSURL *) _location
{
NSURL *location;
if (adminFolderURLString)
location = [NSURL URLWithString: adminFolderURLString];
else
{
[self warnWithFormat: @"'OCSAdminURL' is not set"];
location = nil;
}
return location;
}
- (GCSChannelManager *) _channelManager
{
return [folderManager channelManager];
}
- (NSString *) _storeTableName
{
return [[self _location] gcsTableName];
}
- (EOEntity *) _storeTableEntityForChannel: (EOAdaptorChannel *) tc
{
static EOEntity *entity = nil;
EOAttribute *attribute;
NSString *tableName;
NSString *columns[] = { @"c_key", @"c_content", nil };
NSString **column;
NSMutableArray *keys;
NSDictionary *types;
if (!entity)
{
entity = [EOEntity new];
tableName = [self _storeTableName];
[entity setName: tableName];
[entity setExternalName: tableName];
types = [[tc specialQueries] adminAttributeTypes];
column = columns;
while (*column)
{
attribute = [EOAttribute new];
[attribute setName: *column];
[attribute setColumnName: *column];
[attribute setExternalType: [types objectForKey: *column]];
[entity addAttribute: attribute];
[attribute release];
column++;
}
keys = [NSMutableArray arrayWithCapacity: 1];
[keys addObject: [entity attributeNamed: @"c_key"]];
[entity setPrimaryKeyAttributes: keys];
keys = [NSMutableArray arrayWithCapacity: 1];
[keys addObject: [entity attributeNamed: @"c_content"]];
[entity setClassProperties: keys];
[entity setAttributesUsedForLocking: [NSArray array]];
}
return entity;
}
/* connection */
- (EOAdaptorChannel *) _acquireStoreChannel
{
return [[self _channelManager] acquireOpenChannelForURL: [self _location]];
}
- (void) _releaseChannel: (EOAdaptorChannel *) _channel
{
[[self _channelManager] releaseChannel:_channel immediately: YES];
}
- (BOOL) canConnectStore
{
return [[self _channelManager] canConnect:[self _location]];
}
- (void) createFolderIfNotExists
{
EOAdaptorChannel *tc;
NSString *sql, *tableName;
GCSSpecialQueries *queries;
tc = [self _acquireStoreChannel];
tableName = [self _storeTableName];
queries = [tc specialQueries];
sql = [NSString stringWithFormat: @"SELECT 1 FROM %@ WHERE 1 = 2",
[self _storeTableName]];
if ([tc evaluateExpressionX: sql])
{
sql = [queries createAdminFolderWithName: tableName];
if (![tc evaluateExpressionX: sql])
[self logWithFormat:
@"admin folder table '%@' successfully created!",
tableName];
}
else
[tc cancelFetch];
[self _releaseChannel: tc];
}
/* operations */
/* table has the following fields:
c_key VARCHAR(255) NOT NULL
c_content MEDIUMTEXT NOT NULL
*/
- (NSDictionary *) recordForEntryWithKey: (NSString *) key
{
EOAdaptorChannel *tc;
EOAdaptorContext *context;
NSException *error;
NSArray *attrs;
NSDictionary *record;
EOEntity *entity;
EOSQLQualifier *qualifier;
record = nil;
tc = [self _acquireStoreChannel];
if (tc)
{
context = [tc adaptorContext];
entity = [self _storeTableEntityForChannel: tc];
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
qualifierFormat:
@"c_key='%@'",
key];
[qualifier autorelease];
[context beginTransaction];
error = [tc selectAttributesX: [entity attributesUsedForFetch]
describedByQualifier: qualifier
fetchOrder: nil
lock: NO];
if (error)
[self errorWithFormat:@"%s: cannot execute fetch: %@",
__PRETTY_FUNCTION__, error];
else
{
attrs = [tc describeResults: NO];
record = [tc fetchAttributes: attrs withZone: NULL];
[tc cancelFetch];
}
[context rollbackTransaction];
[self _releaseChannel: tc];
}
return record;
}
- (NSString *) getMotd {
NSDictionary *r;
r = [self recordForEntryWithKey: @"motd"];
if (r && [r objectForKey:@"c_content"]) {
return [r objectForKey:@"c_content"];
}
return nil;
}
- (NSDictionary *) _newRecordWithKey: (NSString *) key
content: (NSString *) content
{
return [NSDictionary dictionaryWithObjectsAndKeys: key, @"c_key",
content, @"c_content",
nil];
}
- (NSException *) writeMotd: (NSString *)motd
{
NSDictionary *record, *newRecord;
NSException *error;
EOAdaptorChannel *tc;
EOAdaptorContext *context;
EOEntity *entity;
EOSQLQualifier *qualifier;
error = nil;
tc = [self _acquireStoreChannel];
if (tc)
{
context = [tc adaptorContext];
newRecord = [self _newRecordWithKey: @"motd" content: motd];
record = [self recordForEntryWithKey: @"motd"];
entity = [self _storeTableEntityForChannel: tc];
[context beginTransaction];
if (record)
{
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
qualifierFormat:
@"c_key='motd'"];
[qualifier autorelease];
error = [tc updateRowX: newRecord describedByQualifier: qualifier];
}
else
error = [tc insertRowX: newRecord forEntity: entity];
if (error)
{
[context rollbackTransaction];
[self errorWithFormat:@"%s: cannot write record: %@",
__PRETTY_FUNCTION__, error];
}
else
[context commitTransaction];
[self _releaseChannel: tc];
}
return error;
}
- (NSException *) deleteRecordForKey: (NSString *) key
{
EOAdaptorChannel *tc;
EOAdaptorContext *context;
EOEntity *entity;
EOSQLQualifier *qualifier;
NSException *error;
error = nil;
tc = [self _acquireStoreChannel];
if (tc)
{
context = [tc adaptorContext];
entity = [self _storeTableEntityForChannel: tc];
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
qualifierFormat:
@"c_key='%@'",
key];
[qualifier autorelease];
[context beginTransaction];
error = [tc deleteRowsDescribedByQualifierX: qualifier];
if (error)
{
[context rollbackTransaction];
[self errorWithFormat:@"%s: cannot delete record: %@",
__PRETTY_FUNCTION__, error];
}
else
[context commitTransaction];
[self _releaseChannel: tc];
}
return error;
}
- (NSException *) deleteMotd
{
return [self deleteRecordForKey:@"motd"];
}
@end
+1 -1
View File
@@ -202,7 +202,7 @@ static NSString *alarmsFolderURLString = nil;
/* table has the following fields:
c_path VARCHAR(255) NOT NULL
c_name VARCHAR(255) NOT NULLo
c_name VARCHAR(255) NOT NULL
c_uid VARCHAR(255) NOT NULL
c_recurrence_id INT NULL
c_alarm_number INT NOT NULL
+8 -1
View File
@@ -1145,9 +1145,16 @@ andAttribute: (EOAttribute *)_attribute
{
// Update c_startdate for appointments
if ([theComponent respondsToSelector:@selector(startDate)]) {
NSTimeInterval t;
startDate = [theComponent startDate];
t = [startDate timeIntervalSince1970];
if (startDate) {
[quickRow setObject:[NSNumber numberWithUnsignedInt:[startDate timeIntervalSince1970]] forKey:@"c_startdate"];
if (t < (long long)INT_MAX && t > (long long)INT_MIN) {
[quickRow setObject:[NSNumber numberWithInt: t] forKey:@"c_startdate"];
} else {
[self errorWithFormat:@"Unexpected value. Invalid start date for timestamp %f", t];
[quickRow setObject:[NSNumber numberWithInt: 0] forKey:@"c_startdate"];
}
}
}
+4 -1
View File
@@ -31,7 +31,7 @@
*/
@class NSString, NSArray, NSURL, NSDictionary, NSException;
@class GCSChannelManager, GCSAlarmsFolder, GCSFolder, GCSFolderType, GCSSessionsFolder;
@class GCSChannelManager, GCSAlarmsFolder, GCSAdminFolder, GCSFolder, GCSFolderType, GCSSessionsFolder;
@interface GCSFolderManager : NSObject
{
@@ -89,6 +89,9 @@
/* sessions */
- (GCSSessionsFolder *)sessionsFolder;
/* admin */
- (GCSAdminFolder *)adminFolder;
/* folder types */
- (GCSFolderType *)folderTypeWithName:(NSString *)_name;
+7
View File
@@ -37,6 +37,7 @@
#import "GCSChannelManager.h"
#import "EOAdaptorChannel+GCS.h"
#import "GCSAlarmsFolder.h"
#import "GCSAdminFolder.h"
#import "GCSFolder.h"
#import "GCSFolderType.h"
#import "GCSSessionsFolder.h"
@@ -497,6 +498,12 @@ static BOOL _singleStoreMode = NO;
return [GCSSessionsFolder sessionsFolderWithFolderManager: self];
}
/* admin */
- (GCSAdminFolder *) adminFolder
{
return [GCSAdminFolder adminFolderWithFolderManager: self];
}
- (NSString *)generateSQLWhereForInternalNames:(NSArray *)_names
exactMatch:(BOOL)_beExact orDirectSubfolderMatch:(BOOL)_directSubs
{
+5 -2
View File
@@ -39,8 +39,11 @@
- (NSString *) createSessionsFolderWithName: (NSString *) tableName;
- (NSDictionary *) sessionsAttributeTypes;
- (NSString *) updateCPathInFolderInfo: (NSString *) tableName
withCPath2: (NSString *) c_path2;
- (NSString *)createAdminFolderWithName:(NSString *)tableName;
- (NSDictionary *)adminAttributeTypes;
- (NSString *) updateCPathInFolderInfo:(NSString *)tableName
withCPath2:(NSString *)c_path2;
@end
+86
View File
@@ -81,6 +81,20 @@
return nil;
}
- (NSString *) createAdminFolderWithName: (NSString *) tableName
{
[self subclassResponsibility: _cmd];
return nil;
}
- (NSDictionary *) adminAttributeTypes
{
[self subclassResponsibility: _cmd];
return nil;
}
- (NSString *) createFolderTableWithName: (NSString *) tableName
{
[self subclassResponsibility: _cmd];
@@ -157,6 +171,30 @@
return types;
}
- (NSString *) createAdminFolderWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
= (@"CREATE TABLE %@ ("
@" c_key VARCHAR(255) NOT NULL,"
@" c_content TEXT NOT NULL)");
return [NSString stringWithFormat: sqlFolderFormat, tableName];
}
- (NSDictionary *) adminAttributeTypes
{
static NSMutableDictionary *types = nil;
if (!types)
{
types = [NSMutableDictionary new];
[types setObject: @"varchar" forKey: @"c_key"];
[types setObject: @"varchar" forKey: @"c_content"];
}
return types;
}
- (NSString *) createFolderTableWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
@@ -262,6 +300,30 @@
return types;
}
- (NSString *) createAdminFolderWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
= (@"CREATE TABLE %@ ("
@" c_key VARCHAR(255) NOT NULL,"
@" c_content MEDIUMTEXT NOT NULL)");
return [NSString stringWithFormat: sqlFolderFormat, tableName];
}
- (NSDictionary *) adminAttributeTypes
{
static NSMutableDictionary *types = nil;
if (!types)
{
types = [NSMutableDictionary new];
[types setObject: @"varchar" forKey: @"c_key"];
[types setObject: @"varchar" forKey: @"c_content"];
}
return types;
}
- (NSString *) createFolderTableWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
@@ -367,6 +429,30 @@
return types;
}
- (NSString *) createAdminFolderWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
= (@"CREATE TABLE %@ ("
@" c_key VARCHAR2(255) NOT NULL,"
@" c_content VARCHAR2(65535) NOT NULL)");
return [NSString stringWithFormat: sqlFolderFormat, tableName];
}
- (NSDictionary *) adminAttributeTypes
{
static NSMutableDictionary *types = nil;
if (!types)
{
types = [NSMutableDictionary new];
[types setObject: @"varchar2" forKey: @"c_key"];
[types setObject: @"varchar2" forKey: @"c_content"];
}
return types;
}
- (NSString *) createFolderTableWithName: (NSString *) tableName
{
static NSString *sqlFolderFormat
+2
View File
@@ -25,6 +25,7 @@ libGDLContentStore_HEADER_FILES += \
EOAdaptorChannel+GCS.h \
\
GCSAlarmsFolder.h \
GCSAdminFolder.h \
GCSContext.h \
GCSFieldInfo.h \
GCSFolder.h \
@@ -41,6 +42,7 @@ libGDLContentStore_OBJC_FILES += \
EOQualifier+GCS.m \
\
GCSAlarmsFolder.m \
GCSAdminFolder.m \
GCSContext.m \
GCSFieldInfo.m \
GCSFolder.m \
+13 -13
View File
@@ -159,28 +159,28 @@ static NGCardsSaxHandler *sax = nil;
CardElement *newChild;
if (aChild)
{
childTag = [aChild tag];
newChild = nil;
mappedClass = [self classForTag: [childTag uppercaseString]];
if (mappedClass)
{
if (![aChild isKindOfClass: mappedClass])
{
childTag = [aChild tag];
newChild = nil;
mappedClass = [self classForTag: [childTag uppercaseString]];
if (mappedClass)
{
if (![aChild isKindOfClass: mappedClass])
{
//NSLog (@"warning: new child to entity '%@': '%@' converted to '%@'",
// tag, childTag, NSStringFromClass(mappedClass));
newChild = [aChild elementWithClass: mappedClass];
}
}
}
// else
// NSLog (@"warning: no mapped class for tag '%@'",
// childTag);
if (!newChild)
newChild = aChild;
[children addObject: newChild];
[newChild setParent: self];
}
if (!newChild)
newChild = aChild;
[children addObject: newChild];
[newChild setParent: self];
}
}
- (CardElement *) uniqueChildWithTag: (NSString *) aTag
+17 -9
View File
@@ -45,19 +45,27 @@
[foldedString appendString: self];
else
{
subStringRange = NSMakeRange (0, 75);
[foldedString appendFormat: @"%@\r\n",
[self substringWithRange: subStringRange]];
subStringRange = NSMakeRange (75, 74);
//Check if the 75th chars is a 2*16bits chars, in this case, cut one char before
unichar c = [self characterAtIndex: 74];
int substringCut;
if (c >= 0xD800 && c <= 0xDBFF)
substringCut = 74;
else
substringCut = 75;
subStringRange = NSMakeRange (0, substringCut);
[foldedString appendFormat: @"%@\r\n", [self substringWithRange: subStringRange]];
subStringRange = NSMakeRange (substringCut, 74);
while ((length - subStringRange.location) > 75)
{
[foldedString appendFormat: @" %@\r\n",
[self substringWithRange: subStringRange]];
subStringRange.location += 74;
c = [self characterAtIndex: (subStringRange.location+subStringRange.length-1)];
if (c >= 0xD800 && c <= 0xDBFF)
subStringRange.length--;
[foldedString appendFormat: @" %@\r\n", [self substringWithRange: subStringRange]];
subStringRange.location += subStringRange.length;
}
subStringRange.length = length - subStringRange.location;
[foldedString appendFormat: @" %@",
[self substringWithRange: subStringRange]];
[foldedString appendFormat: @" %@", [self substringWithRange: subStringRange]];
}
return foldedString;
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Abidjan
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Abidjan
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Algiers
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Algiers
BEGIN:STANDARD
TZNAME:CET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Bissau
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Bissau
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Cairo
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Cairo
BEGIN:DAYLIGHT
TZNAME:EEST
+2 -2
View File
@@ -1,10 +1,10 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Casablanca
TZUNTIL:20870511T020001Z
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Casablanca
BEGIN:STANDARD
TZNAME:+01
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Ceuta
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Ceuta
BEGIN:DAYLIGHT
TZNAME:CEST
+2 -2
View File
@@ -1,10 +1,10 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/El_Aaiun
TZUNTIL:20870511T020001Z
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/El_Aaiun
BEGIN:STANDARD
TZNAME:+01
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Johannesburg
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Johannesburg
BEGIN:STANDARD
TZNAME:SAST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Juba
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Juba
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Khartoum
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Khartoum
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Lagos
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Lagos
BEGIN:STANDARD
TZNAME:WAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Maputo
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Maputo
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Monrovia
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Monrovia
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Nairobi
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Nairobi
BEGIN:STANDARD
TZNAME:EAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Ndjamena
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Ndjamena
BEGIN:STANDARD
TZNAME:WAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Sao_Tome
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Sao_Tome
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Tripoli
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Tripoli
BEGIN:STANDARD
TZNAME:EET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Tunis
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Tunis
BEGIN:STANDARD
TZNAME:CET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Windhoek
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Windhoek
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Adak
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Adak
BEGIN:DAYLIGHT
TZNAME:HDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Anchorage
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Anchorage
BEGIN:DAYLIGHT
TZNAME:AKDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Araguaina
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Araguaina
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Buenos_Aires
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Buenos_Aires
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Catamarca
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Catamarca
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Cordoba
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Cordoba
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Jujuy
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Jujuy
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/La_Rioja
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/La_Rioja
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Mendoza
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Mendoza
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Rio_Gallegos
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Rio_Gallegos
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Salta
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Salta
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/San_Juan
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/San_Juan
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/San_Luis
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/San_Luis
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Tucuman
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Tucuman
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Ushuaia
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Ushuaia
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Asuncion
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Asuncion
BEGIN:DAYLIGHT
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bahia
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bahia
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bahia_Banderas
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bahia_Banderas
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Barbados
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Barbados
BEGIN:STANDARD
TZNAME:AST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Belem
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Belem
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Belize
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Belize
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Boa_Vista
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Boa_Vista
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bogota
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bogota
BEGIN:STANDARD
TZNAME:-05
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Boise
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Boise
BEGIN:DAYLIGHT
TZNAME:MDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cambridge_Bay
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cambridge_Bay
BEGIN:DAYLIGHT
TZNAME:MDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Campo_Grande
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Campo_Grande
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cancun
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cancun
BEGIN:STANDARD
TZNAME:EST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Caracas
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Caracas
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cayenne
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cayenne
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Chicago
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Chicago
BEGIN:DAYLIGHT
TZNAME:CDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Chihuahua
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Chihuahua
BEGIN:STANDARD
TZNAME:CST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Ciudad_Juarez
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Ciudad_Juarez
BEGIN:DAYLIGHT
TZNAME:MDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Costa_Rica
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Costa_Rica
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cuiaba
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cuiaba
BEGIN:STANDARD
TZNAME:-04
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Danmarkshavn
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Danmarkshavn
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Dawson
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Dawson
BEGIN:STANDARD
TZNAME:MST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Dawson_Creek
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Dawson_Creek
BEGIN:STANDARD
TZNAME:MST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Denver
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Denver
BEGIN:DAYLIGHT
TZNAME:MDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Detroit
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Detroit
BEGIN:DAYLIGHT
TZNAME:EDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Edmonton
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Edmonton
BEGIN:DAYLIGHT
TZNAME:MDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Eirunepe
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Eirunepe
BEGIN:STANDARD
TZNAME:-05
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/El_Salvador
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/El_Salvador
BEGIN:STANDARD
TZNAME:CST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Fort_Nelson
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Fort_Nelson
BEGIN:STANDARD
TZNAME:MST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Fortaleza
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Fortaleza
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Glace_Bay
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Glace_Bay
BEGIN:DAYLIGHT
TZNAME:ADT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Goose_Bay
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Goose_Bay
BEGIN:STANDARD
TZNAME:AST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Grand_Turk
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Grand_Turk
BEGIN:STANDARD
TZNAME:EST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Guatemala
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Guatemala
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Guayaquil
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Guayaquil
BEGIN:STANDARD
TZNAME:-05
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Guyana
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Guyana
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Halifax
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Halifax
BEGIN:DAYLIGHT
TZNAME:ADT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Havana
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Havana
BEGIN:STANDARD
TZNAME:CST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Hermosillo
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Hermosillo
BEGIN:STANDARD
TZNAME:MST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Indiana/Indianapolis
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Indiana/Indianapolis
BEGIN:DAYLIGHT
TZNAME:EDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Indiana/Knox
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Indiana/Knox
BEGIN:DAYLIGHT
TZNAME:CDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2023b//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Indiana/Marengo
LAST-MODIFIED:20230328T070349Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Indiana/Marengo
BEGIN:DAYLIGHT
TZNAME:EDT
Loaded 100 of 1262 files, more files were not shown because too many files have changed in this diff. Show more