Compare commits

...
Author SHA1 Message Date
smizrahi 96252cfd4b Jitsi link integration 2024-07-22 10:50:22 +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
smizrahi 5a825881d9 chore(release): 5.8.1 2023-03-28 09:50:02 +02:00
smizrahi 072ff5ac85 chore(timezones): Update to version 2023b 2023-03-28 09:11:31 +02:00
smizrahi b2873bf5f1 i18n(cy): Update Welsh translations 2023-03-27 19:46:49 +02:00
smizrahi 90b174bda1 i18n(uk): Update Ukrainian translations 2023-03-27 19:46:49 +02:00
smizrahi f87a8557bd i18n(tr_TR): Update TurkishTurkey translations 2023-03-27 19:46:49 +02:00
smizrahi a0d047ad07 i18n(sv): Update Swedish translations 2023-03-27 19:46:49 +02:00
smizrahi 43d925b4ef i18n(es_ES): Update SpanishSpain translations 2023-03-27 19:46:49 +02:00
smizrahi d6a63bd7bf i18n(es_AR): Update SpanishArgentina translations 2023-03-27 19:46:49 +02:00
smizrahi 5a67603816 i18n(sl_SI): Update Slovenian translations 2023-03-27 19:46:49 +02:00
smizrahi d18581514e i18n(sk): Update Slovak translations 2023-03-27 19:46:48 +02:00
smizrahi 1489b7d219 i18n(sr): Update Serbian translations 2023-03-27 19:46:09 +02:00
smizrahi 0d21123def i18n(ro_RO): Update Romanian translations 2023-03-27 19:46:08 +02:00
smizrahi d2a5fd0b2d i18n(pt_BR): Update Portuguese translations 2023-03-27 19:46:08 +02:00
smizrahi 62edb09b9c i18n(pl): Update Polish translations 2023-03-27 19:46:08 +02:00
smizrahi 7d60dbb2c6 i18n(nn_NO): Update NorwegianNynorsk translations 2023-03-27 19:46:08 +02:00
smizrahi f66992cef4 i18n(sr_ME@latin): Update Montenegrin translations 2023-03-27 19:46:08 +02:00
smizrahi deef331029 i18n(mk_MK): Update Macedonian translations 2023-03-27 19:46:08 +02:00
smizrahi dd0d9bd5fe i18n(lt): Update Lithuanian translations 2023-03-27 19:46:08 +02:00
smizrahi b9eacdbe49 i18n(lv): Update Latvian translations 2023-03-27 19:46:08 +02:00
smizrahi d860a3c016 i18n(kk): Update Kazakh translations 2023-03-27 19:46:08 +02:00
smizrahi 44ea7a684e i18n(ja): Update Japanese translations 2023-03-27 19:46:07 +02:00
smizrahi 561ab7e866 i18n(it): Update Italian translations 2023-03-27 19:46:07 +02:00
smizrahi 12c32ef1d2 i18n(id_ID): Update Indonesian translations 2023-03-27 19:46:07 +02:00
smizrahi 7cbef4bdd4 i18n(is): Update Icelandic translations 2023-03-27 19:46:07 +02:00
smizrahi 38ebd5a38f i18n(he): Update Hebrew translations 2023-03-27 19:46:07 +02:00
smizrahi 7b66aa9dad i18n(fi): Update Finnish translations 2023-03-27 19:46:07 +02:00
smizrahi 6c816cba6b i18n(nl): Update Dutch translations 2023-03-27 19:46:07 +02:00
smizrahi 4f7e04d5b4 i18n(cs): Update Czech translations 2023-03-27 19:46:07 +02:00
smizrahi e16f5fa0f9 i18n(hr_HR): Update Croatian translations 2023-03-27 19:46:07 +02:00
smizrahi 245ede949e i18n(zh_TW): Update ChineseTaiwan translations 2023-03-27 19:46:07 +02:00
smizrahi 1344f2a7dd i18n(zh_CN): Update ChineseChina translations 2023-03-27 19:46:06 +02:00
smizrahi 485f40cca4 i18n(ca): Update Catalan translations 2023-03-27 19:46:06 +02:00
smizrahi 982b1ec1f6 i18n(bg_BG): Update Bulgarian translations 2023-03-27 17:53:30 +02:00
smizrahi 28784836c8 i18n(pt_BR): Update Portuguese (Brazil) translations 2023-03-27 17:51:11 +02:00
smizrahi ddf55270a6 i18n(bs_BA): Update Bosnian translations 2023-03-27 17:49:55 +02:00
smizrahi 9192f2b76d i18n(eu): Update Basque translations 2023-03-27 17:49:04 +02:00
smizrahi 3714b147ed i18n(ar): Update Arabic translations 2023-03-27 17:47:21 +02:00
smizrahi ac8aeec83f i18n(ru): Update Russian translations 2023-03-27 17:46:43 +02:00
smizrahi a3c9044b7e i18n(de): Update German translations 2023-03-27 17:42:08 +02:00
smizrahi ecd1344065 i18n(da_DK): Update Danish translations 2023-03-27 17:41:34 +02:00
smizrahi e4534c0bfd i18n(nb_NO): Update Norwegian Bokmål translations 2023-03-27 17:36:33 +02:00
smizrahi cdbe91decf i18n(hu): Update Hungarian translations 2023-03-27 17:34:38 +02:00
smizrahi 3f01de6c8f chore(npm): Update CKEditor to version 4.21.0 2023-03-27 11:27:35 +02:00
smizrahi 65d4c5c480 fix(calendar): Add confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Fixes #5585 2023-03-27 09:38:56 +02:00
smizrahi bb4a88b6df fix(calendar): Add confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Fixes #5585 2023-03-22 19:39:44 +01:00
smizrahi f5ed10b00c fix(mail): Fix images not displayed when forward / reply to a mail. Fixes #3981. Fixes #5715 2023-03-22 16:17:58 +01:00
smizrahi 7ad7f5efa6 fix(ui): Add error message on UI when too many mails are sent in short time. Fix fr translation. Fix documentation 2023-03-21 17:35:45 +01:00
smizrahi e12583eb4e feat(mail): Add punycode (RFC 3492) to encode domain with special characters 2023-03-21 10:27:43 +01:00
smizrahi 39032ac80f feat(mail): Add punycode (RFC 3492) to encode domain with special characters 2023-03-21 10:23:56 +01:00
smizrahi 13178a16f2 feat(mail): Add punycode (RFC 3492) to encode domain with special characters 2023-03-21 10:22:43 +01:00
smizrahi 0a9b3d6adf feat(mail): Add punycode (RFC 3492) to encode domain with special characters 2023-03-21 10:19:32 +01:00
smizrahi abd7fdd385 chore(js/css): update generated files 2023-03-15 17:44:01 +01:00
smizrahi 66c728ca84 fix(packaging): Add MFA to Ubuntu Jammy 2023-03-15 09:55:42 +01:00
smizrahi 64d817ab0d fix(calendar): Add confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Fixes #5585. 2023-03-14 16:20:31 +01:00
WoodySlum 8bd97d1464 Merge pull request #343 from jkanefendt/fix-move-messages-across-mailboxes
Fix moving mails across mailboxes
2023-03-14 08:35:05 +01:00
Johannes Kanefendt 49488efab9 Refactored variable declaration 2023-03-14 08:26:23 +01:00
Johannes Kanefendt a556e742fb fix(mail): Store the Deleted flag in the correct (source) mailbox when moving mails across mailboxes 2023-03-10 15:57:53 +01:00
smizrahi 4dc8ef946d fix(mail): Fix images not displayed when forward / reply to a mail. Fixes #3981 2023-03-07 10:17:02 +01:00
smizrahi 0d2f6d8c2a fix(packaging): Check if there are sh files in usr/share/doc/sogo before applying chmod. Fixes partially #5698 2023-02-27 22:53:25 +01:00
smizrahi 63548a84cf fix(packaging): Specify compression format for dpkg-deb 2023-02-27 22:02:17 +01:00
smizrahi 189144c531 fix(packaging): Specify compression format for dpkg-deb 2023-02-27 18:38:33 +01:00
smizrahi 5049423113 fix(packaging): Specify compression format for dpkg-deb 2023-02-27 18:33:20 +01:00
smizrahi 7ea7572766 fix(packaging): Add usr/share/doc/sogo/ for packaging. Fixes partially #5698 2023-02-27 11:22:39 +01:00
smizrahi 114c98c32d fix(packaging): Add usr/share/doc/sogo/ for packaging. Fixes partially #5698 2023-02-27 10:38:46 +01:00
smizrahi 754f3aa230 test(js): Increase test timeout for CI 2023-02-27 10:29:49 +01:00
smizrahi 02f855059b fix(mail): Fix segfault when TNEF does not get any data. Fixes #4190 2023-02-23 11:58:58 +01:00
smizrahi 53f9449a51 feat(alarms): Add possibility to use SMTP master account for system alarms. Fixes #5565. 2023-02-20 18:53:08 +01:00
smizrahi 7faf4eb2f4 feat(alarms): Add possibility to use SMTP master account for system alarms. Fixes #5565. 2023-02-20 17:23:17 +01:00
smizrahi 1964ef0358 fix(dav): Improve logging. Closes #4190 2023-02-20 10:15:42 +01:00
smizrahi 8001e3f6ab feat(alarms): Add possibility to use SMTP master account for system alarms. Fixes #5565. 2023-02-16 18:51:28 +01:00
smizrahi 2c6f5225d4 i18n(de): Update German translations 2023-02-14 16:43:00 +01:00
smizrahi ffcaf6c433 18n(transifex): Update transifex for new apis 2023-02-14 09:48:41 +01:00
smizrahi b51b695999 18n(transifex): Update transifex for new apis 2023-02-14 09:46:34 +01:00
smizrahi f7b416fac2 18n(fr_FR): Update aboutbox 2023-02-13 11:12:59 +01:00
smizrahi 959a4107d4 18n(en_EN): Update aboutbox 2023-02-13 11:12:59 +01:00
WoodySlum 406bd35875 Merge pull request #341 from Fulguritus/master
fix(UI): Make the login page honor the color theme Fixes #5687
2023-02-13 10:52:41 +01:00
smizrahi ef53f6c809 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-02-01 09:25:39 +01:00
Alex Vogt 607bc08c92 fix(UI): Make the login page honor the color theme
partial solution by specifying the theme and accent color manually

