-rw-r--r-- | noncore/unsupported/mail2/attachdiag.cpp | 4 | ||||
-rw-r--r-- | noncore/unsupported/mail2/attachdiag.h | 2 | ||||
-rw-r--r-- | noncore/unsupported/mail2/composer.cpp | 2 | ||||
-rw-r--r-- | noncore/unsupported/mail2/libmail/mailfactory.cpp | 4 |
4 files changed, 6 insertions, 6 deletions
diff --git a/noncore/unsupported/mail2/attachdiag.cpp b/noncore/unsupported/mail2/attachdiag.cpp index 6e6c3d4..bedf3c4 100644 --- a/noncore/unsupported/mail2/attachdiag.cpp +++ b/noncore/unsupported/mail2/attachdiag.cpp | |||
@@ -1,71 +1,71 @@ | |||
1 | #include <qmessagebox.h> | 1 | #include <qmessagebox.h> |
2 | #include <qpushbutton.h> | 2 | #include <qpushbutton.h> |
3 | #include <qlistbox.h> | 3 | #include <qlistbox.h> |
4 | #include <qlayout.h> | 4 | #include <qlayout.h> |
5 | 5 | ||
6 | #include <qpe/fileselector.h> | 6 | #include <qpe/fileselector.h> |
7 | #include <qpe/resource.h> | 7 | #include <qpe/resource.h> |
8 | 8 | ||
9 | #include <stdlib.h> | 9 | #include <stdlib.h> |
10 | 10 | ||
11 | #include "attachdiag.h" | 11 | #include "attachdiag.h" |
12 | 12 | ||
13 | AttachDiag::AttachDiag(QWidget* parent = 0, const char* name = 0, bool modal, WFlags fl = 0) | 13 | AttachDiag::AttachDiag(QWidget* parent = 0, const char* name = 0, bool modal, WFlags fl = 0) |
14 | : QDialog(parent, name, modal, fl) | 14 | : QDialog(parent, name, modal, fl) |
15 | { | 15 | { |
16 | setCaption(tr("Attach File")); | 16 | setCaption(tr("Attach File")); |
17 | 17 | ||
18 | QGridLayout *layout = new QGridLayout(this); | 18 | QGridLayout *layout = new QGridLayout(this); |
19 | layout->setSpacing(3); | 19 | layout->setSpacing(3); |
20 | layout->setMargin(4); | 20 | layout->setMargin(4); |
21 | 21 | ||
22 | FileSelector *fileSelector = new FileSelector("*", this, "FileSelector"); | 22 | FileSelector *fileSelector = new FileSelector("*", this, "FileSelector"); |
23 | fileSelector->setCloseVisible(false); | 23 | fileSelector->setCloseVisible(false); |
24 | fileSelector->setNewVisible(false); | 24 | fileSelector->setNewVisible(false); |
25 | 25 | ||
26 | layout->addMultiCellWidget(fileSelector, 0, 0, 0, 1); | 26 | layout->addMultiCellWidget(fileSelector, 0, 0, 0, 1); |
27 | 27 | ||
28 | QPushButton *attachButton = new QPushButton(this); | 28 | QPushButton *attachButton = new QPushButton(this); |
29 | attachButton->setText(tr("Ok")); | 29 | attachButton->setText(tr("Ok")); |
30 | attachButton->setIconSet(Resource::loadPixmap("enter")); | 30 | attachButton->setIconSet(Resource::loadPixmap("enter")); |
31 | 31 | ||
32 | layout->addWidget(attachButton, 1, 0); | 32 | layout->addWidget(attachButton, 1, 0); |
33 | 33 | ||
34 | QPushButton *cancelButton = new QPushButton(this); | 34 | QPushButton *cancelButton = new QPushButton(this); |
35 | cancelButton->setText(tr("Cancel")); | 35 | cancelButton->setText(tr("Cancel")); |
36 | cancelButton->setIconSet(Resource::loadPixmap("editdelete")); | 36 | cancelButton->setIconSet(Resource::loadPixmap("editdelete")); |
37 | 37 | ||
38 | layout->addWidget(cancelButton, 1, 1); | 38 | layout->addWidget(cancelButton, 1, 1); |
39 | 39 | ||
40 | connect(fileSelector, SIGNAL(fileSelected(const DocLnk &)), SLOT(fileSelected(const DocLnk &))); | 40 | connect(fileSelector, SIGNAL(fileSelected(const DocLnk &)), SLOT(fileSelected(const DocLnk &))); |
41 | connect(attachButton, SIGNAL(clicked()), SLOT(accept())); | 41 | connect(attachButton, SIGNAL(clicked()), SLOT(accept())); |
42 | connect(cancelButton, SIGNAL(clicked()), SLOT(close())); | 42 | connect(cancelButton, SIGNAL(clicked()), SLOT(close())); |
43 | 43 | ||
44 | if (fileSelector->selected() != NULL) | 44 | if (fileSelector->selected() != NULL) |
45 | currentFile = *fileSelector->selected(); | 45 | currentFile = *fileSelector->selected(); |
46 | 46 | ||
47 | if (fileSelector->fileCount() == 0) { | 47 | if (fileSelector->fileCount() == 0) { |
48 | attachButton->setEnabled(false); | 48 | attachButton->setEnabled(false); |
49 | fileSelector->setEnabled(false); | 49 | fileSelector->setEnabled(false); |
50 | } | 50 | } |
51 | } | 51 | } |
52 | 52 | ||
53 | void AttachDiag::fileSelected(const DocLnk &file) | 53 | void AttachDiag::fileSelected(const DocLnk &file) |
54 | { | 54 | { |
55 | currentFile = file; | 55 | currentFile = file; |
56 | } | 56 | } |
57 | 57 | ||
58 | DocLnk AttachDiag::getFile() | 58 | DocLnk AttachDiag::getFile(QWidget *parent) |
59 | { | 59 | { |
60 | AttachDiag *attach = new AttachDiag(0, 0, true); | 60 | AttachDiag *attach = new AttachDiag(parent, 0, true); |
61 | attach->showMaximized(); | 61 | attach->showMaximized(); |
62 | attach->show(); | 62 | attach->show(); |
63 | 63 | ||
64 | if (QDialog::Accepted == attach->exec()) { | 64 | if (QDialog::Accepted == attach->exec()) { |
65 | return attach->currentFile; | 65 | return attach->currentFile; |
66 | } | 66 | } |
67 | 67 | ||
68 | return DocLnk(); | 68 | return DocLnk(); |
69 | } | 69 | } |
70 | 70 | ||
71 | 71 | ||
diff --git a/noncore/unsupported/mail2/attachdiag.h b/noncore/unsupported/mail2/attachdiag.h index c673cfc..bce5b4b 100644 --- a/noncore/unsupported/mail2/attachdiag.h +++ b/noncore/unsupported/mail2/attachdiag.h | |||
@@ -1,27 +1,27 @@ | |||
1 | #ifndef ATTACHDIAG_H | 1 | #ifndef ATTACHDIAG_H |
2 | #define ATTACHDIAG_H | 2 | #define ATTACHDIAG_H |
3 | 3 | ||
4 | #include <qdialog.h> | 4 | #include <qdialog.h> |
5 | 5 | ||
6 | #include <qpe/applnk.h> | 6 | #include <qpe/applnk.h> |
7 | 7 | ||
8 | class AttachDiag : public QDialog | 8 | class AttachDiag : public QDialog |
9 | { | 9 | { |
10 | Q_OBJECT | 10 | Q_OBJECT |
11 | 11 | ||
12 | public: | 12 | public: |
13 | static DocLnk getFile(); | 13 | static DocLnk getFile(QWidget *parent); |
14 | 14 | ||
15 | protected: | 15 | protected: |
16 | AttachDiag(QWidget *parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0); | 16 | AttachDiag(QWidget *parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0); |
17 | 17 | ||
18 | private slots: | 18 | private slots: |
19 | void fileSelected(const DocLnk &); | 19 | void fileSelected(const DocLnk &); |
20 | 20 | ||
21 | private: | 21 | private: |
22 | DocLnk currentFile; | 22 | DocLnk currentFile; |
23 | 23 | ||
24 | }; | 24 | }; |
25 | 25 | ||
26 | #endif | 26 | #endif |
27 | 27 | ||
diff --git a/noncore/unsupported/mail2/composer.cpp b/noncore/unsupported/mail2/composer.cpp index 57f0779..82ed117 100644 --- a/noncore/unsupported/mail2/composer.cpp +++ b/noncore/unsupported/mail2/composer.cpp | |||
@@ -138,81 +138,81 @@ void Composer::slotSendError(const QString &error) | |||
138 | 138 | ||
139 | void Composer::slotSendFinished() | 139 | void Composer::slotSendFinished() |
140 | { | 140 | { |
141 | QMessageBox::information(this, tr("Success"), tr("<p>The mail was sent successfully.</p>"), tr("Ok")); | 141 | QMessageBox::information(this, tr("Success"), tr("<p>The mail was sent successfully.</p>"), tr("Ok")); |
142 | 142 | ||
143 | status->setText(QString(0)); | 143 | status->setText(QString(0)); |
144 | abort->setEnabled(false); | 144 | abort->setEnabled(false); |
145 | } | 145 | } |
146 | 146 | ||
147 | void Composer::slotFillStuff() | 147 | void Composer::slotFillStuff() |
148 | { | 148 | { |
149 | QValueList<Account> accounts = ConfigFile::getAccounts(); | 149 | QValueList<Account> accounts = ConfigFile::getAccounts(); |
150 | int i = 0; | 150 | int i = 0; |
151 | 151 | ||
152 | QValueList<Account>::Iterator it; | 152 | QValueList<Account>::Iterator it; |
153 | for (it = accounts.begin(); it != accounts.end(); it++) { | 153 | for (it = accounts.begin(); it != accounts.end(); it++) { |
154 | if (!(*it).email().isEmpty() && !(*it).smtpServer().isEmpty() && !(*it).smtpPort().isEmpty()) { | 154 | if (!(*it).email().isEmpty() && !(*it).smtpServer().isEmpty() && !(*it).smtpPort().isEmpty()) { |
155 | if (!(*it).realName().isEmpty()) | 155 | if (!(*it).realName().isEmpty()) |
156 | from->insertItem((*it).realName() + " <" + (*it).email() + ">", i); | 156 | from->insertItem((*it).realName() + " <" + (*it).email() + ">", i); |
157 | else | 157 | else |
158 | from->insertItem((*it).email()); | 158 | from->insertItem((*it).email()); |
159 | 159 | ||
160 | accountsLoaded.append(*it); | 160 | accountsLoaded.append(*it); |
161 | i++; | 161 | i++; |
162 | } | 162 | } |
163 | } | 163 | } |
164 | } | 164 | } |
165 | 165 | ||
166 | void Composer::slotFromChanged(int id) | 166 | void Composer::slotFromChanged(int id) |
167 | { | 167 | { |
168 | Account account = accountsLoaded[id]; | 168 | Account account = accountsLoaded[id]; |
169 | 169 | ||
170 | if (account.defaultCc()) cc->setText(account.cc()); | 170 | if (account.defaultCc()) cc->setText(account.cc()); |
171 | if (account.defaultBcc()) bcc->setText(account.bcc()); | 171 | if (account.defaultBcc()) bcc->setText(account.bcc()); |
172 | if (account.defaultReplyTo()) replyto->setText(account.replyTo()); | 172 | if (account.defaultReplyTo()) replyto->setText(account.replyTo()); |
173 | if (!account.signature().isEmpty()) | 173 | if (!account.signature().isEmpty()) |
174 | message->setText(message->text() + "\n\n-- \n" + account.signature()); | 174 | message->setText(message->text() + "\n\n-- \n" + account.signature()); |
175 | } | 175 | } |
176 | 176 | ||
177 | void Composer::slotOpenAddressPicker() | 177 | void Composer::slotOpenAddressPicker() |
178 | { | 178 | { |
179 | if (!to->isHidden() && cc->isHidden() && bcc->isHidden()) { | 179 | if (!to->isHidden() && cc->isHidden() && bcc->isHidden()) { |
180 | if (to->text().isEmpty()) { | 180 | if (to->text().isEmpty()) { |
181 | to->setText(AddressPicker::getNames()); | 181 | to->setText(AddressPicker::getNames()); |
182 | } else { | 182 | } else { |
183 | to->setText(to->text() + ", " + AddressPicker::getNames()); | 183 | to->setText(to->text() + ", " + AddressPicker::getNames()); |
184 | } | 184 | } |
185 | } else if (to->isHidden() && !cc->isHidden() && bcc->isHidden()) { | 185 | } else if (to->isHidden() && !cc->isHidden() && bcc->isHidden()) { |
186 | if (cc->text().isEmpty()) { | 186 | if (cc->text().isEmpty()) { |
187 | cc->setText(AddressPicker::getNames()); | 187 | cc->setText(AddressPicker::getNames()); |
188 | } else { | 188 | } else { |
189 | cc->setText(cc->text() + ", " + AddressPicker::getNames()); | 189 | cc->setText(cc->text() + ", " + AddressPicker::getNames()); |
190 | } | 190 | } |
191 | } else if (to->isHidden() && cc->isHidden() && !bcc->isHidden()) { | 191 | } else if (to->isHidden() && cc->isHidden() && !bcc->isHidden()) { |
192 | if (bcc->text().isEmpty()) { | 192 | if (bcc->text().isEmpty()) { |
193 | bcc->setText(AddressPicker::getNames()); | 193 | bcc->setText(AddressPicker::getNames()); |
194 | } else { | 194 | } else { |
195 | bcc->setText(bcc->text() + ", " + AddressPicker::getNames()); | 195 | bcc->setText(bcc->text() + ", " + AddressPicker::getNames()); |
196 | } | 196 | } |
197 | } | 197 | } |
198 | } | 198 | } |
199 | 199 | ||
200 | void Composer::slotAddAttach() | 200 | void Composer::slotAddAttach() |
201 | { | 201 | { |
202 | DocLnk lnk = AttachDiag::getFile(); | 202 | DocLnk lnk = AttachDiag::getFile(this); |
203 | if (lnk.name().isEmpty()) return; | 203 | if (lnk.name().isEmpty()) return; |
204 | 204 | ||
205 | Attachment attachment; | 205 | Attachment attachment; |
206 | attachment.setFileName(lnk.file()); | 206 | attachment.setFileName(lnk.file()); |
207 | attachment.setNewName(lnk.name()); | 207 | attachment.setNewName(lnk.name()); |
208 | attachment.setDocLnk(&lnk); | 208 | attachment.setDocLnk(&lnk); |
209 | 209 | ||
210 | (void) new AttachViewItem(attachView, attachment); | 210 | (void) new AttachViewItem(attachView, attachment); |
211 | } | 211 | } |
212 | 212 | ||
213 | void Composer::slotDelAttach() | 213 | void Composer::slotDelAttach() |
214 | { | 214 | { |
215 | if (attachView->currentItem() == NULL) return; | 215 | if (attachView->currentItem() == NULL) return; |
216 | attachView->takeItem(attachView->currentItem()); | 216 | attachView->takeItem(attachView->currentItem()); |
217 | } | 217 | } |
218 | 218 | ||
diff --git a/noncore/unsupported/mail2/libmail/mailfactory.cpp b/noncore/unsupported/mail2/libmail/mailfactory.cpp index 427e72c..6602919 100644 --- a/noncore/unsupported/mail2/libmail/mailfactory.cpp +++ b/noncore/unsupported/mail2/libmail/mailfactory.cpp | |||
@@ -40,131 +40,131 @@ MailFactory::MailFactory(SendMail &smail, QWidget *parent) | |||
40 | _header += (QString) "User-Agent: " + USERAGENT + "\n"; | 40 | _header += (QString) "User-Agent: " + USERAGENT + "\n"; |
41 | 41 | ||
42 | if (!_smail.needsMime()) { | 42 | if (!_smail.needsMime()) { |
43 | // if (_smail.encrypt() && !_smail.sign()) { | 43 | // if (_smail.encrypt() && !_smail.sign()) { |
44 | // openPgpEncrypt(_smail.message(), _header, _body); | 44 | // openPgpEncrypt(_smail.message(), _header, _body); |
45 | // } else if (!_smail.encrypt() && _smail.sign()) { | 45 | // } else if (!_smail.encrypt() && _smail.sign()) { |
46 | // openPgpSign(_smail.message(), _header, _body); | 46 | // openPgpSign(_smail.message(), _header, _body); |
47 | // } else if (_smail.encrypt() && _smail.sign()) { | 47 | // } else if (_smail.encrypt() && _smail.sign()) { |
48 | // openPgpSignEncrypt(_smail.message(), _header, _body); | 48 | // openPgpSignEncrypt(_smail.message(), _header, _body); |
49 | // } else { | 49 | // } else { |
50 | _body += _smail.message(); | 50 | _body += _smail.message(); |
51 | // } | 51 | // } |
52 | } else { | 52 | } else { |
53 | QString boundary = MiscFunctions::uniqueString(); | 53 | QString boundary = MiscFunctions::uniqueString(); |
54 | 54 | ||
55 | _header += "Content-Type: multipart/mixed; boundary=\"" + boundary + "\"\n"; | 55 | _header += "Content-Type: multipart/mixed; boundary=\"" + boundary + "\"\n"; |
56 | 56 | ||
57 | _body += "This is a multi-part message in MIME format.\n\n"; | 57 | _body += "This is a multi-part message in MIME format.\n\n"; |
58 | _body += "--" + boundary + "\n"; | 58 | _body += "--" + boundary + "\n"; |
59 | 59 | ||
60 | // if (_smail.encrypt() && !_smail.sign()) { | 60 | // if (_smail.encrypt() && !_smail.sign()) { |
61 | // QString header, body; | 61 | // QString header, body; |
62 | // openPgpEncrypt(_smail.message(), header, body); | 62 | // openPgpEncrypt(_smail.message(), header, body); |
63 | // _body += header + "\n" + body + "\n"; | 63 | // _body += header + "\n" + body + "\n"; |
64 | // } else if (!_smail.encrypt() && _smail.sign()) { | 64 | // } else if (!_smail.encrypt() && _smail.sign()) { |
65 | // QString header, body; | 65 | // QString header, body; |
66 | // openPgpSign(_smail.message(), header, body); | 66 | // openPgpSign(_smail.message(), header, body); |
67 | // _body += header + "\n" + body + "\n"; | 67 | // _body += header + "\n" + body + "\n"; |
68 | // } else if (_smail.encrypt() && _smail.sign()) { | 68 | // } else if (_smail.encrypt() && _smail.sign()) { |
69 | // QString header, body; | 69 | // QString header, body; |
70 | // openPgpSignEncrypt(_smail.message(), header, body); | 70 | // openPgpSignEncrypt(_smail.message(), header, body); |
71 | // _body += header + "\n" + body + "\n"; | 71 | // _body += header + "\n" + body + "\n"; |
72 | // } else { | 72 | // } else { |
73 | 73 | ||
74 | // TODO: Do proper charset handling! | 74 | // TODO: Do proper charset handling! |
75 | _body += "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; | 75 | _body += "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; |
76 | _body += "Content-Transfer-Encoding: 8bit\n\n"; | 76 | _body += "Content-Transfer-Encoding: 8bit\n\n"; |
77 | _body += _smail.message() + "\n"; | 77 | _body += _smail.message() + "\n"; |
78 | // } | 78 | // } |
79 | 79 | ||
80 | QValueList<Attachment> attachments = _smail.attachments(); | 80 | QValueList<Attachment> attachments = _smail.attachments(); |
81 | QValueList<Attachment>::Iterator it; | 81 | QValueList<Attachment>::Iterator it; |
82 | for (it = attachments.begin(); it != attachments.end(); it++) { | 82 | for (it = attachments.begin(); it != attachments.end(); it++) { |
83 | QFile f((*it).fileName()); | 83 | QFile f((*it).fileName()); |
84 | if (f.open(IO_ReadOnly)) { | 84 | if (f.open(IO_ReadOnly)) { |
85 | QTextStream t(&f); | 85 | QTextStream t(&f); |
86 | QString file; | 86 | QString file; |
87 | while (!t.atEnd()) file += t.readLine() + "\n"; | 87 | while (!t.atEnd()) file += t.readLine() + "\n"; |
88 | f.close(); | 88 | f.close(); |
89 | QString mimetype = (new MimeType(*(*it).docLnk()))->id(); | 89 | QString mimetype = (new MimeType(*(*it).docLnk()))->id(); |
90 | 90 | ||
91 | _body += "\n--" + boundary + "\n"; | 91 | _body += "\n--" + boundary + "\n"; |
92 | _body += "Content-Type: " + mimetype + "; name=\"" + (*it).newName() + "\"\n"; | 92 | _body += "Content-Type: " + mimetype + "; name=\"" + (*it).newName() + "\"\n"; |
93 | 93 | ||
94 | // TODO: Decide which content transfer encoding is best. B64 for binary, QP for text. | 94 | // TODO: Decide which content transfer encoding is best. B64 for binary, QP for text. |
95 | _body += "Content-Transfer-Encoding: base64\n"; | 95 | _body += "Content-Transfer-Encoding: base64\n"; |
96 | 96 | ||
97 | _body += "Content-Disposition: attachment; filename=\"" + (*it).newName() + "\"\n"; | 97 | _body += "Content-Disposition: attachment; filename=\"" + (*it).newName() + "\"\n"; |
98 | if (!(*it).description().isEmpty()) | 98 | if (!(*it).description().isEmpty()) |
99 | _body += "Content-Description: " + (*it).description() + "\n"; | 99 | _body += "Content-Description: " + (*it).description() + "\n"; |
100 | 100 | ||
101 | _body += "\n" + MiscFunctions::encodeBase64(file) + "\n"; | 101 | _body += "\n" + MiscFunctions::encodeBase64(file) + "\n"; |
102 | } else { | 102 | } else { |
103 | int ret = QMessageBox::critical(_parent, tr("Error"), tr("<p>Couldn't attach file '%1'. Continue anyway or abort?</p>").arg((*it).fileName()), tr("Continue"), tr("Abort")); | 103 | int ret = QMessageBox::critical(_parent, tr("Error"), tr("<p>Couldn't attach file '%1'. Continue anyway or abort?</p>").arg((*it).fileName()), tr("Continue"), tr("Abort")); |
104 | if (ret == 1) { | 104 | if (ret != 0) { |
105 | it = attachments.end(); | ||
106 | _abort = true; | 105 | _abort = true; |
106 | break; | ||
107 | } | 107 | } |
108 | } | 108 | } |
109 | } | 109 | } |
110 | _body += "\n--" + boundary + "--"; | 110 | _body += "\n--" + boundary + "--"; |
111 | } | 111 | } |
112 | 112 | ||
113 | if (_abort) { | 113 | if (_abort) { |
114 | _body = QString(0); | 114 | _body = QString(0); |
115 | _header = QString(0); | 115 | _header = QString(0); |
116 | } | 116 | } |
117 | } | 117 | } |
118 | 118 | ||
119 | // Unfinished GPG code. | 119 | // Unfinished GPG code. |
120 | /* | 120 | /* |
121 | void MailFactory::openPgpEncrypt(const QString &text, QString &header, QString &body) | 121 | void MailFactory::openPgpEncrypt(const QString &text, QString &header, QString &body) |
122 | { | 122 | { |
123 | QString boundary = MiscFunctions::uniqueString(); | 123 | QString boundary = MiscFunctions::uniqueString(); |
124 | 124 | ||
125 | header += "Content-Type: multipart/encrypted; boundary=\"" + boundary + "\"; protocol=\"application/pgp-encrypted\"\n"; | 125 | header += "Content-Type: multipart/encrypted; boundary=\"" + boundary + "\"; protocol=\"application/pgp-encrypted\"\n"; |
126 | 126 | ||
127 | body += "--" + boundary + "\n"; | 127 | body += "--" + boundary + "\n"; |
128 | body += "Content-Type: application/pgp-encrypted\n\n"; | 128 | body += "Content-Type: application/pgp-encrypted\n\n"; |
129 | body += "Version: 1\n\n"; | 129 | body += "Version: 1\n\n"; |
130 | body += "--" + boundary + "\n"; | 130 | body += "--" + boundary + "\n"; |
131 | body += "Content-Type: application/octet-stream\n\n"; | 131 | body += "Content-Type: application/octet-stream\n\n"; |
132 | body += GpgHandling::encrypt(_smail.gpgReceivers(), text); | 132 | body += GpgHandling::encrypt(_smail.gpgReceivers(), text); |
133 | body += "\n--" + boundary + "--\n"; | 133 | body += "\n--" + boundary + "--\n"; |
134 | } | 134 | } |
135 | 135 | ||
136 | void MailFactory::openPgpSign(const QString &text, QString &header, QString &body) | 136 | void MailFactory::openPgpSign(const QString &text, QString &header, QString &body) |
137 | { | 137 | { |
138 | QString boundary = MiscFunctions::uniqueString(); | 138 | QString boundary = MiscFunctions::uniqueString(); |
139 | 139 | ||
140 | header += "Content-Type: multipart/signed; boundary=\"" + boundary + "\"; protocol=\"application/pgp-signature\"\n"; | 140 | header += "Content-Type: multipart/signed; boundary=\"" + boundary + "\"; protocol=\"application/pgp-signature\"\n"; |
141 | 141 | ||
142 | body += "--" + boundary + "\n"; | 142 | body += "--" + boundary + "\n"; |
143 | 143 | ||
144 | QString temp; | 144 | QString temp; |
145 | temp += "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; | 145 | temp += "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; |
146 | temp += "Content-Transfer-Encoding: quoted-printable\n\n"; | 146 | temp += "Content-Transfer-Encoding: quoted-printable\n\n"; |
147 | temp += MiscFunctions::encodeQPrintable(text) + "\n"; | 147 | temp += MiscFunctions::encodeQPrintable(text) + "\n"; |
148 | body += temp; | 148 | body += temp; |
149 | 149 | ||
150 | temp.replace(QRegExp("\n"), "\r\n"); | 150 | temp.replace(QRegExp("\n"), "\r\n"); |
151 | QString signature = GpgHandling::sign(temp, _parent); | 151 | QString signature = GpgHandling::sign(temp, _parent); |
152 | 152 | ||
153 | body += "\n--" + boundary + "\n"; | 153 | body += "\n--" + boundary + "\n"; |
154 | body += "Content-Type: application/pgp-signature\n\n"; | 154 | body += "Content-Type: application/pgp-signature\n\n"; |
155 | body += signature + "\n"; | 155 | body += signature + "\n"; |
156 | body += "\n--" + boundary + "--\n"; | 156 | body += "\n--" + boundary + "--\n"; |
157 | } | 157 | } |
158 | 158 | ||
159 | void MailFactory::openPgpSignEncrypt(const QString &text, QString &header, QString &message) | 159 | void MailFactory::openPgpSignEncrypt(const QString &text, QString &header, QString &message) |
160 | { | 160 | { |
161 | QString header_, message_; | 161 | QString header_, message_; |
162 | openPgpSign(text, header_, message_); | 162 | openPgpSign(text, header_, message_); |
163 | openPgpEncrypt(header_ + "\n" + message_, header, message); | 163 | openPgpEncrypt(header_ + "\n" + message_, header, message); |
164 | } | 164 | } |
165 | */ | 165 | */ |
166 | void MailFactory::genMail(QString &header, QString &message, SendMail &smail, QWidget *parent) | 166 | void MailFactory::genMail(QString &header, QString &message, SendMail &smail, QWidget *parent) |
167 | { | 167 | { |
168 | MailFactory factory(smail, parent); | 168 | MailFactory factory(smail, parent); |
169 | 169 | ||
170 | header = factory._header; | 170 | header = factory._header; |