summaryrefslogtreecommitdiffstats
path: root/framework/mail/composer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/mail/composer.cpp')
-rw-r--r--framework/mail/composer.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/framework/mail/composer.cpp b/framework/mail/composer.cpp
index 6f603979..1ec56347 100644
--- a/framework/mail/composer.cpp
+++ b/framework/mail/composer.cpp
@@ -19,6 +19,12 @@
19 19
20 20
21#include "composer.h" 21#include "composer.h"
22#include <actions/context.h>
23#include <actions/action.h>
24#include <KMime/Message>
25#include <KCodecs/KEmailAddress>
26#include <QVariant>
27#include <QDebug>
22 28
23Composer::Composer(QObject *parent) : QObject(parent) 29Composer::Composer(QObject *parent) : QObject(parent)
24{ 30{
@@ -110,7 +116,25 @@ void Composer::setFromIndex(int fromIndex)
110 116
111void Composer::send() 117void Composer::send()
112{ 118{
113 //TODO 119 auto mail = KMime::Message::Ptr::create();
120 for (const auto &to : KEmailAddress::splitAddressList(m_to)) {
121 QByteArray displayName;
122 QByteArray addrSpec;
123 QByteArray comment;
124 KEmailAddress::splitAddress(to.toUtf8(), displayName, addrSpec, comment);
125 mail->to(true)->addAddress(addrSpec, displayName);
126 }
127 mail->subject(true)->fromUnicodeString(m_subject, "utf-8");
128 mail->setBody(m_body.toUtf8());
129 mail->assemble();
130 Kube::Context context;
131 context.setProperty("message", QVariant::fromValue(mail));
132 //TODO get from somewhere
133 context.setProperty("username", QVariant::fromValue(QByteArray("test@test.com")));
134 context.setProperty("password", QVariant::fromValue(QByteArray("pass")));
135 context.setProperty("server", QVariant::fromValue(QByteArray("smtp://smtp.gmail.com:587")));
136
137 Kube::Action("org.kde.kube.actions.sendmail", context).execute();
114 clear(); 138 clear();
115} 139}
116 140