Fixes #5687 (partially)
2023-01-31 19:43:42 +01:00
smizrahi ba0d4a51c0 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-01-31 17:39:00 +01:00
smizrahi 7e357f1bc9 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-01-26 17:12:08 +01:00
smizrahi f15840217b fix(calendar): Fix duplicate event on Apple Calendar when creating a new reccurent event, inviting attendee and changing an occurence 2023-01-18 17:20:30 +01:00
smizrahi a5347c70aa fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-01-17 16:32:53 +01:00
smizrahi 4d7a425428 fix(js): Change grunt-contrib-uglify from 5.0.0 to 5.2.2 2023-01-16 17:23:21 +01:00
smizrahi 04e15b5695 feat(eas): Add SOGoEASDisableUI system parameter to remove EAS options in UI when ActiveSync is not used 2023-01-16 15:31:27 +01:00
WoodySlum c178963bfc Merge pull request #339 from helsinki-systems/fix/too-many-vars
fix(configure): Prevent pulling in unnecessary vars
2023-01-13 08:56:21 +01:00
Janne Heß b223fe0b86 fix(configure): Prevent pulling in unnecessary vars 2023-01-11 18:12:12 +01:00
smizrahi 842fa97d37 fix(authentication): Reduce Cookie user key len to avoid exceeding 4096 bytes. Users in chrome <= 75 could not login due to cookie of 4099 bytes 2023-01-05 15:59:14 +01:00
smizrahi 0bd530ab64 feat(preferences): Improve TOTP - add validation code in preferences before saving to ensure user add qr code in totp application 2023-01-04 17:37:46 +01:00
smizrahi 7d72fe1281 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-01-03 23:33:28 +01:00
smizrahi 86805369a3 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2023-01-03 15:24:30 +01:00
adetk 5e8a4b4034 Merge branch 'Alinto:master' into master 2022-12-24 16:57:31 +06:00
smizrahi a7f3daa33f fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2022-12-13 12:33:58 +01:00
smizrahi 6ee8f764e9 fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2022-12-13 11:08:43 +01:00
smizrahi 435495f007 feat(core): Add SOGoDisableSharing option to disable sharing for mail, contacts and calendar 2022-12-12 12:03:59 +01:00
smizrahi 5d6b40c8cf fix(core(js)): Removed es6 'const' for build issues with grunt 2022-12-12 09:14:23 +01:00
smizrahi 03e6d0012b fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639 2022-12-07 17:57:00 +01:00
smizrahi fe9ae12e46 fix(security): Security fix for WSTG-INPV-02. Fix NSException where tried to modify NSDictionary. Closes #5651. 2022-12-05 11:45:45 +01:00
smizrahi ed9d247f3e chore(release): 5.8.0 2022-11-30 15:50:43 +01:00
smizrahi a010f629f0 fix(security): Security fix for WSTG-INPV-02. Fix NSException where mailIdentities is invalid on init. Closes #5651. 2022-11-30 12:40:52 +01:00
smizrahi 6971ebd2d1 fix(security): Security fix for WSTG-INPV-02. Fix assertion on NSRange 2022-11-29 17:34:34 +01:00
smizrahi b3e43454f9 Update changelog and version 2022-11-29 16:02:54 +01:00
smizrahi 59d4c08950 chore(timezones): Update to version 2022f 2022-11-29 13:37:19 +01:00
smizrahi 0cd7a170a0 i18n(nb_NO): Update Norwegian Bokmål translations 2022-11-29 13:19:39 +01:00
smizrahi 67cf3c0017 chore(npm): Update CKEditor to version 4.20.0 2022-11-29 10:58:38 +01:00
smizrahi 49879efbc6 fix(ui): Change active user name on top left with primary identity 2022-11-23 14:44:07 +01:00
smizrahi 27860648c1 fix(core): Fix NSException when c_content is NULL. Closes #5644. Original fix by @jvdsn. 2022-11-23 14:25:15 +01:00
smizrahi 26b9429396 fix(ui): Change active user name on top left with primary identity 2022-11-23 13:33:59 +01:00
smizrahi d3634747d5 feat(password-recovery): Change secondary email obfuscation 2022-11-23 10:06:43 +01:00
smizrahi b1f84891b0 fix(security): Security fix for WSTG-INPV-02. Add unit test. 2022-11-23 09:34:54 +01:00
smizrahi 48c7375544 perf(mail): Improve IMAP fetch sorting using NSDictionary keys instead of indexOfObject. Code refactoring 2022-11-22 17:48:45 +01:00
smizrahi f5c6fcc350 fix(security): Security fix for WSTG-INPV-02. Fix build issue in ubuntu trusty 2022-11-22 17:37:15 +01:00
smizrahi 58540f15e2 feat(password-recovery): Change when secret question answer is wrong, go back to secret question instead of login 2022-11-22 17:31:59 +01:00
smizrahi c62b043e26 fix(addressbook): Fix NSException on address book where uppercaseString is called on data 2022-11-22 15:12:58 +01:00
smizrahi 96cd1880da i18n(nb_NO): Update Norwegian Bokmål translations 2022-11-22 14:10:50 +01:00
smizrahi 37291facc7 i18n(da_DK): Update Danish translations 2022-11-22 14:10:50 +01:00
WoodySlum (Le Programmeur) c378ffdbba Merge pull request #334 from tfux/5330
fix(eas): ensure correct encoding of attachments(fixes #5330)
2022-11-22 12:19:46 +01:00
smizrahi efac49ae91 fix(security): Security fix for WSTG-INPV-02. Add XSS protection on identity fullName. Fixes #5642. 2022-11-22 10:54:06 +01:00
smizrahi 1e0f5f0089 fix(security): Security fix for WSTG-INPV-02. Add XSS protection on folders and mail title / content 2022-11-22 10:09:41 +01:00
root dff907a158 fix(eas) ensure correct encoding of attachments(fixes #5330) 2022-11-21 11:05:33 +01:00
smizrahi dcbfd830d4 fix(security): Security fix for WSTG-INPV-02. Add XSS protection on folders and mail title / content. Fix build issue in ubuntu trusty. 2022-11-18 09:16:40 +01:00
smizrahi 60ec3152e8 perf(mail): Improve IMAP fetch sorting using NSDictionary keys instead of indexOfObject. Code refactoring 2022-11-18 08:58:10 +01:00
smizrahi 38e886a3e0 perf(mail): Improve IMAP fetch sorting using NSDictionary keys instead of indexOfObject. Fix build issue. 2022-11-16 21:59:11 +01:00
smizrahi 40b5c0918a perf(mail): Improve IMAP fetch sorting using NSDictionary keys instead of indexOfObject 2022-11-16 21:08:48 +01:00
smizrahi 714acfc838 fix(security): Security fix for WSTG-INPV-02. Add XSS protection on folders and mail title / content 2022-11-14 14:36:46 +01:00
WoodySlum (Le Programmeur) 967479335c Merge pull request #333 from tfux/5640
fix(eas) improvement for bug #5612 (fixes #5640)
2022-11-14 09:03:46 +01:00
root e1c7e32f84 fix(eas) improvement for bug #5612 (fixes #5640) 2022-11-12 22:37:15 +01:00
smizrahi 7bfa900ae1 feat(login): Add button to discover password 2022-11-09 15:40:29 +01:00
WoodySlum (Le Programmeur) 8bfc3e4205 Merge pull request #332 from ichdasich/adjust_imap_authenticate_documentation
Adjust imap authenticate documentation
2022-11-08 17:09:47 +01:00
Tobias Fiebig 14608b168a docs(core): extend documentation for NGImap4AuthMechanism in sogo.conf
update documentation for NGImap4AuthMechanism to highlight that using
`AUTHENTICATE` is necessary to allow users to have UTF-8 characters in their
passwords, i.e., especially 'umlauts'.
2022-11-08 13:45:04 +01:00
Tobias Fiebig a846edee1c docs(core): add NGImap4AuthMechanism = "plain"; to sample config file
forcing `AUTHENTICATE` using Add NGImap4AuthMechanism = "plain"; is necessary
for setups where users have UTF-8 characters in their password
2022-11-08 13:41:08 +01:00
WoodySlum (Le Programmeur) 2d4a700700 Merge pull request #330 from tfux/5612
fix(eas) use bare email address (fixes #5612)
2022-11-08 08:19:24 +01:00
WoodySlum (Le Programmeur) b4633bdbf3 Merge pull request #329 from tfux/5626
fix(eas) ensure Templates and Junk folder exits (fixes #5626)
2022-10-31 17:48:56 +01:00
root 2d9a70944b fix(eas) use bare email address (fixes #5612) 2022-10-30 16:55:54 +01:00
root 2ffe3d79d2 fix(eas) ensure Templates and Junk folder exits (fixes #5626) 2022-10-30 16:11:42 +01:00
smizrahi 18c92dac31 feat(password-recovery): Add loader for password recovery - when requests are slow, the UI does not display anything. 2022-10-26 16:23:55 +02:00
smizrahi 7444865544 Removed useless comment in code 2022-10-26 14:39:20 +02:00
smizrahi 549d6a8463 fix(calendar): Update c_startdate field when updating event. Fixes #4376 2022-10-26 14:30:10 +02:00
smizrahi 9b023f43d5 feat(password-recovery): Avoid removing XSRF token cookie on passwordRecoveryCheck request 2022-10-25 14:50:12 +02:00
Le Programmeur 43b81bf9fd Merge pull request #327 from helsinki-systems/fix/duplicated-recurrence-rules
Fix OOM when having a lot of recurrence rules
2022-10-24 14:50:05 +02:00
Le Programmeur b672b0acc3 Merge pull request #328 from helsinki-systems/fix/mail-validation
fix(mail(js)): fix validation of email addresses
2022-10-24 13:50:17 +02:00
smizrahi 440a15ba98 feat(password-recovery): Clean session cookies on password change 2022-10-24 13:49:13 +02:00
Max Hausch d194b1e921 fix(mail(js)): fix validation of email addresses
This fixes a js error that was introduced by
67ccf748ed If applied, this fix allows
users to copy and paste multiple email addresses into the recipient
fields, e.g., from a excel file.
2022-10-20 10:52:28 +02:00
smizrahi e269df8c6e feat(password-recovery): Improve documentation 2022-10-19 15:53:47 +02:00
smizrahi b7531bc59b feat(password-recovery): Fix undefined in URL when click on back button 2022-10-19 15:41:39 +02:00
smizrahi 119e3870cf i18n(nb_NO): Update Norwegian Bokmål translations 2022-10-19 14:47:30 +02:00
smizrahi 0409ee37be i18n(da_DK): Update Danish translations 2022-10-18 21:40:08 +02:00
smizrahi 4c01ea210e i18n(fr): Update French translations 2022-10-18 21:37:16 +02:00
smizrahi e51aee8ce0 i18n(sr): Update Serbian translations 2022-10-18 21:35:15 +02:00
smizrahi 57fb62244d i18n(nb_NO): Update Norwegian Bokmål translations 2022-10-18 21:30:10 +02:00
smizrahi 33940b14ea feat(password-recovery): Improve password lost link style 2022-10-18 16:19:20 +02:00
Janne Heß 20e4dced40 Fix OOM when having a lot of recurrence rules
We had a broken client that created calendar entries with a lot of
recurrence rule (all of them FREQ=WEEKLY) and a lot of alarms. This led
to SOGo going out of memory.

This patch works around that by filtering out duplicated rules as they
yield the same date ranges and we only need to have them once.
2022-10-18 13:42:13 +02:00
smizrahi 5fb82fe414 feat(calendar): Refresh data when clicking on 'today' 2022-10-17 18:55:32 +02:00
smizrahi 77062befc5 feat(password-recovery): Update documentation 2022-10-17 11:56:17 +02:00
smizrahi d50080ea5b feat(password-recovery): Add LDAP password recovery 2022-10-16 14:46:19 +02:00
smizrahi cddfdb90f9 feat(calendar): Add SOGoDisableOrganizerEventCheck parameter - this parameter is used to avoid checking calendar event's organizer 2022-10-05 22:12:14 +02:00
smizrahi 88950c5b97 Update README 2022-10-05 10:58:39 +02:00
smizrahi c4dd695b12 feat(password-recovery): Fix dictionary with nil value issue. Changed parameter to SOGoPasswordRecoveryEnabled 2022-10-04 18:22:57 +02:00
Le Programmeur d5ad0ddf5d Merge pull request #324 from the-nic/fix-5416
(fix) NSString+Utilities: Fix safeStringByEscapingXMLString on gnuste…
2022-10-04 09:45:45 +02:00
smizrahi 04dd78d738 fix(addressbook): Fix invalid template 2022-10-03 14:57:28 +02:00
smizrahi 1ea8b9fb1f feat(password-recovery): Fix build issue. Restored previously removed used var. 2022-10-03 14:18:59 +02:00
smizrahi 2e1b22cb23 feat(password-recovery): Fix build issue 2022-10-03 13:45:10 +02:00
smizrahi fb51911936 Merge branch 'master' into password-recovery 2022-10-03 10:59:16 +02:00
smizrahi 14a10136ca style(mail): Fix unscrollable multiple delegated mailboxes issue 2022-10-03 09:04:43 +02:00
smizrahi 656807b77d feat(password-recovery): Add password recovery with secret question or secondary email 2022-10-03 08:56:41 +02:00
smizrahi 6931186bba chore(js/css): update generated files. Fix https://bugs.sogo.nu/view.php?id=5581. 2022-09-14 11:19:46 +02:00
Francis Lachapelle 3eeebbc83b fix(calendar(js)): destination calendars of new components
Fixes #5581
2022-08-19 10:07:14 -04: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
Francis Lachapelle 1e4c134591 style: remove debugging output 2022-08-18 23:02:36 -04:00
smizrahi e5dae36bb5 Update authors in documentation 2022-08-17 16:21:44 +02:00
smizrahi bf82d2b599 Update authors in documentation 2022-08-17 16:20:58 +02:00
smizrahi 62ba2968cb Update changelog for version 5.7.1 2022-08-17 16:00:56 +02:00
smizrahi f9e975af21 Set back Inverse copyrights 2022-08-17 10:06:28 +02:00
smizrahi b8a010f3ba Set back Inverse copyrights 2022-08-17 09:45:00 +02:00
Francis Lachapelle 928435704c chore(js/css): update generated files 2022-08-16 08:57:09 -04:00
Francis Lachapelle 16459c7b3d fix(calendar(js)): conditional display of edit and delete buttons 2022-08-15 15:31:19 -04:00
Francis Lachapelle 3f7fef0788 fix(calendar): remove time from until date of rrule of all-day event
See RFC 5545, section 3.3.10 Recurrence Rule.
2022-08-15 13:25:35 -04:00
Nicolas Höft 3b3e0195b1 (fix) NSString+Utilities: Fix safeStringByEscapingXMLString on gnustep-base-1.28
Newer gnustep version would add a byte-order-mark on
NSString:dataUsingEncoding:NSUTF32StringEncoding, use NSUTF32LittleEndianStringEncoding
instead to skip the BOM.

Fixes #5416
2022-08-15 17:06:00 +02:00
smizrahi ea06fa7cbf docs: Removed Inverse logo 2022-08-12 18:16:39 +02:00
smizrahi dc45d0ed24 docs: Change references to Alinto 2022-08-12 18:15:35 +02:00
smizrahi 1ec6fd1679 chore(release): 5.7.1 2022-08-12 17:38:22 +02:00
smizrahi a54115c96a Update URL for bts 2022-08-12 17:28:46 +02:00
smizrahi f92e292547 chore(timezones): Update to version 2022b 2022-08-12 17:23:36 +02:00
smizrahi abc2df0da0 i18n(hu): Update Hungarian translations 2022-08-12 15:58:21 +02:00
smizrahi a418baa276 i18n(fr): Update French translations 2022-08-12 15:58:03 +02:00
smizrahi c00ab0d7a7 Update gitignore 2022-08-12 15:21:51 +02:00
smizrahi cbf6e06964 chore(js/css): update generated files 2022-08-11 18:02:41 +02:00
smizrahi 5b84d083b8 chore(fonts): Update Fira font to commit fd8c8c0 2022-08-11 17:52:39 +02:00
smizrahi a2bed5f76f chore(npm): Update CKEditor to version 4.19.1 and update gitignore 2022-08-11 17:29:22 +02:00
smizrahi 7a985f8eff Removed i18n mailing list from README 2022-08-10 20:47:28 +02:00
smizrahi 1ebb6a11f4 Update URL documentation for Alinto migration 2022-08-10 09:27:47 +02:00
Francis Lachapelle 95eecc402a fix(dav): return 405 when collection already exists
See https://datatracker.ietf.org/doc/html/rfc4918#section-9.3.1
2022-08-09 12:17:55 -04:00
Francis Lachapelle efe78c5179 fix(mail(js)): handle paste action from contextual menu
Fixes #5488
2022-08-08 17:38:10 -04:00
Francis Lachapelle 4e79a1e995 test: we now encode everything in XML documents 2022-08-04 16:15:45 -04:00
Francis Lachapelle 4f7981b1c3 test: improve TestNGMimeHeaderFieldGenerator 2022-08-04 16:09:33 -04:00
Francis Lachapelle ac602dd58c test: improve error message in localhost test 2022-08-04 16:06:06 -04:00
Francis Lachapelle 931fc8d6ef chore(js/css): update generated files 2022-07-28 12:10:05 -04:00
Francis Lachapelle 67ccf748ed fix(web(js)): improve validation of email addresses
Overwrite the AngularJS validation and transformation of email inputs in
order to support umlauts and eszett.
2022-07-28 10:46:40 -04:00
Le Programmeur 5e6ad77d4c fix(i18n): new localized strings for SQL-based password policies 2022-07-26 12:22:53 -04:00
Francis Lachapelle a667c69f3c i18n(kk): add Kazakh translation 2022-07-25 09:13:24 -04:00
adetk d1971b76e2 i18n(kk): Add Kazakh translation by Nazym Idrissova 2022-07-25 07:39:28 -04:00
Adet Kineyev d1ad970864 i18n(kk): Add .wod files for Kazakh translation 2022-07-23 15:16:58 +06:00
InverseBot 0d720b7c63 chore(js/css): update generated files 2022-07-23 00:17:39 -04:00
Francis Lachapelle adfd175681 fix(preferences): regex in Sieve scripts are now case sensitive
Fixes #5561
2022-07-22 16:45:47 -04:00
Francis Lachapelle 407bc538df fix(mail(js)): resolve sub mailboxes in global search
Fixes #5559
2022-07-22 15:34:44 -04:00
Adet Kineyev 0fcf113c16 i18n(kk): Add Kazakh translation to source code files 2022-07-19 09:04:34 +06:00
InverseBot 82747746c6 chore(js/css): update generated files 2022-07-17 00:17:21 -04:00
Francis Lachapelle 2ae03d5095 fix(preferences(js)): don't filter vacation start date 2022-07-15 11:14:22 -04:00
Francis Lachapelle 0720dc44fd fix(addressbook(dav)): improve handling of addressbook-query 2022-07-13 16:46:00 -04:00
Francis Lachapelle e18dc2cd5a fix(mail(js)): add CKEditor plugins emoji and bidi 2022-07-08 10:57:57 -04:00
Francis Lachapelle a6f7c1ea61 fix(calendar): update all quick fields when updating event
Fixes #5546
2022-07-08 10:31:59 -04:00
Nicolas Höft edd64a396e fix(core): adjustments for IPv6 2022-07-06 08:49:48 -04:00
Francis Lachapelle 2f9f610210 fix(core): handle argon2i password scheme
Fixes #5531
2022-07-05 12:42:57 -04:00
Francis Lachapelle 27d45b6d76 fix(mail): use encoding from MIME part 2022-07-05 08:59:48 -04:00
Francis Lachapelle 6bed6c0e20 fix(core): don't remove double quotes when parsing versit strings
Fixes #3530
Fixes #3930
2022-06-29 16:58:28 -04:00
Francis Lachapelle ebf032ee6b fix(core): don't remove double quotes when parsing versit strings
Fixes #3530
2022-06-29 08:31:08 -04:00
Francis Lachapelle d99aa82a31 fix(core): don't remove double quotes when parsing versit strings
Fixes #3530
2022-06-28 16:54:41 -04:00
Nazym Idrissova 29bda6b945 i18n(kk): Add Kazakh translation by Nazym Idrissova 2022-06-20 11:02:28 +06:00
1425 changed files with 69874 additions and 27676 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.
+28
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
@@ -28,3 +29,30 @@ UI/WebServerResources/scss/.sass-cache/
config.make
doc
tags
.DS_Store
Tests/package-lock.json
.vscode
.configure-test*
UI/WebServerResources/package-lock.json
# CKEditor
UI/WebServerResources/js/vendor/ckeditor/samples/
UI/WebServerResources/js/vendor/ckeditor/skins/n1theme/readme.md
UI/WebServerResources/js/vendor/ckeditor/*.md
UI/WebServerResources/js/vendor/ckeditor/adapters/jquery.js
UI/WebServerResources/js/vendor/ckeditor/bender-runner.config.json
UI/WebServerResources/js/vendor/ckeditor/plugins/onchange/docs
UI/WebServerResources/js/vendor/ckeditor/plugins/scayt/*.md
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.*
+47 -484
View File
@@ -1,497 +1,60 @@
[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, gl_ES: Galician
[sogo.ui-mailerui]
source_file = UI/MailerUI/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/MailerUI/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/MailerUI/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/MailerUI/Bosnian.lproj/Localizable.strings
trans.ca = UI/MailerUI/Catalan.lproj/Localizable.strings
trans.cs = UI/MailerUI/Czech.lproj/Localizable.strings
trans.cy = UI/MailerUI/Welsh.lproj/Localizable.strings
trans.da_DK = UI/MailerUI/Danish.lproj/Localizable.strings
trans.de = UI/MailerUI/German.lproj/Localizable.strings
trans.es_AR = UI/MailerUI/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/MailerUI/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/MailerUI/Basque.lproj/Localizable.strings
trans.fi = UI/MailerUI/Finnish.lproj/Localizable.strings
trans.fr = UI/MailerUI/French.lproj/Localizable.strings
trans.he = UI/MailerUI/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/MailerUI/Croatian.lproj/Localizable.strings
trans.hu = UI/MailerUI/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/MailerUI/Indonesian.lproj/Localizable.strings
trans.is = UI/MailerUI/Icelandic.lproj/Localizable.strings
trans.it = UI/MailerUI/Italian.lproj/Localizable.strings
trans.ja = UI/MailerUI/Japanese.lproj/Localizable.strings
trans.lt = UI/MailerUI/Lithuanian.lproj/Localizable.strings
trans.lv = UI/MailerUI/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/MailerUI/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/MailerUI/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/MailerUI/Polish.lproj/Localizable.strings
trans.pt = UI/MailerUI/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/MailerUI/Romanian.lproj/Localizable.strings
trans.ru = UI/MailerUI/Russian.lproj/Localizable.strings
trans.sk = UI/MailerUI/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/MailerUI/Slovenian.lproj/Localizable.strings
trans.sr = UI/MailerUI/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/MailerUI/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/MailerUI/Montenegrin.lproj/Localizable.strings
trans.sv = UI/MailerUI/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/MailerUI/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/MailerUI/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/MailerUI/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/MailerUI/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:soobjects-appointments]
source_file = SoObjects/Appointments/English.lproj/Localizable.strings
source_lang = en
file_filter = SoObjects/Appointments/<lang>.lproj/Localizable.strings
[sogo.ui-preferencesui]
source_file = UI/PreferencesUI/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/PreferencesUI/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/PreferencesUI/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/PreferencesUI/Bosnian.lproj/Localizable.strings
trans.ca = UI/PreferencesUI/Catalan.lproj/Localizable.strings
trans.cs = UI/PreferencesUI/Czech.lproj/Localizable.strings
trans.cy = UI/PreferencesUI/Welsh.lproj/Localizable.strings
trans.da_DK = UI/PreferencesUI/Danish.lproj/Localizable.strings
trans.de = UI/PreferencesUI/German.lproj/Localizable.strings
trans.es_AR = UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/PreferencesUI/Basque.lproj/Localizable.strings
trans.fi = UI/PreferencesUI/Finnish.lproj/Localizable.strings
trans.fr = UI/PreferencesUI/French.lproj/Localizable.strings
trans.he = UI/PreferencesUI/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/PreferencesUI/Croatian.lproj/Localizable.strings
trans.hu = UI/PreferencesUI/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/PreferencesUI/Indonesian.lproj/Localizable.strings
trans.is = UI/PreferencesUI/Icelandic.lproj/Localizable.strings
trans.it = UI/PreferencesUI/Italian.lproj/Localizable.strings
trans.ja = UI/PreferencesUI/Japanese.lproj/Localizable.strings
trans.lt = UI/PreferencesUI/Lithuanian.lproj/Localizable.strings
trans.lv = UI/PreferencesUI/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/PreferencesUI/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/PreferencesUI/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/PreferencesUI/Polish.lproj/Localizable.strings
trans.pt = UI/PreferencesUI/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/PreferencesUI/Romanian.lproj/Localizable.strings
trans.ru = UI/PreferencesUI/Russian.lproj/Localizable.strings
trans.sk = UI/PreferencesUI/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/PreferencesUI/Slovenian.lproj/Localizable.strings
trans.sr = UI/PreferencesUI/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/PreferencesUI/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/PreferencesUI/Montenegrin.lproj/Localizable.strings
trans.sv = UI/PreferencesUI/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/PreferencesUI/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/PreferencesUI/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/PreferencesUI/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/PreferencesUI/ChineseTaiwan.lproj/Localizable.strings
[sogo.ui-scheduler]
source_file = UI/Scheduler/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/Scheduler/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/Scheduler/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/Scheduler/Bosnian.lproj/Localizable.strings
trans.ca = UI/Scheduler/Catalan.lproj/Localizable.strings
trans.cs = UI/Scheduler/Czech.lproj/Localizable.strings
trans.cy = UI/Scheduler/Welsh.lproj/Localizable.strings
trans.da_DK = UI/Scheduler/Danish.lproj/Localizable.strings
trans.de = UI/Scheduler/German.lproj/Localizable.strings
trans.es_AR = UI/Scheduler/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/Scheduler/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/Scheduler/Basque.lproj/Localizable.strings
trans.fi = UI/Scheduler/Finnish.lproj/Localizable.strings
trans.fr = UI/Scheduler/French.lproj/Localizable.strings
trans.he = UI/Scheduler/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/Scheduler/Croatian.lproj/Localizable.strings
trans.hu = UI/Scheduler/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/Scheduler/Indonesian.lproj/Localizable.strings
trans.is = UI/Scheduler/Icelandic.lproj/Localizable.strings
trans.it = UI/Scheduler/Italian.lproj/Localizable.strings
trans.ja = UI/Scheduler/Japanese.lproj/Localizable.strings
trans.lt = UI/Scheduler/Lithuanian.lproj/Localizable.strings
trans.lv = UI/Scheduler/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/Scheduler/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/Scheduler/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/Scheduler/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/Scheduler/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/Scheduler/Polish.lproj/Localizable.strings
trans.pt = UI/Scheduler/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/Scheduler/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/Scheduler/Romanian.lproj/Localizable.strings
trans.ru = UI/Scheduler/Russian.lproj/Localizable.strings
trans.sk = UI/Scheduler/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/Scheduler/Slovenian.lproj/Localizable.strings
trans.sr = UI/Scheduler/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/Scheduler/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/Scheduler/Montenegrin.lproj/Localizable.strings
trans.sv = UI/Scheduler/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/Scheduler/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/Scheduler/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/Scheduler/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/Scheduler/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:soobjects-contacts]
source_file = SoObjects/Contacts/English.lproj/Localizable.strings
source_lang = en
file_filter = SoObjects/Contacts/<lang>.lproj/Localizable.strings
[sogo.ui-contacts]
source_file = UI/Contacts/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/Contacts/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/Contacts/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/Contacts/Bosnian.lproj/Localizable.strings
trans.ca = UI/Contacts/Catalan.lproj/Localizable.strings
trans.cs = UI/Contacts/Czech.lproj/Localizable.strings
trans.cy = UI/Contacts/Welsh.lproj/Localizable.strings
trans.da_DK = UI/Contacts/Danish.lproj/Localizable.strings
trans.de = UI/Contacts/German.lproj/Localizable.strings
trans.es_AR = UI/Contacts/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/Contacts/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/Contacts/Basque.lproj/Localizable.strings
trans.fi = UI/Contacts/Finnish.lproj/Localizable.strings
trans.fr = UI/Contacts/French.lproj/Localizable.strings
trans.he = UI/Contacts/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/Contacts/Croatian.lproj/Localizable.strings
trans.hu = UI/Contacts/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/Contacts/Indonesian.lproj/Localizable.strings
trans.is = UI/Contacts/Icelandic.lproj/Localizable.strings
trans.it = UI/Contacts/Italian.lproj/Localizable.strings
trans.ja = UI/Contacts/Japanese.lproj/Localizable.strings
trans.lt = UI/Contacts/Lithuanian.lproj/Localizable.strings
trans.lv = UI/Contacts/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/Contacts/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/Contacts/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/Contacts/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/Contacts/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/Contacts/Polish.lproj/Localizable.strings
trans.pt = UI/Contacts/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/Contacts/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/Contacts/Romanian.lproj/Localizable.strings
trans.ru = UI/Contacts/Russian.lproj/Localizable.strings
trans.sk = UI/Contacts/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/Contacts/Slovenian.lproj/Localizable.strings
trans.sr = UI/Contacts/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/Contacts/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/Contacts/Montenegrin.lproj/Localizable.strings
trans.sv = UI/Contacts/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/Contacts/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/Contacts/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/Contacts/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/Contacts/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:soobjects-mailer]
source_file = SoObjects/Mailer/English.lproj/Localizable.strings
source_lang = en
file_filter = SoObjects/Mailer/<lang>.lproj/Localizable.strings
[sogo.ui-mainui]
source_file = UI/MainUI/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/MainUI/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/MainUI/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/MainUI/Bosnian.lproj/Localizable.strings
trans.ca = UI/MainUI/Catalan.lproj/Localizable.strings
trans.cs = UI/MainUI/Czech.lproj/Localizable.strings
trans.cy = UI/MainUI/Welsh.lproj/Localizable.strings
trans.da_DK = UI/MainUI/Danish.lproj/Localizable.strings
trans.de = UI/MainUI/German.lproj/Localizable.strings
trans.es_AR = UI/MainUI/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/MainUI/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/MainUI/Basque.lproj/Localizable.strings
trans.fi = UI/MainUI/Finnish.lproj/Localizable.strings
trans.fr = UI/MainUI/French.lproj/Localizable.strings
trans.he = UI/MainUI/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/MainUI/Croatian.lproj/Localizable.strings
trans.hu = UI/MainUI/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/MainUI/Indonesian.lproj/Localizable.strings
trans.is = UI/MainUI/Icelandic.lproj/Localizable.strings
trans.it = UI/MainUI/Italian.lproj/Localizable.strings
trans.ja = UI/MainUI/Japanese.lproj/Localizable.strings
trans.lt = UI/MainUI/Lithuanian.lproj/Localizable.strings
trans.lv = UI/MainUI/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/MainUI/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/MainUI/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/MainUI/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/MainUI/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/MainUI/Polish.lproj/Localizable.strings
trans.pt = UI/MainUI/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/MainUI/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/MainUI/Romanian.lproj/Localizable.strings
trans.ru = UI/MainUI/Russian.lproj/Localizable.strings
trans.sk = UI/MainUI/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/MainUI/Slovenian.lproj/Localizable.strings
trans.sr = UI/MainUI/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/MainUI/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/MainUI/Montenegrin.lproj/Localizable.strings
trans.sv = UI/MainUI/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/MainUI/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/MainUI/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/MainUI/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/MainUI/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-administrationui]
source_file = UI/AdministrationUI/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/AdministrationUI/<lang>.lproj/Localizable.strings
[sogo.ui-common]
source_file = UI/Common/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/Common/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/Common/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/Common/Bosnian.lproj/Localizable.strings
trans.ca = UI/Common/Catalan.lproj/Localizable.strings
trans.cs = UI/Common/Czech.lproj/Localizable.strings
trans.cy = UI/Common/Welsh.lproj/Localizable.strings
trans.da_DK = UI/Common/Danish.lproj/Localizable.strings
trans.de = UI/Common/German.lproj/Localizable.strings
trans.es_AR = UI/Common/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/Common/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/Common/Basque.lproj/Localizable.strings
trans.fi = UI/Common/Finnish.lproj/Localizable.strings
trans.fr = UI/Common/French.lproj/Localizable.strings
trans.he = UI/Common/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/Common/Croatian.lproj/Localizable.strings
trans.hu = UI/Common/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/Common/Indonesian.lproj/Localizable.strings
trans.is = UI/Common/Icelandic.lproj/Localizable.strings
trans.it = UI/Common/Italian.lproj/Localizable.strings
trans.ja = UI/Common/Japanese.lproj/Localizable.strings
trans.lt = UI/Common/Lithuanian.lproj/Localizable.strings
trans.lv = UI/Common/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/Common/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/Common/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/Common/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/Common/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/Common/Polish.lproj/Localizable.strings
trans.pt = UI/Common/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/Common/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/Common/Romanian.lproj/Localizable.strings
trans.ru = UI/Common/Russian.lproj/Localizable.strings
trans.sk = UI/Common/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/Common/Slovenian.lproj/Localizable.strings
trans.sr = UI/Common/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/Common/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/Common/Montenegrin.lproj/Localizable.strings
trans.sv = UI/Common/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/Common/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/Common/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/Common/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/Common/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-common]
source_file = UI/Common/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/Common/<lang>.lproj/Localizable.strings
[sogo.ui-administrationui]
source_file = UI/AdministrationUI/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/AdministrationUI/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/AdministrationUI/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/AdministrationUI/Bosnian.lproj/Localizable.strings
trans.ca = UI/AdministrationUI/Catalan.lproj/Localizable.strings
trans.cs = UI/AdministrationUI/Czech.lproj/Localizable.strings
trans.cy = UI/AdministrationUI/Welsh.lproj/Localizable.strings
trans.da_DK = UI/AdministrationUI/Danish.lproj/Localizable.strings
trans.de = UI/AdministrationUI/German.lproj/Localizable.strings
trans.es_AR = UI/AdministrationUI/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/AdministrationUI/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/AdministrationUI/Basque.lproj/Localizable.strings
trans.fi = UI/AdministrationUI/Finnish.lproj/Localizable.strings
trans.fr = UI/AdministrationUI/French.lproj/Localizable.strings
trans.he = UI/AdministrationUI/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/AdministrationUI/Croatian.lproj/Localizable.strings
trans.hu = UI/AdministrationUI/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/AdministrationUI/Indonesian.lproj/Localizable.strings
trans.is = UI/AdministrationUI/Icelandic.lproj/Localizable.strings
trans.it = UI/AdministrationUI/Italian.lproj/Localizable.strings
trans.ja = UI/AdministrationUI/Japanese.lproj/Localizable.strings
trans.lt = UI/AdministrationUI/Lithuanian.lproj/Localizable.strings
trans.lv = UI/AdministrationUI/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/AdministrationUI/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/AdministrationUI/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/AdministrationUI/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/AdministrationUI/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/AdministrationUI/Polish.lproj/Localizable.strings
trans.pt = UI/AdministrationUI/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/AdministrationUI/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/AdministrationUI/Romanian.lproj/Localizable.strings
trans.ru = UI/AdministrationUI/Russian.lproj/Localizable.strings
trans.sk = UI/AdministrationUI/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/AdministrationUI/Slovenian.lproj/Localizable.strings
trans.sr = UI/AdministrationUI/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/AdministrationUI/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/AdministrationUI/Montenegrin.lproj/Localizable.strings
trans.sv = UI/AdministrationUI/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/AdministrationUI/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/AdministrationUI/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/AdministrationUI/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/AdministrationUI/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-contacts]
source_file = UI/Contacts/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/Contacts/<lang>.lproj/Localizable.strings
[sogo.soobjects-appointments]
source_file = SoObjects/Appointments/English.lproj/Localizable.strings
source_lang = en
trans.ar = SoObjects/Appointments/Arabic.lproj/Localizable.strings
trans.bg_BG = SoObjects/Appointments/Bulgarian.lproj/Localizable.strings
trans.bs_BA = SoObjects/Appointments/Bosnian.lproj/Localizable.strings
trans.ca = SoObjects/Appointments/Catalan.lproj/Localizable.strings
trans.cs = SoObjects/Appointments/Czech.lproj/Localizable.strings
trans.cy = SoObjects/Appointments/Welsh.lproj/Localizable.strings
trans.da_DK = SoObjects/Appointments/Danish.lproj/Localizable.strings
trans.de = SoObjects/Appointments/German.lproj/Localizable.strings
trans.es_AR = SoObjects/Appointments/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = SoObjects/Appointments/SpanishSpain.lproj/Localizable.strings
trans.eu = SoObjects/Appointments/Basque.lproj/Localizable.strings
trans.fi = SoObjects/Appointments/Finnish.lproj/Localizable.strings
trans.fr = SoObjects/Appointments/French.lproj/Localizable.strings
trans.he = SoObjects/Appointments/Hebrew.lproj/Localizable.strings
trans.hr_HR = SoObjects/Appointments/Croatian.lproj/Localizable.strings
trans.hu = SoObjects/Appointments/Hungarian.lproj/Localizable.strings
trans.id_ID = SoObjects/Appointments/Indonesian.lproj/Localizable.strings
trans.is = SoObjects/Appointments/Icelandic.lproj/Localizable.strings
trans.it = SoObjects/Appointments/Italian.lproj/Localizable.strings
trans.ja = SoObjects/Appointments/Japanese.lproj/Localizable.strings
trans.lt = SoObjects/Appointments/Lithuanian.lproj/Localizable.strings
trans.lv = SoObjects/Appointments/Latvian.lproj/Localizable.strings
trans.mk_MK = SoObjects/Appointments/Macedonian.lproj/Localizable.strings
trans.nb_NO = SoObjects/Appointments/NorwegianBokmal.lproj/Localizable.strings
trans.nl = SoObjects/Appointments/Dutch.lproj/Localizable.strings
trans.nn_NO = SoObjects/Appointments/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = SoObjects/Appointments/Polish.lproj/Localizable.strings
trans.pt = SoObjects/Appointments/Portuguese.lproj/Localizable.strings
trans.pt_BR = SoObjects/Appointments/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = SoObjects/Appointments/Romanian.lproj/Localizable.strings
trans.ru = SoObjects/Appointments/Russian.lproj/Localizable.strings
trans.sk = SoObjects/Appointments/Slovak.lproj/Localizable.strings
trans.sl_SI = SoObjects/Appointments/Slovenian.lproj/Localizable.strings
trans.sr = SoObjects/Appointments/Serbian.lproj/Localizable.strings
trans.sr@latin = SoObjects/Appointments/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = SoObjects/Appointments/Montenegrin.lproj/Localizable.strings
trans.sv = SoObjects/Appointments/Swedish.lproj/Localizable.strings
trans.tr_TR = SoObjects/Appointments/TurkishTurkey.lproj/Localizable.strings
trans.uk = SoObjects/Appointments/Ukrainian.lproj/Localizable.strings
trans.zh_CN = SoObjects/Appointments/ChineseChina.lproj/Localizable.strings
trans.zh_TW = SoObjects/Appointments/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-mailerui]
source_file = UI/MailerUI/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/MailerUI/<lang>.lproj/Localizable.strings
[sogo.soobjects-contacts]
source_file = SoObjects/Contacts/English.lproj/Localizable.strings
source_lang = en
trans.ar = SoObjects/Contacts/Arabic.lproj/Localizable.strings
trans.bg_BG = SoObjects/Contacts/Bulgarian.lproj/Localizable.strings
trans.bs_BA = SoObjects/Contacts/Bosnian.lproj/Localizable.strings
trans.ca = SoObjects/Contacts/Catalan.lproj/Localizable.strings
trans.cs = SoObjects/Contacts/Czech.lproj/Localizable.strings
trans.cy = SoObjects/Contacts/Welsh.lproj/Localizable.strings
trans.da_DK = SoObjects/Contacts/Danish.lproj/Localizable.strings
trans.de = SoObjects/Contacts/German.lproj/Localizable.strings
trans.es_AR = SoObjects/Contacts/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = SoObjects/Contacts/SpanishSpain.lproj/Localizable.strings
trans.eu = SoObjects/Contacts/Basque.lproj/Localizable.strings
trans.fi = SoObjects/Contacts/Finnish.lproj/Localizable.strings
trans.fr = SoObjects/Contacts/French.lproj/Localizable.strings
trans.he = SoObjects/Contacts/Hebrew.lproj/Localizable.strings
trans.hr_HR = SoObjects/Contacts/Croatian.lproj/Localizable.strings
trans.hu = SoObjects/Contacts/Hungarian.lproj/Localizable.strings
trans.id_ID = SoObjects/Contacts/Indonesian.lproj/Localizable.strings
trans.is = SoObjects/Contacts/Icelandic.lproj/Localizable.strings
trans.it = SoObjects/Contacts/Italian.lproj/Localizable.strings
trans.ja = SoObjects/Contacts/Japanese.lproj/Localizable.strings
trans.lt = SoObjects/Contacts/Lithuanian.lproj/Localizable.strings
trans.lv = SoObjects/Contacts/Latvian.lproj/Localizable.strings
trans.mk_MK = SoObjects/Contacts/Macedonian.lproj/Localizable.strings
trans.nb_NO = SoObjects/Contacts/NorwegianBokmal.lproj/Localizable.strings
trans.nl = SoObjects/Contacts/Dutch.lproj/Localizable.strings
trans.nn_NO = SoObjects/Contacts/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = SoObjects/Contacts/Polish.lproj/Localizable.strings
trans.pt = SoObjects/Contacts/Portuguese.lproj/Localizable.strings
trans.pt_BR = SoObjects/Contacts/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = SoObjects/Contacts/Romanian.lproj/Localizable.strings
trans.ru = SoObjects/Contacts/Russian.lproj/Localizable.strings
trans.sk = SoObjects/Contacts/Slovak.lproj/Localizable.strings
trans.sl_SI = SoObjects/Contacts/Slovenian.lproj/Localizable.strings
trans.sr = SoObjects/Contacts/Serbian.lproj/Localizable.strings
trans.sr@latin = SoObjects/Contacts/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = SoObjects/Contacts/Montenegrin.lproj/Localizable.strings
trans.sv = SoObjects/Contacts/Swedish.lproj/Localizable.strings
trans.tr_TR = SoObjects/Contacts/TurkishTurkey.lproj/Localizable.strings
trans.uk = SoObjects/Contacts/Ukrainian.lproj/Localizable.strings
trans.zh_CN = SoObjects/Contacts/ChineseChina.lproj/Localizable.strings
trans.zh_TW = SoObjects/Contacts/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-mailpartviewers]
source_file = UI/MailPartViewers/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/MailPartViewers/<lang>.lproj/Localizable.strings
[sogo.soobjects-mailer]
source_file = SoObjects/Mailer/English.lproj/Localizable.strings
source_lang = en
trans.ar = SoObjects/Mailer/Arabic.lproj/Localizable.strings
trans.bg_BG = SoObjects/Mailer/Bulgarian.lproj/Localizable.strings
trans.bs_BA = SoObjects/Mailer/Bosnian.lproj/Localizable.strings
trans.ca = SoObjects/Mailer/Catalan.lproj/Localizable.strings
trans.cs = SoObjects/Mailer/Czech.lproj/Localizable.strings
trans.cy = SoObjects/Mailer/Welsh.lproj/Localizable.strings
trans.da_DK = SoObjects/Mailer/Danish.lproj/Localizable.strings
trans.de = SoObjects/Mailer/German.lproj/Localizable.strings
trans.es_AR = SoObjects/Mailer/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = SoObjects/Mailer/SpanishSpain.lproj/Localizable.strings
trans.eu = SoObjects/Mailer/Basque.lproj/Localizable.strings
trans.fi = SoObjects/Mailer/Finnish.lproj/Localizable.strings
trans.fr = SoObjects/Mailer/French.lproj/Localizable.strings
trans.he = SoObjects/Mailer/Hebrew.lproj/Localizable.strings
trans.hr_HR = SoObjects/Mailer/Croatian.lproj/Localizable.strings
trans.hu = SoObjects/Mailer/Hungarian.lproj/Localizable.strings
trans.id_ID = SoObjects/Mailer/Indonesian.lproj/Localizable.strings
trans.is = SoObjects/Mailer/Icelandic.lproj/Localizable.strings
trans.it = SoObjects/Mailer/Italian.lproj/Localizable.strings
trans.ja = SoObjects/Mailer/Japanese.lproj/Localizable.strings
trans.lt = SoObjects/Mailer/Lithuanian.lproj/Localizable.strings
trans.lv = SoObjects/Mailer/Latvian.lproj/Localizable.strings
trans.mk_MK = SoObjects/Mailer/Macedonian.lproj/Localizable.strings
trans.nb_NO = SoObjects/Mailer/NorwegianBokmal.lproj/Localizable.strings
trans.nl = SoObjects/Mailer/Dutch.lproj/Localizable.strings
trans.nn_NO = SoObjects/Mailer/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = SoObjects/Mailer/Polish.lproj/Localizable.strings
trans.pt = SoObjects/Mailer/Portuguese.lproj/Localizable.strings
trans.pt_BR = SoObjects/Mailer/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = SoObjects/Mailer/Romanian.lproj/Localizable.strings
trans.ru = SoObjects/Mailer/Russian.lproj/Localizable.strings
trans.sk = SoObjects/Mailer/Slovak.lproj/Localizable.strings
trans.sl_SI = SoObjects/Mailer/Slovenian.lproj/Localizable.strings
trans.sr = SoObjects/Mailer/Serbian.lproj/Localizable.strings
trans.sr@latin = SoObjects/Mailer/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = SoObjects/Mailer/Montenegrin.lproj/Localizable.strings
trans.sv = SoObjects/Mailer/Swedish.lproj/Localizable.strings
trans.tr_TR = SoObjects/Mailer/TurkishTurkey.lproj/Localizable.strings
trans.uk = SoObjects/Mailer/Ukrainian.lproj/Localizable.strings
trans.zh_CN = SoObjects/Mailer/ChineseChina.lproj/Localizable.strings
trans.zh_TW = SoObjects/Mailer/ChineseTaiwan.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-mainui]
source_file = UI/MainUI/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/MainUI/<lang>.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-preferencesui]
source_file = UI/PreferencesUI/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/PreferencesUI/<lang>.lproj/Localizable.strings
[o:alinto:p:sogo:r:ui-scheduler]
source_file = UI/Scheduler/English.lproj/Localizable.strings
source_lang = en
file_filter = UI/Scheduler/<lang>.lproj/Localizable.strings
[sogo.ui-mailpartviewers]
source_file = UI/MailPartViewers/English.lproj/Localizable.strings
source_lang = en
trans.ar = UI/MailPartViewers/Arabic.lproj/Localizable.strings
trans.bg_BG = UI/MailPartViewers/Bulgarian.lproj/Localizable.strings
trans.bs_BA = UI/MailPartViewers/Bosnian.lproj/Localizable.strings
trans.ca = UI/MailPartViewers/Catalan.lproj/Localizable.strings
trans.cs = UI/MailPartViewers/Czech.lproj/Localizable.strings
trans.cy = UI/MailPartViewers/Welsh.lproj/Localizable.strings
trans.da_DK = UI/MailPartViewers/Danish.lproj/Localizable.strings
trans.de = UI/MailPartViewers/German.lproj/Localizable.strings
trans.es_AR = UI/MailPartViewers/SpanishArgentina.lproj/Localizable.strings
trans.es_ES = UI/MailPartViewers/SpanishSpain.lproj/Localizable.strings
trans.eu = UI/MailPartViewers/Basque.lproj/Localizable.strings
trans.fi = UI/MailPartViewers/Finnish.lproj/Localizable.strings
trans.fr = UI/MailPartViewers/French.lproj/Localizable.strings
trans.he = UI/MailPartViewers/Hebrew.lproj/Localizable.strings
trans.hr_HR = UI/MailPartViewers/Croatian.lproj/Localizable.strings
trans.hu = UI/MailPartViewers/Hungarian.lproj/Localizable.strings
trans.id_ID = UI/MailPartViewers/Indonesian.lproj/Localizable.strings
trans.is = UI/MailPartViewers/Icelandic.lproj/Localizable.strings
trans.it = UI/MailPartViewers/Italian.lproj/Localizable.strings
trans.ja = UI/MailPartViewers/Japanese.lproj/Localizable.strings
trans.lt = UI/MailPartViewers/Lithuanian.lproj/Localizable.strings
trans.lv = UI/MailPartViewers/Latvian.lproj/Localizable.strings
trans.mk_MK = UI/MailPartViewers/Macedonian.lproj/Localizable.strings
trans.nb_NO = UI/MailPartViewers/NorwegianBokmal.lproj/Localizable.strings
trans.nl = UI/MailPartViewers/Dutch.lproj/Localizable.strings
trans.nn_NO = UI/MailPartViewers/NorwegianNynorsk.lproj/Localizable.strings
trans.pl = UI/MailPartViewers/Polish.lproj/Localizable.strings
trans.pt = UI/MailPartViewers/Portuguese.lproj/Localizable.strings
trans.pt_BR = UI/MailPartViewers/BrazilianPortuguese.lproj/Localizable.strings
trans.ro_RO = UI/MailPartViewers/Romanian.lproj/Localizable.strings
trans.ru = UI/MailPartViewers/Russian.lproj/Localizable.strings
trans.sk = UI/MailPartViewers/Slovak.lproj/Localizable.strings
trans.sl_SI = UI/MailPartViewers/Slovenian.lproj/Localizable.strings
trans.sr = UI/MailPartViewers/Serbian.lproj/Localizable.strings
trans.sr@latin = UI/MailPartViewers/SerbianLatin.lproj/Localizable.strings
trans.sr_ME@latin = UI/MailPartViewers/Montenegrin.lproj/Localizable.strings
trans.sv = UI/MailPartViewers/Swedish.lproj/Localizable.strings
trans.tr_TR = UI/MailPartViewers/TurkishTurkey.lproj/Localizable.strings
trans.uk = UI/MailPartViewers/Ukrainian.lproj/Localizable.strings
trans.zh_CN = UI/MailPartViewers/ChineseChina.lproj/Localizable.strings
trans.zh_TW = UI/MailPartViewers/ChineseTaiwan.lproj/Localizable.strings
+1 -1
View File
@@ -5,7 +5,7 @@ const tracker = {
module.exports = {
tagPrefix: "SOGo-",
issueUrlFormat: "https://sogo.nu/bugs/view.php?id={{id}}",
issueUrlFormat: "https://bugs.sogo.nu/view.php?id={{id}}",
compareUrlFormat: "{{host}}/{{owner}}/{{repository}}/compare/{{previousTag}}...{{currentTag}}",
types: [
{type: "feat", section: "Features"},
+1 -1
View File
@@ -36,7 +36,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@interface NGMimeMessage (ActiveSync)
- (NSArray *) allRecipients;
- (NSArray *) allBareRecipients;
@end
+28 -20
View File
@@ -38,39 +38,47 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@implementation NGMimeMessage (ActiveSync)
- (void) _addRecipients: (NSEnumerator *) enumerator
toArray: (NSMutableArray *) recipients
- (NSArray *) allRecipients
{
NGMailAddressParser *parser;
NSEnumerator *addressList;
NSMutableArray *allRecipients;
NGMailAddress *address;
NSEnumerator *recipients;
NSString *s;
NSString *fieldNames[] = {@"to", @"cc", @"bcc"};
unsigned int count;
while ((s = [enumerator nextObject]))
allRecipients = [NSMutableArray arrayWithCapacity: 16];
for (count = 0; count < 3; count++)
{
parser = [NGMailAddressParser mailAddressParserWithString: s];
addressList = [[parser parseAddressList] objectEnumerator];
while ((address = [addressList nextObject]))
[recipients addObject: [address address]];
recipients = [[self headersForKey: fieldNames[count]] objectEnumerator];
while ((s = [recipients nextObject]))
{
parser = [NGMailAddressParser mailAddressParserWithString: s];
addressList = [[parser parseAddressList] objectEnumerator];
while ((address = [addressList nextObject]))
[allRecipients addObject: [address address]];
}
}
return allRecipients;
}
- (NSArray *) allRecipients
- (NSArray *) allBareRecipients
{
NSMutableArray *recipients;
NSMutableArray *bareRecipients;
NSEnumerator *allRecipients;
NSString *recipient;
recipients = [NSMutableArray array];
bareRecipients = [NSMutableArray array];
[self _addRecipients: [[self headersForKey: @"to"] objectEnumerator]
toArray: recipients];
allRecipients = [[self allRecipients] objectEnumerator];
while ((recipient = [allRecipients nextObject]))
[bareRecipients addObject: [recipient pureEMailAddress]];
[self _addRecipients: [[self headersForKey: @"cc"] objectEnumerator]
toArray: recipients];
[self _addRecipients: [[self headersForKey: @"bcc"] objectEnumerator]
toArray: recipients];
return recipients;
return bareRecipients;
}
@end
+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>"];
+22 -6
View File
@@ -63,6 +63,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#import <NGMime/NGMimeBodyPart.h>
#import <NGMime/NGMimeFileData.h>
#import <NGMime/NGMimeType.h>
#import <NGMime/NGMimeHeaderFields.h>
#import <NGMime/NGMimeMultipartBody.h>
#import <NGMime/NGConcreteMimeType.h>
#import <NGMail/NGMimeMessageParser.h>
@@ -877,6 +878,8 @@ void handle_eas_terminate(int signum)
[self _ensureFolder: (SOGoMailFolder *)[accountFolder draftsFolderInContext: context]];
[self _ensureFolder: [accountFolder sentFolderInContext: context]];
[self _ensureFolder: (SOGoMailFolder *)[accountFolder trashFolderInContext: context]];
[self _ensureFolder: (SOGoMailFolder *)[accountFolder junkFolderInContext: context]];
[self _ensureFolder: (SOGoMailFolder *)[accountFolder templatesFolderInContext: context]];
}
allFoldersMetadata = [NSMutableArray array];
@@ -3381,7 +3384,8 @@ void handle_eas_terminate(int signum)
toRecipients: theRecipients
sender: from
withAuthenticator: authenticator
inContext: context];
inContext: context
systemMessage: NO];
if (error)
{
@@ -3617,7 +3621,7 @@ void handle_eas_terminate(int signum)
}
error = [self _sendMail: data
recipients: [message allRecipients]
recipients: [message allBareRecipients]
saveInSentItems: ([(id)[theDocumentElement getElementsByTagName: @"SaveInSentItems"] count] ? YES : NO)];
if (error)
@@ -4025,6 +4029,7 @@ void handle_eas_terminate(int signum)
for (j = 0; j < [aparts count]; j++)
{
apart = [aparts objectAtIndex: j];
if ([[[apart contentType] type] isEqualToString: @"text"] && [[[apart contentType] subType] isEqualToString: @"html"])
htmlPart = apart;
if ([[[apart contentType] type] isEqualToString: @"text"] && [[[apart contentType] subType] isEqualToString: @"plain"])
@@ -4033,12 +4038,23 @@ void handle_eas_terminate(int signum)
}
else
{
if ([[[part contentType] type] isEqualToString: @"text"] && [[[part contentType] subType] isEqualToString: @"html"])
if ([[(NGMimeContentDispositionHeaderField *)[part headerForKey: @"content-disposition"] type] hasPrefix: @"attachment"])
{
if ([[part body] isKindOfClass: [NSData class]] && ! [[[part contentType] type] isEqualToString: @"text"])
{
// Ensure base64 encoding of non-text parts - text parts are encoded individually.
[part setHeader: @"base64" forKey: @"content-transfer-encoding"];
[part setBody: [[part body] dataByEncodingBase64]];
[part setHeader: [NSString stringWithFormat:@"%d", (int)[[part body] length]]
forKey: @"content-length"];
}
[attachments addObject: part];
}
else if ([[[part contentType] type] isEqualToString: @"text"] && [[[part contentType] subType] isEqualToString: @"html"])
htmlPart = part;
else if ([[[part contentType] type] isEqualToString: @"text"] && [[[part contentType] subType] isEqualToString: @"plain"])
textPart = part;
else
[attachments addObject: part];
}
}
}
@@ -4178,7 +4194,7 @@ void handle_eas_terminate(int signum)
data = [generator generateMimeFromPart: messageToSend];
error = [self _sendMail: data
recipients: [messageFromSmartForward allRecipients]
recipients: [messageFromSmartForward allBareRecipients]
saveInSentItems: ([(id)[theDocumentElement getElementsByTagName: @"SaveInSentItems"] count] ? YES : NO)];
if (error)
+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: @""];
+522
View File
@@ -1,5 +1,527 @@
# 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.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)
### Enhancements
* **alarms:** Add possibility to use SMTP master account for system alarms. Fixes [#5565](https://bugs.sogo.nu/view.php?id=5565). ([53f9449](https://github.com/Alinto/sogo/commit/53f9449a51b574a15356191aabf6eca788af483e) [7faf4eb](https://github.com/Alinto/sogo/commit/7faf4eb2f419082660a4aa68d1c246f2e3100802) [8001e3f](https://github.com/Alinto/sogo/commit/8001e3f6ab4fabb2c196e18787343e39ffe4b65d))
* **core:** Add SOGoDisableSharing option to disable sharing for mail, contacts and calendar ([435495f](https://github.com/Alinto/sogo/commit/435495f007144cfa97e8e9eb1ccf5bcf582bcfe5))
* **eas:** Add SOGoEASDisableUI system parameter to remove EAS options in UI when ActiveSync is not used ([04e15b5](https://github.com/Alinto/sogo/commit/04e15b56953f8760d8ddfecc8fe72badd80b7c37))
* **mail:** Add punycode (RFC 3492) to encode domain with special characters ([e12583e](https://github.com/Alinto/sogo/commit/e12583eb4ea06b6d275701f680a1d20bbc32ff30) [0a9b3d6](https://github.com/Alinto/sogo/commit/0a9b3d6adf07b96160d2a0a7563e9e8362388d08) [39032ac](https://github.com/Alinto/sogo/commit/39032ac80fdd4eea9edf0de5d763351991905c64) [13178a1](https://github.com/Alinto/sogo/commit/13178a16f2594acb4264220c89d0bf5c4de3887a))
* **preferences:** Improve TOTP - add validation code in preferences before saving to ensure user add qr code in totp application ([0bd530a](https://github.com/Alinto/sogo/commit/0bd530ab64b0818aad30be4642d137a76a4f1b85))
### Bug Fixes
* **authentication:** Reduce Cookie user key len to avoid exceeding 4096 bytes. Users in chrome <= 75 could not login due to cookie of 4099 bytes ([842fa97](https://github.com/Alinto/sogo/commit/842fa97d37d89ae58eb6abe10ec7524eb7886a8e))
* **calendar:** Add confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Fixes [#5585](https://bugs.sogo.nu/view.php?id=5585) ([65d4c5c](https://github.com/Alinto/sogo/commit/65d4c5c4801cec3859db1605cbd9398657252c52) [bb4a88b](https://github.com/Alinto/sogo/commit/bb4a88b6df51f9b29907f4483b81812d99dbabcc) [64d817a](https://github.com/Alinto/sogo/commit/64d817ab0ddb0c82b6287328968c87d394a3b6b3))
* **calendar:** Fix duplicate event on Apple Calendar when creating a new reccurent event, inviting attendee and changing an occurence ([f158402](https://github.com/Alinto/sogo/commit/f15840217b8d15667ff583cf3f617cb494c4d334))
* **calendar:** Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes [#5639](https://bugs.sogo.nu/view.php?id=5639) ([ef53f6c](https://github.com/Alinto/sogo/commit/ef53f6c809fe4e7a62efaa11200d8de3bb10571a) [ba0d4a5](https://github.com/Alinto/sogo/commit/ba0d4a51c0612c082ea019b92649390b7c7bcdfd) [7e357f1](https://github.com/Alinto/sogo/commit/7e357f1bc9dcef07f0dc340500ae5f7acf9feae3) [a5347c7](https://github.com/Alinto/sogo/commit/a5347c70aa992b2b2982c3df102fb87683a52ef0) [7d72fe1](https://github.com/Alinto/sogo/commit/7d72fe12814d7693939b25450affb7935219fec2) [8680536](https://github.com/Alinto/sogo/commit/86805369a35b99b711cbe05592472f6410645c9c) [a7f3daa](https://github.com/Alinto/sogo/commit/a7f3daa33f50538f458fe8260f686a9d507e7e3e) [6ee8f76](https://github.com/Alinto/sogo/commit/6ee8f764e95c375b2f6a388b3e8b24c28ca6e9f5) [03e6d00](https://github.com/Alinto/sogo/commit/03e6d0012bc0d6ba4d8cb427f8d904a75d9ce036))
* **configure:** Prevent pulling in unnecessary vars ([b223fe0](https://github.com/Alinto/sogo/commit/b223fe0b869650108f994dcd40395f04f5cc3388)) (@dasJ)
* **core(js):** Removed es6 'const' for build issues with grunt ([5d6b40c](https://github.com/Alinto/sogo/commit/5d6b40c8cf6acdd0a078cc83b85cd080a5e61f2c))
* **dav:** Improve logging. Closes [#4190](https://bugs.sogo.nu/view.php?id=4190) ([1964ef0](https://github.com/Alinto/sogo/commit/1964ef03581947056807649fd46fa0d9a95f998e))
* **js:** Change grunt-contrib-uglify from 5.0.0 to 5.2.2 ([4d7a425](https://github.com/Alinto/sogo/commit/4d7a425428bcafca5b5b814aa5811c0c6a0ec7d7))
* **mail:** Fix images not displayed when forward / reply to a mail. Fixes [#3981](https://bugs.sogo.nu/view.php?id=3981) ([4dc8ef9](https://github.com/Alinto/sogo/commit/4dc8ef946dce1585c2774a07e2abd361c6c5e66c) [f5ed10b](https://github.com/Alinto/sogo/commit/f5ed10b00cbbdf24a06e90a33c2a7da927584171))
* **mail:** Fix segfault when TNEF does not get any data. Fixes [#4190](https://bugs.sogo.nu/view.php?id=4190) ([02f8550](https://github.com/Alinto/sogo/commit/02f855059babc7e01b25c1cf01d44dae52c777a1))
* **mail:** Store the Deleted flag in the correct (source) mailbox when moving mails across mailboxes ([a556e74](https://github.com/Alinto/sogo/commit/a556e742fbc23acc3aa1fe96ccb5bdc59f45b59a)) (@jkanefendt)
* **packaging:** Add MFA to Ubuntu Jammy ([66c728c](https://github.com/Alinto/sogo/commit/66c728ca8401c8c5304580a65f0ce97b1e8792bb))
* **packaging:** Add usr/share/doc/sogo/ for packaging. Fixes partially [#5698](https://bugs.sogo.nu/view.php?id=5698) ([7ea7572](https://github.com/Alinto/sogo/commit/7ea7572766e0eaca3bedd247d03fb6caee6c526d) [114c98c](https://github.com/Alinto/sogo/commit/114c98c32dc258cc0209ce5913507f426cb7e8d1))
* **packaging:** Check if there are sh files in usr/share/doc/sogo before applying chmod. Fixes partially [#5698](https://bugs.sogo.nu/view.php?id=5698) ([0d2f6d8](https://github.com/Alinto/sogo/commit/0d2f6d8c2a9ace58a5dd6f167e99ed5df493f4fc))
* **packaging:** Specify compression format for dpkg-deb ([63548a8](https://github.com/Alinto/sogo/commit/63548a84cf9c9b7defd17bf93f43ec0eb29eb673) [189144c](https://github.com/Alinto/sogo/commit/189144c531eca0ca1f0e3ded4109cc9da86ec52b) [5049423](https://github.com/Alinto/sogo/commit/5049423113dbd3fcba2a26bbfe5175afd9e886fe))
* **security:** Security fix for WSTG-INPV-02. Fix NSException where tried to modify NSDictionary. Closes [#5651](https://bugs.sogo.nu/view.php?id=5651). ([fe9ae12](https://github.com/Alinto/sogo/commit/fe9ae12e46a151ee5989ed1f0009bb81611a46bd))
* **ui:** Add error message on UI when too many mails are sent in short time. Fix fr translation. Fix documentation ([7ad7f5e](https://github.com/Alinto/sogo/commit/7ad7f5efa6180d9ab110b624a06ea53030d1ae6e))
* **ui:** Make the login page honor the color theme ([607bc08](https://github.com/Alinto/sogo/commit/607bc08c928ebdfa29bbdc0bc2880e5bdb214632)), closes [#5687](https://bugs.sogo.nu/view.php?id=5687) (@Alex Vogt)
### Localization
* **ar:** Update Arabic translations ([3714b14](https://github.com/Alinto/sogo/commit/3714b147edbe3af4a0e4c076eb50c357e5cb6a6d))
* **bg_BG:** Update Bulgarian translations ([982b1ec](https://github.com/Alinto/sogo/commit/982b1ec1f668c07501853ce79133c1a99f1ace7b))
* **bs_BA:** Update Bosnian translations ([ddf5527](https://github.com/Alinto/sogo/commit/ddf55270a6f6d19244ceb4f27c7b1ef6495f16c1))
* **ca:** Update Catalan translations ([485f40c](https://github.com/Alinto/sogo/commit/485f40cca4e2be4a620a27f542f9af4d0ab67bfa))
* **cs:** Update Czech translations ([4f7e04d](https://github.com/Alinto/sogo/commit/4f7e04d5b46659eb1e06f97cff67aa7abe14397c))
* **cy:** Update Welsh translations ([b2873bf](https://github.com/Alinto/sogo/commit/b2873bf5f14dd442d099d341e795263ff4da1355))
* **da_DK:** Update Danish translations ([ecd1344](https://github.com/Alinto/sogo/commit/ecd13440656a090c7bae41dd7d2bbfe521788ef5))
* **de:** Update German translations ([a3c9044](https://github.com/Alinto/sogo/commit/a3c9044b7eafbf4cebee82381f8fdae0c20db23a) [2c6f522](https://github.com/Alinto/sogo/commit/2c6f5225d4d3228e48df9f08661ee8c330dc8ffd))
* **es_AR:** Update SpanishArgentina translations ([d6a63bd](https://github.com/Alinto/sogo/commit/d6a63bd7bffa2ca3e23589d9d43a48dc69d313d5))
* **es_ES:** Update SpanishSpain translations ([43d925b](https://github.com/Alinto/sogo/commit/43d925b4efe8824f3c485beedcf758517716535f))
* **eu:** Update Basque translations ([9192f2b](https://github.com/Alinto/sogo/commit/9192f2b76d2d9d889717d84627e96ea569ab2080))
* **fi:** Update Finnish translations ([7b66aa9](https://github.com/Alinto/sogo/commit/7b66aa9dad428b71ec07f3deb8499881a15fc597))
* **he:** Update Hebrew translations ([38ebd5a](https://github.com/Alinto/sogo/commit/38ebd5a38fa0132905d846e1b01bdfda0ae7fd71))
* **hr_HR:** Update Croatian translations ([e16f5fa](https://github.com/Alinto/sogo/commit/e16f5fa0f9b6116d72929558827d9ea4417b2b57))
* **hu:** Update Hungarian translations ([cdbe91d](https://github.com/Alinto/sogo/commit/cdbe91decf6232125eab0f1964615ec3d1fad5ea))
* **id_ID:** Update Indonesian translations ([12c32ef](https://github.com/Alinto/sogo/commit/12c32ef1d2c124d7bd67b8e974b5b1089a77ff05))
* **is:** Update Icelandic translations ([7cbef4b](https://github.com/Alinto/sogo/commit/7cbef4bdd4d1d3efb7f1d51b72074b4882d4cb26))
* **it:** Update Italian translations ([561ab7e](https://github.com/Alinto/sogo/commit/561ab7e866ec7bc88debc10787e6fe33c04ff7d1))
* **ja:** Update Japanese translations ([44ea7a6](https://github.com/Alinto/sogo/commit/44ea7a684e5a134d3c1b9439733ca6135e89e0c8))
* **kk:** Update Kazakh translations ([d860a3c](https://github.com/Alinto/sogo/commit/d860a3c016fc7471b5008383decd9dbad5e43f9e))
* **lt:** Update Lithuanian translations ([dd0d9bd](https://github.com/Alinto/sogo/commit/dd0d9bd5fecc83067bf491469261e332fac5142f))
* **lv:** Update Latvian translations ([b9eacdb](https://github.com/Alinto/sogo/commit/b9eacdbe4928bba293384c69e2284357644bd8d8))
* **mk_MK:** Update Macedonian translations ([deef331](https://github.com/Alinto/sogo/commit/deef3310293154e1a6794af62b2ef3e94fc0b9cf))
* **nb_NO:** Update Norwegian Bokmål translations ([e4534c0](https://github.com/Alinto/sogo/commit/e4534c0bfdd4fc95ba4f707ac037b20980eda24e))
* **nl:** Update Dutch translations ([6c816cb](https://github.com/Alinto/sogo/commit/6c816cba6bcc53eb0e1c645c7c79fd2359f10412))
* **nn_NO:** Update NorwegianNynorsk translations ([7d60dbb](https://github.com/Alinto/sogo/commit/7d60dbb2c6883a64d2febd8d6d1c943ace0befd6))
* **pl:** Update Polish translations ([62edb09](https://github.com/Alinto/sogo/commit/62edb09b9c4b3dcc1b6c8f1704031831cf704d64))
* **pt_BR:** Update Portuguese (Brazil) translations ([2878483](https://github.com/Alinto/sogo/commit/28784836c8a0f5f8178241dd98ce1eb883b29fcb) [d2a5fd0](https://github.com/Alinto/sogo/commit/d2a5fd0b2d7f69e1db755f11940c161277c5e909))
* **ro_RO:** Update Romanian translations ([0d21123](https://github.com/Alinto/sogo/commit/0d21123def014b8d686bd9a68731610033947516))
* **ru:** Update Russian translations ([ac8aeec](https://github.com/Alinto/sogo/commit/ac8aeec83f97be65c51735b00e2e244cc15e05b3))
* **sk:** Update Slovak translations ([d185815](https://github.com/Alinto/sogo/commit/d18581514eece8a0d88188612a9322bd64aedee1))
* **sl_SI:** Update Slovenian translations ([5a67603](https://github.com/Alinto/sogo/commit/5a676038163dc22c26a7b77dec01245e9d804716))
* **sr_ME@latin:** Update Montenegrin translations ([f66992c](https://github.com/Alinto/sogo/commit/f66992cef416b561a547a1c60630d81843b13b5f))
* **sr:** Update Serbian translations ([1489b7d](https://github.com/Alinto/sogo/commit/1489b7d21933f754d47100780c327469f09f1448))
* **sv:** Update Swedish translations ([a0d047a](https://github.com/Alinto/sogo/commit/a0d047ad076fff11d2651d2478ba9566e12c984a))
* **tr_TR:** Update TurkishTurkey translations ([f87a855](https://github.com/Alinto/sogo/commit/f87a8557bdaa76cd60de3bb52198d42fe28a3bec))
* **uk:** Update Ukrainian translations ([90b174b](https://github.com/Alinto/sogo/commit/90b174bda1600342ba8f31806fde6031577dde8b))
* **zh_CN:** Update ChineseChina translations ([1344f2a](https://github.com/Alinto/sogo/commit/1344f2a7dd8f9354e12b2cb541dc86155e245870))
* **zh_TW:** Update ChineseTaiwan translations ([245ede9](https://github.com/Alinto/sogo/commit/245ede949e977b347c071051930070fdb10c2f88))
## [5.8.0](https://github.com/Alinto/sogo/compare/SOGo-5.7.1...SOGo-5.8.0) (2022-11-29)
### Features
* **password-recovery:** Add password recovery with secret question or secondary email ([656807b](https://github.com/Alinto/sogo/commit/656807b77d393c5d6f67915eb7dce54f53812791) [77062be](https://github.com/Alinto/sogo/commit/77062befc56252bef059dafe3751bcd049028cf0) [33940b1](https://github.com/Alinto/sogo/commit/33940b14ea4992ac62bd14d86942b898d3dd8fec) [e269df8](https://github.com/Alinto/sogo/commit/e269df8c6ee186b9efd9be9fd2d200e65304f063) [b7531bc](https://github.com/Alinto/sogo/commit/b7531bc59b0e05319952256de1065dbc29fa8ba9) [c4dd695](https://github.com/Alinto/sogo/commit/c4dd695b12cf707d8f916373e11957bc105125fd) [1ea8b9f](https://github.com/Alinto/sogo/commit/1ea8b9fb1f8458cb636a3be96eb29d8f89d5bbef) [2e1b22c](https://github.com/Alinto/sogo/commit/2e1b22cb230d84e87b669fda4f143329b248a624) [440a15b](https://github.com/Alinto/sogo/commit/440a15ba9858306d78bcbfdba6f94d0a84aaf6fb) [58540f1](https://github.com/Alinto/sogo/commit/58540f15e21ac7cb54e52881b693feb175517cf4) [d363474](https://github.com/Alinto/sogo/commit/d3634747d52cfa40e9bd6f4064e377fe1eec65ed) [9b023f4](https://github.com/Alinto/sogo/commit/9b023f43d516d31dcb13e4756cd0bb9a3c2ee8b7) [18c92da](https://github.com/Alinto/sogo/commit/18c92dac3195e037609286538c2914a76032467f) [d50080e](https://github.com/Alinto/sogo/commit/d50080ea5bf12a9b5e000ea595303f612d803679))
### Bug Fixes
* **addressbook:** Fix invalid template ([04dd78d](https://github.com/Alinto/sogo/commit/04dd78d738e3c9017063a66b58a59116d3438474))
* **addressbook:** Fix NSException on address book where uppercaseString is called on data ([c62b043](https://github.com/Alinto/sogo/commit/c62b043e26111ee4d6073b9b37931e15f3b95753))
* **calendar(js):** destination calendars of new components ([3eeebbc](https://github.com/Alinto/sogo/commit/3eeebbc83be064e65138ee6f777e1eaf0e2b5931)), closes [#5581](https://bugs.sogo.nu/view.php?id=5581)
* **calendar:** Update c_startdate field when updating event. Fixes [#4376](https://bugs.sogo.nu/view.php?id=4376) ([549d6a8](https://github.com/Alinto/sogo/commit/549d6a8463a1eb971f892a44c587bc28d8f669e0))
* **core:** Fix NSException when c_content is NULL. Closes [#5644](https://bugs.sogo.nu/view.php?id=5644). Original fix by [@jvdsn](https://github.com/jvdsn). ([2786064](https://github.com/Alinto/sogo/commit/27860648c18a3557b5eeacc0999a95dfd9ff63d8))
* **mail(js):** fix validation of email addresses. Closes [#5594](https://bugs.sogo.nu/view.php?id=5594) ([d194b1e](https://github.com/Alinto/sogo/commit/d194b1e921f5cdf864cc5d4202e2a1c6ffb5ab51))
* **security:** Security fix for WSTG-INPV-02. Add XSS protection. Fixes [#5642](https://bugs.sogo.nu/view.php?id=5642). ([efac49a](https://github.com/Alinto/sogo/commit/efac49ae91a4a325df9931e78e543f707a0f8e5e) [f5c6fcc](https://github.com/Alinto/sogo/commit/f5c6fcc3508312d47cc581059d8f3a4fe0d426a2) [dcbfd83](https://github.com/Alinto/sogo/commit/dcbfd830d46f047a911c0f028a8686ba6ef889b0) [714acfc](https://github.com/Alinto/sogo/commit/714acfc838ab26fc9de52cbf382faa410708ab4c) [1e0f5f0](https://github.com/Alinto/sogo/commit/1e0f5f00890f751e84d67be4f139dd7f00faa5f3) [b1f8489](https://github.com/Alinto/sogo/commit/b1f84891b04122344c8e4cce7ed8b9888811250b) [6971ebd](https://github.com/Alinto/sogo/commit/6971ebd2d191e414811b808face33aba1e850bed) [a010f62](https://github.com/Alinto/sogo/commit/a010f629f0493464e097c6ee7630cbd059eab24c))
* **ui:** Change active user name on top left with primary identity ([49879ef](https://github.com/Alinto/sogo/commit/49879efbc666b80e99d2b6d70d99df3f6612871c) [26b9429](https://github.com/Alinto/sogo/commit/26b9429396df8ade2978111d9b66bcdcf5528beb))
* **eas:** Use bare email address. Closes [#5612](https://bugs.sogo.nu/view.php?id=5612) and [#5640](https://bugs.sogo.nu/view.php?id=5640) ([2d9a709](https://github.com/Alinto/sogo/commit/2d9a70944beb3b43bdc506694286bc833da971e4) [e1c7e32](https://github.com/Alinto/sogo/commit/e1c7e32f84811197582bd14b0080f6ae2f7d3a82))
* **eas:** Ensure correct encoding of attachments. Closes [#5330](https://bugs.sogo.nu/view.php?id=5330) ([dff907a](https://github.com/Alinto/sogo/commit/dff907a158f9b8d7d2ca69e2ad33c7a4dd562abf))
* **eas:** Ensure Templates and Junk folder exits. Closes [#5626](https://bugs.sogo.nu/view.php?id=5626) ([2ffe3d7](https://github.com/Alinto/sogo/commit/2ffe3d79d2ffd62b0be22522e17ab9b8d9de1eea))
### Enhancements
* **mail:** Improve IMAP fetch sorting using NSDictionary keys instead of indexOfObject ([40b5c09](https://github.com/Alinto/sogo/commit/40b5c0918a9ddfea629f3a0d36bc908f94696a3a) [48c7375](https://github.com/Alinto/sogo/commit/48c7375544d882e6f594aca14d1c25dfc668ed4b) [60ec315](https://github.com/Alinto/sogo/commit/60ec3152e8f50e1d13b3ab0a553e8a3b8195c908) [38e886a](https://github.com/Alinto/sogo/commit/38e886a3e0c6c8986fef4a7b170f0c225e4ef5df))
* **calendar:** Add SOGoDisableOrganizerEventCheck parameter - this parameter is used to avoid checking calendar event's organizer ([cddfdb9](https://github.com/Alinto/sogo/commit/cddfdb90f9c2bf5d61db619899ccce280ab13419))
* **calendar:** Refresh data when clicking on 'today' ([5fb82fe](https://github.com/Alinto/sogo/commit/5fb82fe414ed6cbac5f1396078ec87e87691123b))
* **login:** Add button to discover password ([7bfa900](https://github.com/Alinto/sogo/commit/7bfa900ae10eb9c7fe7aa6bbbf0f7c600ce57ccb))
### Localization
* **da_DK:** Update Danish translations ([37291fa](https://github.com/Alinto/sogo/commit/37291facc73fa9600075ef677d47b09ff75e9d2c) [0409ee3](https://github.com/Alinto/sogo/commit/0409ee37be46c24ecffea640fe72774432492ec8))
* **fr:** Update French translations ([4c01ea2](https://github.com/Alinto/sogo/commit/4c01ea210ed9d0e67763ec941cf33b7f76087690))
* **nb_NO:** Update Norwegian Bokmål translations ([119e387](https://github.com/Alinto/sogo/commit/119e3870cf961b35778af745a9da3e3e41185214) [57fb622](https://github.com/Alinto/sogo/commit/57fb62244d4a494b867226010541fcb6fd20a7d9) [96cd188](https://github.com/Alinto/sogo/commit/96cd1880dac59d0bfc6af4e87598b1c8b15d20c0) [0cd7a17](https://github.com/Alinto/sogo/commit/0cd7a170a0e78726fa61970ceb0169caff28a0ce))
* **sr:** Update Serbian translations ([e51aee8](https://github.com/Alinto/sogo/commit/e51aee8ce0a9276c5ed5b5c9059641b44617bc9d))
### [5.7.1](https://github.com/Alinto/sogo/compare/SOGo-5.7.0...SOGo-5.7.1) (2022-08-17)
### Enhancements
* **core:** IPv6 support ([edd64a3](https://github.com/Alinto/sogo/commit/edd64a396ef7a7227d5c45cc1deb61ef3e2b6112))
### Bug Fixes
* **addressbook(dav):** improve handling of addressbook-query ([0720dc4](https://github.com/Alinto/sogo/commit/0720dc44fdd01b189902b189ff50dfb0549b0a8a))
* **calendar:** update all quick fields when updating event ([a6f7c1e](https://github.com/Alinto/sogo/commit/a6f7c1ea61b8d4d68042e6a1fb15f43645a26f55)), closes [#5546](https://bugs.sogo.nu/view.php?id=5546)
* **calendar:** remove time from until date of rrule of all-day event ([3f7fef0](https://github.com/Alinto/sogo/commit/3f7fef0788caca8ef899db69d7636fc31f4ada8e))
* **calendar(js):** conditional display of edit and delete buttons ([16459c7](https://github.com/Alinto/sogo/commit/16459c7b3d22ecf6eae5850277992d866575e539))
* **core:** don't remove double quotes when parsing versit strings ([6bed6c0](https://github.com/Alinto/sogo/commit/6bed6c0e20bb1eec8968e3823d16c2f5002333b5)), closes [#3530](https://bugs.sogo.nu/view.php?id=3530) [#3930](https://bugs.sogo.nu/view.php?id=3930)
* **core:** don't remove double quotes when parsing versit strings ([ebf032e](https://github.com/Alinto/sogo/commit/ebf032ee6bc7efa0a873e08ebd8b700dc5bb7bc6) [d99aa82](https://github.com/Alinto/sogo/commit/d99aa82a31d4f9e1a0f9f9173fcf4b9ea0b18653)), closes [#3530](https://bugs.sogo.nu/view.php?id=3530)
* **core:** handle argon2i password scheme ([2f9f610](https://github.com/Alinto/sogo/commit/2f9f6102108e68e866e5ef9db34b3cf291c57bec)), closes [#5531](https://bugs.sogo.nu/view.php?id=5531)
* **dav:** return 405 when collection already exists ([95eecc4](https://github.com/Alinto/sogo/commit/95eecc402ad0060b4656cf9d1280a0690fcc9a2d)), closes [/datatracker.ietf.org/doc/html/rfc4918#section-9](https://bugs.sogo.nu/view.php?id=section-9)
* **i18n:** new localized strings for SQL-based password policies ([5e6ad77](https://github.com/Alinto/sogo/commit/5e6ad77d4ca0ac53dd7c9efb53469dd5129767f2))
* **mail(js):** add CKEditor plugins emoji and bidi ([e18dc2c](https://github.com/Alinto/sogo/commit/e18dc2cd5ac8a0de5b9f18147e62efb216484e96))
* **mail(js):** handle paste action from contextual menu ([efe78c5](https://github.com/Alinto/sogo/commit/efe78c5179f43c1d7de5a8be95682bc855e45667)), closes [#5488](https://bugs.sogo.nu/view.php?id=5488)
* **mail(js):** resolve sub mailboxes in global search ([407bc53](https://github.com/Alinto/sogo/commit/407bc538df8028316f84149485425de2fbc93c96)), closes [#5559](https://bugs.sogo.nu/view.php?id=5559)
* **mail:** use encoding from MIME part ([27d45b6](https://github.com/Alinto/sogo/commit/27d45b6d76bb094c916f8a0e3f50b7ce628fbbd6))
* **preferences(js):** don't filter vacation start date ([2ae03d5](https://github.com/Alinto/sogo/commit/2ae03d50953b04345fe17cc4641ab095f5e2e2e6))
* **preferences:** regex in Sieve scripts are now case sensitive ([adfd175](https://github.com/Alinto/sogo/commit/adfd17568136c2aea007881a82f5c65d43e0211d)), closes [#5561](https://bugs.sogo.nu/view.php?id=5561)
* **web(js):** improve validation of email addresses ([67ccf74](https://github.com/Alinto/sogo/commit/67ccf748edcec8d495de35f431d7d0f3cf35fc6e))
### Localization
* **fr:** Update French translations ([a418baa](https://github.com/Alinto/sogo/commit/a418baa2762fd1000ad4782baf895315e48f5d76))
* **hu:** Update Hungarian translations ([abc2df0](https://github.com/Alinto/sogo/commit/abc2df0da0a14bacb7df28c2f41674401c33c285))
* **kk:** add Kazakh translation ([a667c69](https://github.com/Alinto/sogo/commit/a667c69f3c600c47cba0bd4b846b100633852ac9))
* **kk:** Add Kazakh translation by Nazym Idrissova ([d1971b7](https://github.com/Alinto/sogo/commit/d1971b76e2631e3d44b0af0eff33437de0127fe2))
* **Password policies** Add constants to make password policies localizable ([5e6ad77](https://github.com/Alinto/sogo/commit/5e6ad77d4ca0ac53dd7c9efb53469dd5129767f2))
## [5.7.0](https://github.com/inverse-inc/sogo/compare/SOGo-5.6.0...SOGo-5.7.0) (2022-06-10)
### Features
+31726 -16078
View File
File diff suppressed because it is too large. Load diff
+2 -2
View File
@@ -8,7 +8,7 @@ HTML = $(patsubst %.asciidoc,%.html, $(ASCIIDOCS))
asciidoctor-pdf \
-a pdf-fontsdir=fonts \
-a release_version=`git describe --abbrev=0 --tags | cut -d'-' -f 2` \
-a release_month=`date +%B` \
-a release_month=`LANG=en_US.UTF-8 date +%B` \
-a pdf-theme=asciidoctor-pdf-theme.yml \
--trace \
$<
@@ -17,7 +17,7 @@ HTML = $(patsubst %.asciidoc,%.html, $(ASCIIDOCS))
asciidoctor \
-D . \
-a release_version=`git describe --abbrev=0 --tags | cut -d'-' -f 2` \
-a release_month=`date +%B` \
-a release_month=`LANG=en_US.UTF-8 date +%B` \
-n \
$<
File diff suppressed because it is too large. Load diff
@@ -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
------------
@@ -46,7 +46,7 @@ device, or Outlook 2013
SOGo is developed by a community of developers located mainly in North
America and Europe. More information can be found on
http://www.sogo.nu/.
https://www.sogo.nu/.
Installation
------------
@@ -167,7 +167,7 @@ For example, one would replace:
by:
<Seq about="http://inverse.ca/sogo-integrator/extensions" isi:updateURL="https://sogo.acme.com/plugins/updates.php?plugin=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;platform=%PLATFORM%">
<Seq about="https://sogo.nu" isi:updateURL="https://sogo.acme.com/plugins/updates.php?plugin=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;platform=%PLATFORM%">
if the SOGo server is accessible from the following URL:
@@ -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
------------
@@ -50,7 +50,7 @@ https://www.facebook.com/caldavsynchronizer/[CalDav Synchronizer on Facebook]
Enterprise Support
~~~~~~~~~~~~~~~~~~
Inverse (http://inverse.ca/[http://inverse.ca]) offers professional services around SOGo to help organizations deploy the solution and
Alinto (https://alinto.com/[http://alinto.com]) offers professional services around SOGo to help organizations deploy the solution and
migrate from their legacy systems.
For enterprise support on the integration between SOGo and Microsoft Outlook using the Outlook CalDav Synchronizer, please visit https://caldavsynchronizer.org/enterprise
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

File renamed without changes.
@@ -5,8 +5,9 @@
This file is part of the SOGo project.
Authors:
- Inverse inc. <info@inverse.ca>
- Alinto <contact@sogo.nu>
Copyright (C) 2008-2018 Inverse inc.
Copyright (C) 2008-2022 Inverse inc. / Alinto
License: GFDL 1.2 or later. http://www.gnu.org/licenses/fdl.html
////
@@ -22,6 +23,6 @@ https://sogo.nu/support/faq.html
You can also read the mailing archives or post your questions to it. For
details, see :
https://lists.inverse.ca/sogo
https://mailing.sogo.nu/sympa/info/users
// vim: set syntax=asciidoc tabstop=2 shiftwidth=2 expandtab:
@@ -5,8 +5,9 @@
This file is part of the SOGo project.
Authors:
- Inverse inc. <info@inverse.ca>
- Alinto <contact@sogo.nu>
Copyright (C) 2008-2022 Inverse inc.
Copyright (C) 2008-2022 Inverse inc. / Alinto
License: GFDL 1.2 or later. http://www.gnu.org/licenses/fdl.html
////
@@ -15,14 +16,14 @@ Commercial Support and Contact Information
------------------------------------------
For any questions or comments, do not hesitate to contact us by writing
an email to support@inverse.ca.
an email to contact@sogo.nu.
Inverse (https://inverse.ca/) offers professional services around SOGo
Alinto (https://alinto.com) offers professional services around SOGo
to help organizations deploy the solution, customize, migrate versions or
from another system, performance tuning or aligning with best practices.
Hourly rates or support packages are offered to best suit your needs.
Please visit https://inverse.ca/ for details.
Please visit https://alinto.com/ for details.
// vim: set syntax=asciidoc tabstop=2 shiftwidth=2 expandtab:
+3 -2
View File
@@ -1,6 +1,6 @@
Version {release_version} - {release_month} {docyear}
Copyright © {docyear} Inverse inc.
Copyright © {docyear} Inverse inc. / Alinto
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
@@ -10,4 +10,5 @@ Copyright © Łukasz Dziedzic, http://www.latofonts.com, with Reserved Font Name
Copyright © Raph Levien, http://levien.com/, with Reserved Font Name: "Inconsolata".
image::images/inverse-logo.jpg[width="25%",pdfwidth="50%",align="right"]
image::images/inverse-logo.jpeg[width="25%",pdfwidth="50%",align="right"]
image::images/alinto.small.png[width="25%",pdfwidth="50%",align="right"]
@@ -5,8 +5,9 @@
This file is part of the SOGo project.
Authors:
- Inverse inc. <info@inverse.ca>
- Alinto <contact@sogo.nu>
Copyright (C) 2008-2022 Inverse inc.
Copyright (C) 2008-2022 Inverse inc. / Alinto
License: GFDL 1.2 or later. http://www.gnu.org/licenses/fdl.html
////
+2 -1
View File
@@ -5,8 +5,9 @@
This file is part of the SOGo project.
Authors:
- Inverse inc. <info@inverse.ca>
- Alinto <contact@sogo.nu>
Copyright (C) 2008-2018 Inverse inc.
Copyright (C) 2008-2022 Inverse inc. / Alinto
License: GFDL 1.2 or later. http://www.gnu.org/licenses/fdl.html
////
+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
{
+13 -11
View File
@@ -12,18 +12,18 @@ 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/inverse-inc/sogo](https://github.com/inverse-inc/sogo)
* [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/inverse-inc/sope/archive/master.zip](https://github.com/inverse-inc/sope/archive/master.zip)
* [https://github.com/inverse-inc/sogo/archive/master.zip](https://github.com/inverse-inc/sogo/archive/master.zip)
* [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/inverse-inc/sogo-connector](https://github.com/inverse-inc/sogo-connector)
* [https://github.com/Alinto/sogo-connector](https://github.com/Alinto/sogo-connector)
Please refer to the [FAQ](https://sogo.nu/support.html#/faq) for [compilation instructions](https://sogo.nu/support/faq/how-do-i-compile-sogo.html).
@@ -31,7 +31,7 @@ Please refer to the [FAQ](https://sogo.nu/support.html#/faq) for [compilation in
SOGo and its associated components are available in various languages. The following list describes the official translations alongside their maintainers:
* [en] English - [Inverse inc.](https://www.inverse.ca/)
* [en] English - [Alinto](https://www.alinto.com)
* [ar] Arabic - Anass Ahmed
* [eu] Basque - Gorka Gonzalez
* [bs_BA] Bosnian - Refik Bećirović
@@ -45,7 +45,8 @@ SOGo and its associated components are available in various languages. The follo
* [da_DK] Danish (Denmark) - Altibox
* [nl] Dutch - Roel van Os
* [fi] Finnish - Kari Salmu
* [fr] French - [Inverse](https://www.inverse.ca/)
* [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,11 +54,12 @@ SOGo and its associated components are available in various languages. The follo
* [is] Icelandic - Anna Jonna Armannsdottir
* [it] Italian - Alessio Fattorini
* [jp] Japanese - Ryo Yamamoto
* [kk] Kazakh - Nazym Idrissova
* [lv] Latvian - Juris Balandis
* [lt] Lithuanian - Mantas Liobė
* [mk_MK] Macedonian - Miroslav Jovanovic
* [sr_ME] Montenegrin - Ivan Pleskonjić
* [nb_NO] Norwegian (Bokmål) - Jan Ivar Karlsen
* [nb_NO] Norwegian (Bokmål) - Jan Ivar Karlsen / Altibox
* [nn_NO] Norwegian (Nynorsk) - Altibox
* [pl] Polish - Paweł Bogusławski
* [pt] Portuguese - Eduardo Crispim
@@ -74,4 +76,4 @@ SOGo and its associated components are available in various languages. The follo
* [uk] Ukrainian - Oleksa Stasevych
* [cy] Welsh - Iona Bailey
If you would like to translate the software in an other language, please consult the [FAQ](https://sogo.nu/support/faq/how-to-translate-sogo-in-another-language.html). You can also subscribe to the SOGo i18n mailing list to follow string additions or changes. To subscribe to i18n@sogo.nu, send an email to i18n-request@sogo.nu with SUBSCRIBE i18n as the subject. Archived posts are [available online](https://lists.inverse.ca/sogo/arc/i18n).
If you would like to translate the software in an other language, please consult the [FAQ](https://sogo.nu/support/faq/how-to-translate-sogo-in-another-language.html).
+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
+18 -1
View File
@@ -987,7 +987,7 @@ andAttribute: (EOAttribute *)_attribute
NSDictionary *currentRow;
NSNumber *storedVersion;
BOOL isNewRecord, hasInsertDelegate, hasUpdateDelegate;
NSCalendarDate *nowDate;
NSCalendarDate *nowDate, *startDate;
NSNumber *now;
EOEntity *quickTableEntity, *storeTableEntity;
NSArray *rows;
@@ -1002,6 +1002,7 @@ andAttribute: (EOAttribute *)_attribute
error = nil;
nowDate = [NSCalendarDate date];
now = [NSNumber numberWithUnsignedInt:[nowDate timeIntervalSince1970]];
startDate = nil;
if (doLogStore)
[self logWithFormat:@"should store content: '%@'\n%@", _name, _content];
@@ -1071,6 +1072,7 @@ andAttribute: (EOAttribute *)_attribute
[contentRow setObject:_name forKey:@"c_name"];
[contentRow setObject:now forKey:@"c_lastmodified"];
if (isNewRecord)
{
[contentRow setObject:now forKey:@"c_creationdate"];
@@ -1141,6 +1143,21 @@ andAttribute: (EOAttribute *)_attribute
}
else
{
// Update c_startdate for appointments
if ([theComponent respondsToSelector:@selector(startDate)]) {
NSTimeInterval t;
startDate = [theComponent startDate];
t = [startDate timeIntervalSince1970];
if (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"];
}
}
}
if (!ofFlags.sameTableForQuick)
error = (hasUpdateDelegate
? [quickChannel updateRowX: quickRow
+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
+1 -1
View File
@@ -59,7 +59,7 @@
&& ![subValue hasSuffix: @"\""])
subValue = [NSString stringWithFormat: @"\"%@\"", subValue];
escaped = [subValue escapedForCards];
escaped = [subValue escapedForCardsAsAttributes: asAttributes];
if ([escaped length] > 0)
{
[aString appendString: escaped];
+1 -1
View File
@@ -34,7 +34,7 @@
- (NSString *) foldedForVersitCards;
- (NSArray *) asCardAttributeValues;
- (NSString *) escapedForCards;
- (NSString *) escapedForCardsAsAttributes: (BOOL) asAttributes;
- (NSString *) rfc822Email;
- (NSTimeInterval) durationAsTimeInterval;
+50 -47
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;
@@ -83,19 +91,21 @@
newCurrentChar = newPart;
isEscaped = NO;
isQuoted = NO;
isQuoted = (max > 1 && [self hasPrefix: @"\""] && [self hasSuffix: @"\""]);
if (isQuoted)
{
// Remove leading and trailing quotes
currentChar++;
lastChar--;
}
while (currentChar < lastChar)
{
if (isQuoted)
{
if (*currentChar == '"')
isQuoted = NO;
else
{
*newCurrentChar = *currentChar;
newCurrentChar++;
}
// Don't escape characters
*newCurrentChar = *currentChar;
newCurrentChar++;
}
else if (isEscaped)
{
@@ -114,16 +124,14 @@
}
else
{
if (*currentChar == '"')
isQuoted = YES;
else if (*currentChar == '\\')
if (*currentChar == '\\')
isEscaped = YES;
else if (*currentChar == ',')
{
newString = [[NSString alloc]
initWithCharactersNoCopy: newPart
length: (newCurrentChar - newPart)
freeWhenDone: YES];
// The comma is a value delimiter
newString = [[NSString alloc] initWithCharactersNoCopy: newPart
length: (newCurrentChar - newPart)
freeWhenDone: YES];
[values addObject: newString];
[newString release];
newPart = NSZoneMalloc (NULL, max * sizeof (unichar));
@@ -138,10 +146,9 @@
currentChar++;
}
newString = [[NSString alloc]
initWithCharactersNoCopy: newPart
length: (newCurrentChar - newPart)
freeWhenDone: YES];
newString = [[NSString alloc] initWithCharactersNoCopy: newPart
length: (newCurrentChar - newPart)
freeWhenDone: YES];
[values addObject: newString];
[newString release];
@@ -150,7 +157,7 @@
return values;
}
- (NSString *) escapedForCards
- (NSString *) escapedForCardsAsAttributes: (BOOL) asAttributes
{
NSMutableString *string;
unsigned int len, i;
@@ -165,33 +172,29 @@
{
c = [self characterAtIndex: i];
if (isQuoted)
{
if (c == '"')
isQuoted = NO;
[string appendFormat: @"%C", c];
continue;
}
if (!isQuoted || !asAttributes)
switch (c)
{
case ',':
[string appendString: @"\\,"];
continue;
//case ':':
// [string appendString: @"\\:"];
//break;
case ';':
[string appendString: @"\\;"];
continue;
}
switch (c)
{
case '"':
isQuoted = YES;
isQuoted = !isQuoted;
[string appendFormat: @"%C", c];
break;
case '\\':
[string appendString: @"\\\\"];
break;
case ',':
[string appendString: @"\\,"];
break;
//case ':':
// [string appendString: @"\\:"];
//break;
case ';':
[string appendString: @"\\;"];
break;
case'\n':
[string appendString: @"\\n"];
break;
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Abidjan
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Abidjan
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Algiers
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Algiers
BEGIN:STANDARD
TZNAME:CET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Bissau
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Bissau
BEGIN:STANDARD
TZNAME:GMT
+12 -4
View File
@@ -1,15 +1,23 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Cairo
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Cairo
BEGIN:DAYLIGHT
TZNAME:EEST
TZOFFSETFROM:+0200
TZOFFSETTO:+0300
DTSTART:19700424T000000
RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=-1FR
END:DAYLIGHT
BEGIN:STANDARD
TZNAME:EET
TZOFFSETFROM:+0200
TZOFFSETFROM:+0300
TZOFFSETTO:+0200
DTSTART:19700101T000000
DTSTART:19701030T000000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1FR
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
+2 -2
View File
@@ -1,10 +1,10 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Casablanca
TZUNTIL:20870511T020001Z
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Casablanca
BEGIN:STANDARD
TZNAME:+01
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Ceuta
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Ceuta
BEGIN:DAYLIGHT
TZNAME:CEST
+2 -2
View File
@@ -1,10 +1,10 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/El_Aaiun
TZUNTIL:20870511T020001Z
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/El_Aaiun
BEGIN:STANDARD
TZNAME:+01
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Johannesburg
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Johannesburg
BEGIN:STANDARD
TZNAME:SAST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Juba
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Juba
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Khartoum
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Khartoum
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Lagos
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Lagos
BEGIN:STANDARD
TZNAME:WAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Maputo
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Maputo
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Monrovia
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Monrovia
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Nairobi
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Nairobi
BEGIN:STANDARD
TZNAME:EAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Ndjamena
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Ndjamena
BEGIN:STANDARD
TZNAME:WAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Sao_Tome
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Sao_Tome
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Tripoli
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Tripoli
BEGIN:STANDARD
TZNAME:EET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Tunis
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Tunis
BEGIN:STANDARD
TZNAME:CET
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Africa/Windhoek
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:Africa/Windhoek
BEGIN:STANDARD
TZNAME:CAT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Adak
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Adak
BEGIN:DAYLIGHT
TZNAME:HDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Anchorage
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Anchorage
BEGIN:DAYLIGHT
TZNAME:AKDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Araguaina
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Araguaina
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Buenos_Aires
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Buenos_Aires
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Catamarca
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Catamarca
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Cordoba
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Cordoba
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Jujuy
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Jujuy
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/La_Rioja
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/La_Rioja
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Mendoza
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Mendoza
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Rio_Gallegos
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Rio_Gallegos
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Salta
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Salta
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/San_Juan
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/San_Juan
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/San_Luis
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/San_Luis
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Tucuman
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Tucuman
BEGIN:STANDARD
TZNAME:-03
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Argentina/Ushuaia
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Argentina/Ushuaia
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Asuncion
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Asuncion
BEGIN:DAYLIGHT
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bahia
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bahia
BEGIN:STANDARD
TZNAME:-03
@@ -1,23 +1,15 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bahia_Banderas
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bahia_Banderas
BEGIN:STANDARD
TZNAME:CST
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
BEGIN:DAYLIGHT
TZNAME:CDT
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
DTSTART:19700405T020000
RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU
END:DAYLIGHT
TZOFFSETTO:-0600
DTSTART:19700101T000000
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Barbados
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Barbados
BEGIN:STANDARD
TZNAME:AST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Belem
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Belem
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Belize
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Belize
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Boa_Vista
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Boa_Vista
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Bogota
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Bogota
BEGIN:STANDARD
TZNAME:-05
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Boise
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Boise
BEGIN:DAYLIGHT
TZNAME:MDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cambridge_Bay
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cambridge_Bay
BEGIN:DAYLIGHT
TZNAME:MDT
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Campo_Grande
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Campo_Grande
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cancun
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cancun
BEGIN:STANDARD
TZNAME:EST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Caracas
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Caracas
BEGIN:STANDARD
TZNAME:-04
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cayenne
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cayenne
BEGIN:STANDARD
TZNAME:-03
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Chicago
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Chicago
BEGIN:DAYLIGHT
TZNAME:CDT
+5 -13
View File
@@ -1,23 +1,15 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Chihuahua
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Chihuahua
BEGIN:DAYLIGHT
TZNAME:MDT
TZOFFSETFROM:-0700
TZOFFSETTO:-0600
DTSTART:19700405T020000
RRULE:FREQ=YEARLY;BYMONTH=4;BYDAY=1SU
END:DAYLIGHT
BEGIN:STANDARD
TZNAME:MST
TZNAME:CST
TZOFFSETFROM:-0600
TZOFFSETTO:-0700
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZOFFSETTO:-0600
DTSTART:19700101T000000
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
@@ -0,0 +1,23 @@
BEGIN:VCALENDAR
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Ciudad_Juarez
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Ciudad_Juarez
BEGIN:DAYLIGHT
TZNAME:MDT
TZOFFSETFROM:-0700
TZOFFSETTO:-0600
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZNAME:MST
TZOFFSETFROM:-0600
TZOFFSETTO:-0700
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
END:VCALENDAR
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Costa_Rica
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Costa_Rica
BEGIN:STANDARD
TZNAME:CST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Cuiaba
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Cuiaba
BEGIN:STANDARD
TZNAME:-04
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Danmarkshavn
LAST-MODIFIED:20220503T203402Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Danmarkshavn
BEGIN:STANDARD
TZNAME:GMT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Dawson
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Dawson
BEGIN:STANDARD
TZNAME:MST
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Dawson_Creek
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Dawson_Creek
BEGIN:STANDARD
TZNAME:MST
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Denver
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Denver
BEGIN:DAYLIGHT
TZNAME:MDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Detroit
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Detroit
BEGIN:DAYLIGHT
TZNAME:EDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Edmonton
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Edmonton
BEGIN:DAYLIGHT
TZNAME:MDT
+2 -2
View File
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/Eirunepe
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/Eirunepe
BEGIN:STANDARD
TZNAME:-05
@@ -1,9 +1,9 @@
BEGIN:VCALENDAR
PRODID:-//Inverse inc.//NONSGML IANA 2022a//EN
PRODID:-//Alinto//NONSGML IANA 2024c//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:America/El_Salvador
LAST-MODIFIED:20220503T203403Z
LAST-MODIFIED:20240220T101645Z
X-LIC-LOCATION:America/El_Salvador
BEGIN:STANDARD
TZNAME:CST
Loaded 100 of 1425 files, more files were not shown because too many files have changed in this diff. Show more