Commit graph

11083 commits

Author SHA1 Message Date
Enrique J. Hernández Blasco 1ee47b1ee2 oc: return last modified messages when sorted by PidMessageTagDeliveryTime
This change is required as oxcfxics is asking for sorting
using this property.

We fake this property on GCS folders (Tasks, Calendar, Contacts)
using c_lastmodified column.
2015-03-27 10:27:16 +01:00
Enrique J. Hernández Blasco dfde498b7c oc-mail: Include Deleted flagged messages on syncing cache
This gives an accurate value for SyncLastDeletedMessage
2015-03-26 22:45:13 +01:00
Enrique J. Hernández Blasco 06476abdf7 oc-mail: return soft-deleted mails while syncing
As well as hard deleted

As explained in [MS-OXCFXICS] Section 2.2.1.3.1, the
property MetaTagIdsetDeleted must include both types
of messages and this idset is filled with the return
value of this message.
2015-03-26 22:05:43 +01:00
Jesús García Sáez bb0221c763 Merge pull request #115 from Zentyal/ejhernandez/sharing-flavour-val-idl
oc-mail: Update place for Sharing Flavour prop values
2015-03-26 19:45:24 +01:00
Jesús García Sáez dc869ce106 oc-mail: Support for PidTagTransportMessageHeaders property
This property is needed to show the 'Internet Headers' in Outlook.
Outlook 2010 shows them in the properties dialog of a message.
Outlook 2007 show them in message options section from context menu
of a mail message.

The property is defined in [MS-OXOMSG] section 2.2.1.61.

The property is formed concatenating the mail message headers
properly mime encoded.

The headers are appended in no defined order.
2015-03-26 19:26:48 +01:00
Ludovic Marcotte ddcae9f132 Updates for the release 2015-03-26 13:57:58 -04:00
Ludovic Marcotte f11bcd3373 Avoid using stringByReplacing... since old runtimes don't support it 2015-03-26 13:54:17 -04:00
Enrique J. Hernández Blasco a47f1de607 oc-mail: Update place for Sharing Flavour prop values
It has been moved in OpenChange
2015-03-26 14:18:34 +01:00
Jesús García Sáez 09aed26f10 Merge pull request #114 from Zentyal/ejhernandez/fix-interleaving-creating-folder
As it happened with dba17fb if we interleave requests
from different users while creating a folder we can
create the folder in other user's mailbox as latest
activeUser is the one from latest sogo_context_get_root_folder
call.

This is for me a lack of right design and a workaround
only fixing this issue but not the root cause.
2015-03-25 17:15:05 +01:00
Jesús García Sáez 0e5de2df42 Merge pull request #110 from Zentyal/ejhernandez/sharing-calendar-request
This requires https://github.com/openchange/openchange/pull/244 to work
but basically we have modified this backend to store request-related
properties in a `MAPIStoreMailMessage` using the versions message
from the `MAPIStoreMailFolder` container and fix the setter/getter
for the following properties:

  * PidNameXSharingFlavor
  * PidLidSharingFlavor
  * PidNameXSharingCapabilities
  * PidLidSharingResponseType
  * PidLidSharingResponseTime
2015-03-25 17:09:14 +01:00
Enrique J. Hernández Blasco 82fb03b67b oc-mail: Ensure we are creating folder to the right user
As it happened with dba17fb if we interleave requests
from different users while creating a folder we can
create the folder in other user's mailbox as latest
activeUser is the one from latest sogo_context_get_root_folder
call.

This is for me a lack of right design and a workaround
only fixing this issue but not the root cause.
2015-03-25 16:53:42 +01:00
Enrique J. Hernández Blasco f9c8661fe6 oc-mail: Use constant names in props value
This gives to the developer more information about
the property values for PidLidSharingFlavor and
PidLidSharingCapabilities.
2015-03-25 10:12:15 +01:00
Enrique J. Hernández Blasco 661b6694af oc-mail: Fix several sharing properties managing
* PidNameXSharingFlavor is used by Outlook 2010 so we have
  to store it
* 0x5100 is used although it is not in spec as Sharing Flavour
  value when the request is denied from a message where
  Request + Invitation was sent.
* Return properly PidNameXSharingCapabilities and PidNameXSharingFlavor
  as it is an string representation of a hex number
* Try to guess proper sharing flavour value when it is missing
2015-03-25 10:12:15 +01:00
Enrique J. Hernández Blasco 514b1c03be oc-mail: Store request properties
Save them in extra properties from folder container.

This is required because the client once a request is accepted
or denied sets these two properties and save the message again.
As we cannot modify an IMAP message, we use this utility.

See [MS-OXSHARE] Section 3.1.4.3 for details.
2015-03-25 10:12:15 +01:00
Enrique J. Hernández Blasco a663fdd260 oc-mail: Give support to store extra properties in versions message
This is handy when you want to store properties once a mail
has hit the server and thus cannot be changed.
2015-03-25 10:12:15 +01:00
Jesús García Sáez 0db16aedb1 Merge pull request #112 from Zentyal/ejhernandez/fix-crash-invalid-ics
A failure in parsing an ICS makes return a nil calendar
object. Instead of creating an appointment with nil
information which can lead to crashes like the one
generated creating PidLidCleanGlobalObjectId property.

We return an empty message with no information which is
taken into account in Outlook but not displayed like
in SOGo webmail does.
2015-03-24 19:15:05 +01:00
Jesús García Sáez 6f70066986 Merge pull request #109 from Zentyal/ejhernandez/empty-acl-perms
The `[SOGoFolder:aclUsers]` returns a reference to a `NSArray`
which is being modified in the `for` loop making fail when
more than one user is in the ACL with `NSRangeException`.
2015-03-24 17:40:37 +01:00
Ludovic Marcotte b933f53fc2 Changes for the 2.2.17 release 2015-03-24 10:56:26 -04:00
Ludovic Marcotte 097d5c2333 now possible to configure objectClass names for LDAP groups using GroupObjectClasses (#1499) 2015-03-24 08:40:13 -04:00
Ludovic Marcotte d75fb0722a Code cleanups 2015-03-24 08:34:29 -04:00
Enrique J. Hernández Blasco 6204aebf2c oc-calendar: do not crash with invalid events
A failure in parsing an ICS makes return a nil calendar
object. Instead of creating an appointment with nil
information which can lead to crashes like the one
generated creating PidLidCleanGlobalObjectId property.

We return an empty message with no information which is
taken into account in Outlook but not displayed like
in SOGo webmail does.
2015-03-23 23:57:33 +01:00
Francis Lachapelle 26d876e67a Improve event attendees editor
- Avoid repetitive AJAX queries;
- Improve handling of daylight changes.
2015-03-23 17:54:05 -04:00
Ludovic Marcotte cc3652b59b improvements to EAS SyncKey handling to avoid missing mails (#3048, #3058) 2015-03-23 17:23:29 -04:00
Ludovic Marcotte 9d7bbbc312 enable by default HTML mails support using EAS on Windows and BB phones 2015-03-23 14:55:14 -04:00
Ludovic Marcotte d2915add6d now favor login@domain as the default email address if multiple mail: fields are specified 2015-03-23 14:08:31 -04:00
Ludovic Marcotte 67139ce3e3 improved GetItemEstimate to count all vasnished/deleted mails too 2015-03-23 11:35:45 -04:00
Ludovic Marcotte 9eb138b867 prevent potential freebusy lookup crashes during timezone changes with repetitive events 2015-03-23 10:54:36 -04:00
Ludovic Marcotte baf3d1f986 immediately delete mails from EAS clients when they are marked as deleted on the IMAP server 2015-03-20 09:10:49 -04:00
Ludovic Marcotte ecd336fa5c Fix compilation warning and error 2015-03-20 08:51:35 -04:00
Ludovic Marcotte afd73289d1 properly fallback over EAS to UTF-8 and then Latin1 for messages w/o charset (#3103) 2015-03-20 08:45:42 -04:00
Ludovic Marcotte bff21ab1ff support for mail prority using EAS 2015-03-19 16:08:33 -04:00
Ludovic Marcotte 6d99226b13 Always add DisplayName no matter EAS client version 2015-03-19 14:53:01 -04:00
Francis Lachapelle 69974807b5 Fix Language-Region tags in Web interface
Fixes #3121
2015-03-19 08:35:10 -04:00
Enrique J. Hernández Blasco 8ee2303e78 oc: Empty ACL from a folder works with several users
The `[SOGoFolder:aclUsers]` returns a reference to a `NSArray`
which is being modified in the `for` loop making fail when
more than one user is in the ACL with `NSRangeException`.
2015-03-19 00:06:14 +01:00
Enrique J. Hernández 7bc8cd58dd Merge pull request #108 from Zentyal/jacalvo/fix-optional-attendees
oc-calendar: Fix event invitations for optional attendees
2015-03-18 21:34:51 +01:00
José Antonio Calvo 2668bc313c oc-calendar: Fix event invitations for optional attendees
Outlook sets recipient type of Required attendees as MAPI_TO and
optional ones as MAPI_CC, so the fix is just to not only iterate
over the "to" list of recipients but also the "cc" one. We're
also setting the proper iCal value for this case (OPT-PARTICIPANT
instead of REQ-PARTICIPANT)

In [MS-OXOCAL] Section 2.2.4.10.7 says the recipient type is 0x01
as Required and 0x02 as Optional and other documents such as
[MS-OXCMSG] 2.2.3.1.2 indicates that MAPI_TO is 0x01 and MAPI_CC
is 0x02, that's why is stored in 'to' and 'cc' respectively.
2015-03-18 18:18:46 +01:00
Jesús García Sáez 418ac15de6 Merge pull request #107 from Zentyal/jgarcia/rtf-no-color-table
oc-rtf: no color table definition
2015-03-18 18:08:05 +01:00
Jesús García Sáez 637ac1e98a oc-rtf: no color table definition
Be able to parse rtf files without color table defined
\colortbl
2015-03-18 18:06:49 +01:00
Jesús García Sáez b0ba6f4a22 Merge pull request #101 from Zentyal/ejhernandez/recurrence-exceptions-fixes
Two fixes on recurring events
2015-03-18 18:05:06 +01:00
Ludovic Marcotte cdb766e2ef Documented NGMimeBuildMimeTempDirectory 2015-03-18 10:15:33 -04:00
Enrique J. Hernández Blasco fb4c3a4730 oc-calendar: Fix weekly recurring events exported to Outlook from SOGo
SOGo does not create BYDAY mask in weekly recurrence, so
we have to guess it from the start date's day of week.

In other case, the event is not exported to Outlook and it
says that is corrupted.
2015-03-18 15:08:24 +01:00
Enrique J. Hernández Blasco 6f44ec42c1 oc-calendar: Fix import in SOGo exceptions from recurring series
According to [MS-OXICAL] Section 2.1.3.1.1.20.13, the EXDATE property
must be written only if there are ocurrences from the series that have
been deleted and before this commit ModifiedInstanceDates were also
included.

We check against every ExceptionInfo from exception ocurrences of the series
to know if the ocurrence was deleted or only modified.
2015-03-18 15:08:24 +01:00
Ludovic Marcotte e25a7e3d8d Fix for bug #3138 2015-03-18 09:36:35 -04:00
Julio García 3b0b43f28f Merge branch 'ejhernandez/peek-preload-bodies-for-real' 2015-03-18 09:28:57 +01:00
Julio García afa9061f2f Merge branch 'ejhernandez/client-drafts-no-updated' 2015-03-18 09:22:41 +01:00
Enrique J. Hernández Blasco 9f3f2aebe4 oc-mail: Register source message as soft deleted on movement
This makes sent mails are not longer automatically copied
to Drafts folder.

Reasoning:

When Outlook sends a mail, OpenChange submits the message and
copy the message to Drafts folder. Afterwards, the client asks
to move this message using SyncImportMessageMove ROP from
Drafts to Sent. During this movement, the message is unregistered
from the indexing database. If the client has updated Drafts
folder before that movement, then the client will keep this
message as the MID is not returned in oxcfxics download sync
as deleted. Setting the message as soft deleted, make it work.
2015-03-18 00:42:01 +01:00
Francis Lachapelle 1d5ae27c99 Fix issues with freebusy (Web, busyOffHours) 2015-03-17 15:34:00 -04:00
Julio García 0be36df211 Preparing release for 2.2.15-zentyal2 2015-03-17 12:30:09 +01:00
Francis Lachapelle beb57707e8 Merge pull request #72 from JensErat/export-not-archive
Rename "Archive" to "Export" in Webmail, ctd.
2015-03-13 10:15:30 -04:00
Jens Erat 1bdd5dfc90 Remove obsolete archive string from translations 2015-03-13 14:06:58 +01:00