summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--libkdepim/externalapphandler.cpp33
1 files changed, 26 insertions, 7 deletions
diff --git a/libkdepim/externalapphandler.cpp b/libkdepim/externalapphandler.cpp
index edefda4..59be506 100644
--- a/libkdepim/externalapphandler.cpp
+++ b/libkdepim/externalapphandler.cpp
@@ -697,87 +697,100 @@ bool ExternalAppHandler::mailToMultipleContacts( const QString& emails, const QS
#endif
QCopEnvelope e(channel.latin1(), message2.latin1());
//US we need no names in the To field. The emailadresses are enough
passParameters(&e, parameters2, emails, urls);
#else
//qDebug("mtmc %s %s ", emails.latin1(), urls.latin1());
QString channel;
QString message2;
QString parameters2;
QString message;
QString parameters;
int client = KPimGlobalPrefs::instance()->mEmailClient;
if (client == KPimGlobalPrefs::OTHER_EMC)
{
channel = KPimGlobalPrefs::instance()->mEmailOtherChannel;
- message2 = KPimGlobalPrefs::instance()->mEmailOtherMessage;
- parameters2 = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters;
+ message = KPimGlobalPrefs::instance()->mEmailOtherMessage;
+ message2 = KPimGlobalPrefs::instance()->mEmailOtherMessage2;
+ parameters = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters;
+ parameters2 = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters2;
}
else
{
DefaultAppItem* dai = getDefaultItem(EMAIL, client);
if (!dai)
{
qDebug("could not find configured email application.");
return false;
}
channel = dai->_channel;
message2 = dai->_message2;
parameters2 = dai->_parameters2;
message = dai->_message;
parameters = dai->_parameters;
}
//first check if one of the mailers need the emails right in the message.
message2 = translateMessage(message2, emails, urls);
#ifdef DEBUG_EXT_APP_HANDLER
qDebug("4Using QCopEnvelope e(\"%s\",\"%s\")", channel.latin1(), message2.latin1());
qDebug("passing emailadresses(%s), attachmenturls(%s) as parameters in the form %s to QCopEnvelope", emails.latin1() , urls.latin1(), parameters2.latin1());
#endif
qDebug("%s --- %s %s --- %s %s", channel.latin1(), message.latin1(),message2.latin1(), parameters.latin1(), parameters2.latin1() );
//KMessageBox::sorry( 0, message2 );
QProcess * proc = new QProcess( this );
- QStringList list = QStringList::split( " ", message );
int i = 0;
proc->addArgument( channel );
+
+ if ( message.find (" " ) > 0 ) {
+ QStringList list = QStringList::split( " ", message );
+ int i = 0;
while ( i < list.count ( ) ) {
- //qDebug("add%sdd ",list[i].stripWhiteSpace().latin1() );
- proc->addArgument( list[i].stripWhiteSpace() );
+ //qDebug("add%sdd ",list[i].latin1() );
+ proc->addArgument( list[i] );
+ //KMessageBox::sorry( 0,list[i]);
++i;
}
+ } else {
+ proc->addArgument(message );
+ //KMessageBox::sorry( 0, message );
+
+ }
+
parameters2 = translateMessage(parameters2, urls, "" );
QString arg = "to='%1'";
arg = arg.arg( emails ) + ","+parameters2;;
+ //KMessageBox::sorry( 0,arg );
//qDebug("2add%sdd ",arg.latin1() );
proc->addArgument( arg);
proc->launch("");
#endif
return true;
}
/**************************************************************************
*
**************************************************************************/
//calls the emailapplication and creates a mail with parameter emails as recipients
bool ExternalAppHandler::mailToOneContact( const QString& name, const QString& emailadress )
{
QString channel;
QString message;
QString parameters;
int client = KPimGlobalPrefs::instance()->mEmailClient;
if (client == KPimGlobalPrefs::OTHER_EMC)
@@ -796,58 +809,64 @@ bool ExternalAppHandler::mailToOneContact( const QString& name, const QString& e
}
channel = dai->_channel;
message = dai->_message;
parameters = dai->_parameters;
}
#ifdef DESKTOP_VERSION
//message = channel + " " +message + " \""+ parameters + "\"";
#endif
//first check if one of the mailers need the emails right in the message.
message = translateMessage(message, name, emailadress);
#ifdef DEBUG_EXT_APP_HANDLER
qDebug("5Using QCopEnvelope e(\"%s\",\"%s\")", channel.latin1(), message.latin1());
qDebug("passing name(%s), emailadresses(%s) as parameters in the form %s to QCopEnvelope", name.latin1(), emailadress.latin1(), parameters.latin1());
#endif
#ifndef DESKTOP_VERSION
QCopEnvelope e(channel.latin1(), message.latin1());
//US we need no names in the To field. The emailadresses are enough
passParameters(&e, parameters, name, emailadress);
#else // DESKTOP_VERSION
- //KMessageBox::sorry( 0, message );
+ //KMessageBox::sorry( 0,channel );
QProcess * proc = new QProcess( this );
+ proc->addArgument( channel );
+ if ( message.find (" " ) > 0 ) {
QStringList list = QStringList::split( " ", message );
int i = 0;
- proc->addArgument( channel );
while ( i < list.count ( ) ) {
//qDebug("add%sdd ",list[i].latin1() );
proc->addArgument( list[i] );
+ //KMessageBox::sorry( 0,list[i]);
++i;
}
+ } else {
+ proc->addArgument(message );
+
+ }
parameters = translateMessage(parameters, name, emailadress);
proc->addArgument( parameters );
proc->launch("");
#endif
return true;
}
/**************************************************************************
*
**************************************************************************/
//calls the emailapplication and creates a mail with parameter as recipients
// parameters format is
// NAME <EMAIL>:SUBJECT
bool ExternalAppHandler::mailToOneContact( const QString& adressline )
{
QString line = adressline;
int first = line.find( "<");
int last = line.find( ">");
QString name = line.left(first);
QString emailadress = line.mid(first+1, last-first-1);