-rw-r--r-- | noncore/unsupported/mail2/composer.cpp | 9 |
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()); |