58 |
58 |
59 EmailClientApi::NmApiMessageEnvelope api_env; |
59 EmailClientApi::NmApiMessageEnvelope api_env; |
60 |
60 |
61 QList<NmAddress> to = envelope.toRecipients(); |
61 QList<NmAddress> to = envelope.toRecipients(); |
62 QList<NmAddress> cc = envelope.ccRecipients(); |
62 QList<NmAddress> cc = envelope.ccRecipients(); |
|
63 QList<NmAddress> bcc = envelope.bccRecipients(); |
63 QList<EmailClientApi::NmApiEmailAddress> to_api = NmAddress2QString(to); |
64 QList<EmailClientApi::NmApiEmailAddress> to_api = NmAddress2QString(to); |
64 QList<EmailClientApi::NmApiEmailAddress> cc_api = NmAddress2QString(cc); |
65 QList<EmailClientApi::NmApiEmailAddress> cc_api = NmAddress2QString(cc); |
|
66 QList<EmailClientApi::NmApiEmailAddress> bcc_api = NmAddress2QString(bcc); |
65 |
67 |
66 api_env.setToRecipients(to_api); |
68 api_env.setToRecipients(to_api); |
67 api_env.setCcRecipients(cc_api); |
69 api_env.setCcRecipients(cc_api); |
|
70 api_env.setBccRecipients(bcc_api); |
68 |
71 |
69 api_env.setHasAttachments(envelope.hasAttachments()); |
72 api_env.setHasAttachments(envelope.hasAttachments()); |
70 api_env.setId(envelope.messageId().id()); |
73 api_env.setId(envelope.messageId().id()); |
71 api_env.setIsForwarded(envelope.isForwarded()); |
74 api_env.setIsForwarded(envelope.isForwarded()); |
72 api_env.setIsRead(envelope.isRead()); |
75 api_env.setIsRead(envelope.isRead()); |
74 api_env.setParentFolder(envelope.folderId().id()); |
77 api_env.setParentFolder(envelope.folderId().id()); |
75 |
78 |
76 api_env.setSender(envelope.sender().address()); |
79 api_env.setSender(envelope.sender().address()); |
77 api_env.setSentTime(envelope.sentTime()); |
80 api_env.setSentTime(envelope.sentTime()); |
78 api_env.setSubject(envelope.subject()); |
81 api_env.setSubject(envelope.subject()); |
|
82 api_env.setMailboxId(envelope.messageId().id()); |
|
83 api_env.setFlags(static_cast<EmailClientApi::NmApiMessageFlags>(static_cast<int>(envelope.flags())), true); |
79 |
84 |
80 return api_env; |
85 return api_env; |
81 } |
86 } |
82 |
87 |
83 /*! |
88 /*! |
98 } |
103 } |
99 |
104 |
100 return nmAddresses; |
105 return nmAddresses; |
101 } |
106 } |
102 |
107 |
|
108 /*! |
|
109 converts nmmessage to client api NmApiMessage |
|
110 */ |
|
111 EmailClientApi::NmApiMessage NmToApiConverter::NmMessage2NmApiMessage(NmMessage &message) |
|
112 { |
|
113 NM_FUNCTION; |
|
114 |
|
115 EmailClientApi::NmApiMessage api_message; |
|
116 QList<NmMessagePart*> attachments; |
|
117 message.attachmentList(attachments); |
|
118 |
|
119 if (attachments.size() > 0){ |
|
120 QList<EmailClientApi::NmApiAttachment> api_attachments; |
|
121 for (int i = 0; i < attachments.size(); i++){ |
|
122 NmMessagePart *part = attachments.at(i); |
|
123 if (part->contentType().compare(EmailClientApi::NmApiContentTypeTextPlain) != 0 && |
|
124 part->contentType().compare(EmailClientApi::NmApiContentTypeTextHtml) != 0) { |
|
125 EmailClientApi::NmApiAttachment api_attachment; |
|
126 api_attachment.setFileName(part->attachmentName()); |
|
127 api_attachment.setId(part->partId().id()); |
|
128 api_attachment.setContentType(part->contentType()); |
|
129 api_attachment.setSize(part->size()); |
|
130 api_attachments.append(api_attachment); |
|
131 } |
|
132 } |
|
133 api_message.setAttachments(api_attachments); |
|
134 } |
|
135 |
|
136 EmailClientApi::NmApiMessageEnvelope api_envelope = NmMessageEnvelope2NmApiMessageEnvelope(message.envelope()); |
|
137 api_message.setEnvelope(api_envelope); |
|
138 const NmMessagePart *plaintext = message.plainTextBodyPart(); |
|
139 if (plaintext) { |
|
140 EmailClientApi::NmApiTextContent api_plaintext; |
|
141 api_plaintext.setContent(plaintext->textContent()); |
|
142 api_plaintext.setId(plaintext->partId().id()); |
|
143 api_plaintext.setContentType(plaintext->contentType()); |
|
144 api_plaintext.setSize(plaintext->size()); |
|
145 api_message.setPlainTextContent(api_plaintext); |
|
146 } |
|
147 |
|
148 const NmMessagePart *htmlcontent = message.htmlBodyPart(); |
|
149 if (htmlcontent) { |
|
150 EmailClientApi::NmApiTextContent api_htmlcontent; |
|
151 api_htmlcontent.setContent(htmlcontent->textContent()); |
|
152 api_htmlcontent.setId(htmlcontent->partId().id()); |
|
153 api_htmlcontent.setContentType(htmlcontent->contentType()); |
|
154 api_htmlcontent.setSize(htmlcontent->size()); |
|
155 api_message.setHtmlContent(api_htmlcontent); |
|
156 } |
|
157 |
|
158 return api_message; |
|
159 } |