summaryrefslogtreecommitdiffabout
path: root/kaddressbook
Side-by-side diff
Diffstat (limited to 'kaddressbook') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kabcore.cpp26
1 files changed, 10 insertions, 16 deletions
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index d6f0cee..6610288 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -462,15 +462,19 @@ void KABCore::setContactSelected( const QString &uid )
void KABCore::sendMail()
{
sendMail( mViewManager->selectedEmails().join( ", " ) );
}
-void KABCore::sendMail( const QString& email )
+void KABCore::sendMail( const QString& emaillist )
{
- bool result = ExternalAppHandler::instance()->mailToContacts(email);
+ // the parameter has the form "name1 <abc@aol.com>,name2 <abc@aol.com>;... "
+ if (emaillist.contains(",") > 0)
+ ExternalAppHandler::instance()->mailToMultipleContacts( emaillist, QString::null );
+ else
+ ExternalAppHandler::instance()->mailToOneContact( emaillist );
}
void KABCore::mailVCard()
{
@@ -480,26 +484,15 @@ void KABCore::mailVCard()
}
void KABCore::mailVCard( const QStringList& uids )
{
QStringList urls;
- QString tmpdir = locateLocal("tmp", KGlobal::getAppName());
+// QString tmpdir = locateLocal("tmp", KGlobal::getAppName());
-/*US
- // Create a temp dir, so that we can put the files in it with proper names
- KTempFile tempDir;
- if ( tempDir.status() != 0 ) {
- kdWarning() << strerror( tempDir.status() ) << endl;
- return;
- }
-
- QString dirName = tempDir.name();
- tempDir.unlink();
-*/
- QString dirName = tmpdir + "/" + KApplication::randomString( 8 );
+ QString dirName = "/tmp/" + KApplication::randomString( 8 );
QDir().mkdir( dirName, true );
for( QStringList::ConstIterator it = uids.begin(); it != uids.end(); ++it ) {
@@ -510,12 +503,13 @@ void KABCore::mailVCard( const QStringList& uids )
QString name = a.givenName() + "_" + a.familyName() + ".vcf";
QString fileName = dirName + "/" + name;
QFile outFile(fileName);
+
if ( outFile.open(IO_WriteOnly) ) { // file opened successfully
KABC::VCardConverter converter;
QString vcard;
converter.addresseeToVCard( a, vcard );
@@ -526,13 +520,13 @@ void KABCore::mailVCard( const QStringList& uids )
outFile.close();
urls.append( fileName );
}
}
- bool result = ExternalAppHandler::instance()->mailAttachments(urls.join(", "));
+ bool result = ExternalAppHandler::instance()->mailToMultipleContacts( QString::null, urls.join(", ") );
/*US
kapp->invokeMailer( QString::null, QString::null, QString::null,
QString::null, // subject
QString::null, // body