summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/unsupported/mail2/composer.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/noncore/unsupported/mail2/composer.cpp b/noncore/unsupported/mail2/composer.cpp
index 03dacae..52ebbdd 100644
--- a/noncore/unsupported/mail2/composer.cpp
+++ b/noncore/unsupported/mail2/composer.cpp
@@ -143,49 +143,49 @@ void Composer::slotSendMail()
}
QValueList<Attachment> attachments;
QListViewItem *item;
for (item = attachView->firstChild(); item != 0; item = item->itemBelow()) {
attachments.append(((AttachViewItem *)item)->attachment());
}
smail.setAttachments(attachments);
QString header, message;
MailFactory::genMail(header, message, smail, this);
if (header.isNull() || message.isNull()) return; // Aborted.
abort->setEnabled(true);
SmtpHandler *handler = new SmtpHandler(header, message, accountsLoaded[from->currentItem()], to->text());
connect(handler, SIGNAL(finished()), SLOT(slotSendFinished()));
connect(handler, SIGNAL(error(const QString &)), SLOT(slotSendError(const QString &)));
connect(handler, SIGNAL(status(const QString &)), status, SLOT(setText(const QString &)));
}
void Composer::slotSendQueued()
{
-
+ int effSendCount = 0;
qDebug("Sending queued messages");
Config cfg( "mailqueue", Config::User );
cfg.setGroup( "Settings" );
_sendCount = 0;
_sendError = 0;
_toSend = cfg.readNumEntry( "count", 0 );
if (_toSend == 0) close();
qDebug("%i messages to send", _toSend);
QString str;
for (int i=1;i<=_toSend;i++)
{
qDebug("sending message %i",i);
cfg.setGroup( "Mail_" + QString::number(i) );
SendMail smail;
str = cfg.readEntry("from");
qDebug("setFrom %s",str.latin1());
smail.setFrom( str );
str = cfg.readEntry("reply");
qDebug("setReplyTo %s",str.latin1());
smail.setReplyTo( str );
QString toAdr = cfg.readEntry("to");
qDebug("to %s",toAdr.latin1());
@@ -224,54 +224,59 @@ void Composer::slotSendQueued()
int ac = cfg.readNumEntry( "attachments", 0 );
qDebug("%i Attachments",ac);
for (int j = 0; i < ac; ac++) {
an = "Attachment_" + QString::number( j );
qDebug(an.latin1());
a.setFileName(cfg.readEntry( an + "fileName" ));
a.setNewName(cfg.readEntry( an + "newName" ));
a.setDescription(cfg.readEntry( an + "description" ));
a.setDocLnk( DocLnk( cfg.readEntry( an + "docLnk" )) );
attachments.append( a );
}
smail.setAttachments(attachments);
qDebug("putting mail together");
QString header, message;
MailFactory::genMail(header, message, smail, this);
if (header.isNull() || message.isNull()) continue;//return; // Aborted.
// abort->setEnabled(true);
qDebug("Sending to %s",toAdr.latin1());
SmtpHandler *handler = new SmtpHandler(header, message, accnt ,toAdr);
-
+ effSendCount++;
connect(handler, SIGNAL(finished()), SLOT(slotSendQueuedFinished()));
connect(handler, SIGNAL(error(const QString &)), SLOT(slotSendQueuedError(const QString &)));
connect(handler, SIGNAL(status(const QString &)), status, SLOT(setText(const QString &)));
}
+ if (effSendCount < _toSend)
+ {
+ _toSend = effSendCount;
+ QMessageBox::information(this, tr("Error"), tr("<p>There was a problem sending some of the queued mails.</p>"), tr("Ok"));
+ }
}
void Composer::slotQueueMail()
{
if (to->text().find(QRegExp(".*\\@.*\\..*")) == -1) {
QMessageBox::information(this, tr("Error"), tr("<p>You have to specify a recipient.<br>(eg: foo@bar.org)</p>"), tr("Ok"));
return;
}
Config cfg( "mailqueue", Config::User );
cfg.setGroup( "Settings" );
int count = cfg.readNumEntry( "count", 0 );
count++;
cfg.writeEntry( "count", count );
qDebug("queueing mail %i",count);
cfg.setGroup( "Mail_" + QString::number( count ));
cfg.writeEntry( "from", from->currentText() );
cfg.writeEntry( "reply", replyto->text());
cfg.writeEntry( "to", to->text());
cfg.writeEntry( "cc", cc->text());
cfg.writeEntry( "bcc", bcc->text());
cfg.writeEntry( "subject", subject->text());