summaryrefslogtreecommitdiffstats
path: root/framework/domain
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-11-01 11:25:34 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-11-01 11:25:34 +0100
commit808896f0d0499f10a2e3cbe684c76e48207edf86 (patch)
treec34df4f11b03d81fcf56c27a8cc5e0d89d758206 /framework/domain
parent797c301157937a4904debdbedff5a97bd9a718f4 (diff)
downloadkube-808896f0d0499f10a2e3cbe684c76e48207edf86.tar.gz
kube-808896f0d0499f10a2e3cbe684c76e48207edf86.zip
Show recepients
Diffstat (limited to 'framework/domain')
-rw-r--r--framework/domain/maillistmodel.cpp34
-rw-r--r--framework/domain/maillistmodel.h3
-rw-r--r--framework/domain/outboxmodel.cpp5
3 files changed, 35 insertions, 7 deletions
diff --git a/framework/domain/maillistmodel.cpp b/framework/domain/maillistmodel.cpp
index 746f3523..5960f5b4 100644
--- a/framework/domain/maillistmodel.cpp
+++ b/framework/domain/maillistmodel.cpp
@@ -44,6 +44,9 @@ QHash< int, QByteArray > MailListModel::roleNames() const
44 roles[Subject] = "subject"; 44 roles[Subject] = "subject";
45 roles[Sender] = "sender"; 45 roles[Sender] = "sender";
46 roles[SenderName] = "senderName"; 46 roles[SenderName] = "senderName";
47 roles[To] = "to";
48 roles[Cc] = "cc";
49 roles[Bcc] = "bcc";
47 roles[Date] = "date"; 50 roles[Date] = "date";
48 roles[Unread] = "unread"; 51 roles[Unread] = "unread";
49 roles[Important] = "important"; 52 roles[Important] = "important";
@@ -56,6 +59,19 @@ QHash< int, QByteArray > MailListModel::roleNames() const
56 return roles; 59 return roles;
57} 60}
58 61
62static QString join(const QList<Sink::ApplicationDomain::Mail::Contact> &contacts)
63{
64 QStringList list;
65 for (const auto &contact : contacts) {
66 if (!contact.name.isEmpty()) {
67 list << QString("%1 <%2>").arg(contact.name).arg(contact.emailAddress);
68 } else {
69 list << contact.emailAddress;
70 }
71 }
72 return list.join(", ");
73}
74
59QVariant MailListModel::data(const QModelIndex &idx, int role) const 75QVariant MailListModel::data(const QModelIndex &idx, int role) const
60{ 76{
61 auto srcIdx = mapToSource(idx); 77 auto srcIdx = mapToSource(idx);
@@ -64,9 +80,15 @@ QVariant MailListModel::data(const QModelIndex &idx, int role) const
64 case Subject: 80 case Subject:
65 return mail->getSubject(); 81 return mail->getSubject();
66 case Sender: 82 case Sender:
67 return mail->getSender(); 83 return mail->getSender().emailAddress;
68 case SenderName: 84 case SenderName:
69 return mail->getSenderName(); 85 return mail->getSender().name;
86 case To:
87 return join(mail->getTo());
88 case Cc:
89 return join(mail->getCc());
90 case Bcc:
91 return join(mail->getBcc());
70 case Date: 92 case Date:
71 return mail->getDate(); 93 return mail->getDate();
72 case Unread: 94 case Unread:
@@ -113,7 +135,9 @@ void MailListModel::setParentFolder(const QVariant &parentFolder)
113 query.limit = 100; 135 query.limit = 100;
114 query.request<Mail::Subject>(); 136 query.request<Mail::Subject>();
115 query.request<Mail::Sender>(); 137 query.request<Mail::Sender>();
116 query.request<Mail::SenderName>(); 138 query.request<Mail::To>();
139 query.request<Mail::Cc>();
140 query.request<Mail::Bcc>();
117 query.request<Mail::Date>(); 141 query.request<Mail::Date>();
118 query.request<Mail::Unread>(); 142 query.request<Mail::Unread>();
119 query.request<Mail::Important>(); 143 query.request<Mail::Important>();
@@ -140,7 +164,9 @@ void MailListModel::setMail(const QVariant &variant)
140 query.liveQuery = false; 164 query.liveQuery = false;
141 query.request<Mail::Subject>(); 165 query.request<Mail::Subject>();
142 query.request<Mail::Sender>(); 166 query.request<Mail::Sender>();
143 query.request<Mail::SenderName>(); 167 query.request<Mail::To>();
168 query.request<Mail::Cc>();
169 query.request<Mail::Bcc>();
144 query.request<Mail::Date>(); 170 query.request<Mail::Date>();
145 query.request<Mail::Unread>(); 171 query.request<Mail::Unread>();
146 query.request<Mail::Important>(); 172 query.request<Mail::Important>();
diff --git a/framework/domain/maillistmodel.h b/framework/domain/maillistmodel.h
index a7cb5d84..22b97e11 100644
--- a/framework/domain/maillistmodel.h
+++ b/framework/domain/maillistmodel.h
@@ -44,6 +44,9 @@ public:
44 Subject = Qt::UserRole + 1, 44 Subject = Qt::UserRole + 1,
45 Sender, 45 Sender,
46 SenderName, 46 SenderName,
47 To,
48 Cc,
49 Bcc,
47 Date, 50 Date,
48 Unread, 51 Unread,
49 Important, 52 Important,
diff --git a/framework/domain/outboxmodel.cpp b/framework/domain/outboxmodel.cpp
index b3533976..f2827f82 100644
--- a/framework/domain/outboxmodel.cpp
+++ b/framework/domain/outboxmodel.cpp
@@ -37,7 +37,6 @@ OutboxModel::OutboxModel(QObject *parent)
37 query.liveQuery = true; 37 query.liveQuery = true;
38 query.request<Mail::Subject>(); 38 query.request<Mail::Subject>();
39 query.request<Mail::Sender>(); 39 query.request<Mail::Sender>();
40 query.request<Mail::SenderName>();
41 query.request<Mail::Date>(); 40 query.request<Mail::Date>();
42 query.request<Mail::Unread>(); 41 query.request<Mail::Unread>();
43 query.request<Mail::Important>(); 42 query.request<Mail::Important>();
@@ -77,9 +76,9 @@ QVariant OutboxModel::data(const QModelIndex &idx, int role) const
77 case Subject: 76 case Subject:
78 return mail->getSubject(); 77 return mail->getSubject();
79 case Sender: 78 case Sender:
80 return mail->getSender(); 79 return mail->getSender().emailAddress;
81 case SenderName: 80 case SenderName:
82 return mail->getSenderName(); 81 return mail->getSender().name;
83 case Date: 82 case Date:
84 return mail->getDate(); 83 return mail->getDate();
85 case Unread: 84 case Unread: