summaryrefslogtreecommitdiff
path: root/noncore/unsupported/mail2/libmail
authorleseb <leseb>2002-06-17 20:52:48 (UTC)
committer leseb <leseb>2002-06-17 20:52:48 (UTC)
commitb177eb4a659c674d1bc3ab82d6d980aade7c0959 (patch) (side-by-side diff)
tree4ba2aee9db13423e37ae0a8051d80c010f815666 /noncore/unsupported/mail2/libmail
parent7ba6590093fb86fe4bf64839d3a517dd396853a3 (diff)
downloadopie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.zip
opie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.tar.gz
opie-b177eb4a659c674d1bc3ab82d6d980aade7c0959.tar.bz2
Fix some bugs when dealing with attachments
Diffstat (limited to 'noncore/unsupported/mail2/libmail') (more/less context) (show whitespace changes)
-rw-r--r--noncore/unsupported/mail2/libmail/mailfactory.cpp2
-rw-r--r--noncore/unsupported/mail2/libmail/mailfactory.h6
2 files changed, 4 insertions, 4 deletions
diff --git a/noncore/unsupported/mail2/libmail/mailfactory.cpp b/noncore/unsupported/mail2/libmail/mailfactory.cpp
index 6602919..e02f80f 100644
--- a/noncore/unsupported/mail2/libmail/mailfactory.cpp
+++ b/noncore/unsupported/mail2/libmail/mailfactory.cpp
@@ -65,49 +65,49 @@ MailFactory::MailFactory(SendMail &smail, QWidget *parent)
// QString header, body;
// openPgpSign(_smail.message(), header, body);
// _body += header + "\n" + body + "\n";
// } else if (_smail.encrypt() && _smail.sign()) {
// QString header, body;
// openPgpSignEncrypt(_smail.message(), header, body);
// _body += header + "\n" + body + "\n";
// } else {
// TODO: Do proper charset handling!
_body += "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
_body += "Content-Transfer-Encoding: 8bit\n\n";
_body += _smail.message() + "\n";
// }
QValueList<Attachment> attachments = _smail.attachments();
QValueList<Attachment>::Iterator it;
for (it = attachments.begin(); it != attachments.end(); it++) {
QFile f((*it).fileName());
if (f.open(IO_ReadOnly)) {
QTextStream t(&f);
QString file;
while (!t.atEnd()) file += t.readLine() + "\n";
f.close();
- QString mimetype = (new MimeType(*(*it).docLnk()))->id();
+ QString mimetype = (new MimeType((*it).docLnk()))->id();
_body += "\n--" + boundary + "\n";
_body += "Content-Type: " + mimetype + "; name=\"" + (*it).newName() + "\"\n";
// TODO: Decide which content transfer encoding is best. B64 for binary, QP for text.
_body += "Content-Transfer-Encoding: base64\n";
_body += "Content-Disposition: attachment; filename=\"" + (*it).newName() + "\"\n";
if (!(*it).description().isEmpty())
_body += "Content-Description: " + (*it).description() + "\n";
_body += "\n" + MiscFunctions::encodeBase64(file) + "\n";
} else {
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"));
if (ret != 0) {
_abort = true;
break;
}
}
}
_body += "\n--" + boundary + "--";
}
if (_abort) {
diff --git a/noncore/unsupported/mail2/libmail/mailfactory.h b/noncore/unsupported/mail2/libmail/mailfactory.h
index 8f67447..c938c27 100644
--- a/noncore/unsupported/mail2/libmail/mailfactory.h
+++ b/noncore/unsupported/mail2/libmail/mailfactory.h
@@ -1,49 +1,49 @@
#ifndef MAILFACTORY_H
#define MAILFACTORY_H
#include <qobject.h>
#include <qpe/applnk.h>
#include "configfile.h"
class Attachment
{
public:
void setFileName(QString fileName) { _fileName = fileName; }
void setNewName(QString newName) { _newName = newName; }
void setDescription(QString description) { _description = description; }
- void setDocLnk(DocLnk *docLnk) { _docLnk = docLnk; }
+ void setDocLnk(DocLnk docLnk) { _docLnk = docLnk; }
QString fileName() { return _fileName; }
QString newName() { return _newName; }
QString description() { return _description; }
- DocLnk *docLnk() { return _docLnk; }
+ DocLnk docLnk() { return _docLnk; }
protected:
QString _fileName, _newName, _description;
- DocLnk *_docLnk;
+ DocLnk _docLnk;
};
class SendMail
{
public:
SendMail() { _needsMime = false; }
void setAccount(Account account) { _account = account; }
void setFrom(QString from) { _from = from; }
void setReplyTo(QString replyTo) { _replyTo = replyTo; }
void setTo(QString to) { _to = to; }
void setCc(QString cc) { _cc = cc; }
void setBcc(QString bcc) { _bcc = bcc; }
void setSubject(QString subject) { _subject = subject; }
void setPriority(QString priority) { _priority = priority; }
void setMessage(QString message) { _message = message; }
void setInReplyTo(QString inReplyTo) { _inReplyTo = inReplyTo; }
void setNeedsMime(bool needsMime) { _needsMime = needsMime; }
//void setEncrypt(bool encrypt) { _encrypt = encrypt; }
//void setSign(bool sign) { _sign = sign; }