summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--kabc/addresseeview.cpp6
-rw-r--r--korganizer/koeventviewer.cpp24
-rw-r--r--libkcal/person.cpp8
-rw-r--r--libkcal/person.h1
-rw-r--r--libkdepim/externalapphandler.cpp109
5 files changed, 124 insertions, 24 deletions
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp
index aae923c..5c24acf 100644
--- a/kabc/addresseeview.cpp
+++ b/kabc/addresseeview.cpp
@@ -131,39 +131,41 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
131 //setText( QString::null ); 131 //setText( QString::null );
132 mCurrentContact = mAddressee; 132 mCurrentContact = mAddressee;
133 if ( mAddressee.isEmpty() ) { 133 if ( mAddressee.isEmpty() ) {
134 setText( QString::null); 134 setText( QString::null);
135 return; 135 return;
136 } 136 }
137#if 0 137#if 0
138 QString name = ( mAddressee.assembledName().isEmpty() ? 138 QString name = ( mAddressee.assembledName().isEmpty() ?
139 mAddressee.formattedName() : mAddressee.assembledName() ); 139 mAddressee.formattedName() : mAddressee.assembledName() );
140#endif 140#endif
141 141
142 QString name = mAddressee.realName(); 142 QString name = mAddressee.realName();
143 143 QString assName = mAddressee.assembledName();
144 if ( assName.isEmpty() )
145 assName = name;
144 QString dynamicPart; 146 QString dynamicPart;
145 147
146 dynamicPart += getPhoneNumbers( mAddressee.phoneNumbers(),true ); 148 dynamicPart += getPhoneNumbers( mAddressee.phoneNumbers(),true );
147 QStringList emails = mAddressee.emails(); 149 QStringList emails = mAddressee.emails();
148 QStringList::ConstIterator emailIt; 150 QStringList::ConstIterator emailIt;
149 QString type = i18n( "Email" ); 151 QString type = i18n( "Email" );
150 emailIt = emails.begin(); 152 emailIt = emails.begin();
151 if ( emailIt != emails.end() ) { 153 if ( emailIt != emails.end() ) {
152 if ( kemailAvail ) { 154 if ( kemailAvail ) {
153 dynamicPart += QString( 155 dynamicPart += QString(
154 "<tr><td align=\"right\"><b>%1</b></td>" 156 "<tr><td align=\"right\"><b>%1</b></td>"
155 "<td align=\"left\"><a href=\"mailto:%2 <%3> \">%4</a></td></tr>" ) 157 "<td align=\"left\"><a href=\"mailto:%2 <%3> \">%4</a></td></tr>" )
156 .arg( type ) 158 .arg( type )
157 .arg( name ) 159 .arg( assName )
158 .arg( *emailIt ) 160 .arg( *emailIt )
159 .arg( *emailIt ); 161 .arg( *emailIt );
160 ++emailIt; 162 ++emailIt;
161 } else { 163 } else {
162 dynamicPart += QString( 164 dynamicPart += QString(
163 "<tr><td align=\"right\"><b>%1</b></td>" 165 "<tr><td align=\"right\"><b>%1</b></td>"
164 "<td align=\"left\">%2</td></tr>" ) 166 "<td align=\"left\">%2</td></tr>" )
165 .arg( type ) 167 .arg( type )
166 .arg( *emailIt ); 168 .arg( *emailIt );
167 ++emailIt; 169 ++emailIt;
168 } 170 }
169 } 171 }
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index 976ee2c..02b54da 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -48,27 +48,27 @@
48//#ifndef KORG_NOKABC 48//#ifndef KORG_NOKABC
49//#include <kabc/stdaddressbook.h> 49//#include <kabc/stdaddressbook.h>
50//#define size count 50//#define size count
51//#endif 51//#endif
52 52
53#ifdef DESKTOP_VERSION 53#ifdef DESKTOP_VERSION
54#include <kabc/addresseedialog.h> 54#include <kabc/addresseedialog.h>
55#include <kabc/addresseeview.h> 55#include <kabc/addresseeview.h>
56#include <qprinter.h> 56#include <qprinter.h>
57#include <qpainter.h> 57#include <qpainter.h>
58#include <qpaintdevicemetrics.h> 58#include <qpaintdevicemetrics.h>
59#else //DESKTOP_VERSION 59#else //DESKTOP_VERSION
60#include <externalapphandler.h>
61#include <qtopia/qcopenvelope_qws.h> 60#include <qtopia/qcopenvelope_qws.h>
62#endif //DESKTOP_VERSION 61#endif //DESKTOP_VERSION
62#include <externalapphandler.h>
63 63
64KOEventViewer::KOEventViewer(QWidget *parent,const char *name) 64KOEventViewer::KOEventViewer(QWidget *parent,const char *name)
65 : QTextBrowser(parent,name) 65 : QTextBrowser(parent,name)
66{ 66{
67 mSyncMode = false; 67 mSyncMode = false;
68 mColorMode = 0; 68 mColorMode = 0;
69} 69}
70 70
71KOEventViewer::~KOEventViewer() 71KOEventViewer::~KOEventViewer()
72{ 72{
73} 73}
74 74
@@ -164,34 +164,35 @@ void KOEventViewer::setSource(const QString& n)
164 return; 164 return;
165 } 165 }
166 } 166 }
167 } 167 }
168 return; 168 return;
169 } 169 }
170 //requestNameEmailUidListFromKAPI("QPE/Application/kopi", this->name() /* name is here the unique uid*/); 170 //requestNameEmailUidListFromKAPI("QPE/Application/kopi", this->name() /* name is here the unique uid*/);
171 // the result should now arrive through method insertAttendees 171 // the result should now arrive through method insertAttendees
172 //QString uid = "uid:"+(*it).uid(); 172 //QString uid = "uid:"+(*it).uid();
173#endif 173#endif
174 if ( n.left(6) == "mailto" ) { 174 if ( n.left(6) == "mailto" ) {
175 // qDebug("KOEventViewer::setSource %s ", n.mid(7).latin1()); 175 // qDebug("KOEventViewer::setSource %s ", n.mid(7).latin1());
176#ifndef DESKTOP_VERSION 176 //#ifndef DESKTOP_VERSION
177 if ( n.mid(7,3) == "ALL" ) { 177 if ( n.mid(7,3) == "ALL" ) {
178 mailToAttendees( true ); 178 mailToAttendees( true );
179 } else if ( n.mid(7,4) == "RSVP" ) { 179 } else if ( n.mid(7,4) == "RSVP" ) {
180 mailToAttendees( false ); 180 mailToAttendees( false );
181 } else { 181 } else {
182 QCopEnvelope e("QPE/Application/ompi", "newMail(QString)" ); 182 ExternalAppHandler::instance()->mailToOneContact( n.mid(7) );
183 e << n.mid(7); 183 //QCopEnvelope e("QPE/Application/ompi", "newMail(QString)" );
184 //e << n.mid(7);
184 } 185 }
185#endif 186 //#endif
186 187
187 } 188 }
188 189
189 190
190#ifndef KORG_NODCOP 191#ifndef KORG_NODCOP
191 kdDebug() << "KOEventViewer::setSource(): " << n << endl; 192 kdDebug() << "KOEventViewer::setSource(): " << n << endl;
192 QString tmpStr; 193 QString tmpStr;
193 if (n.startsWith("mailto:")) { 194 if (n.startsWith("mailto:")) {
194 KApplication::kApplication()->invokeMailer(n.mid(7),QString::null); 195 KApplication::kApplication()->invokeMailer(n.mid(7),QString::null);
195 //emit showIncidence(n); 196 //emit showIncidence(n);
196 return; 197 return;
197 } else if (n.startsWith("uid:")) { 198 } else if (n.startsWith("uid:")) {
@@ -230,32 +231,39 @@ void KOEventViewer::setSource(const QString& n)
230} 231}
231void KOEventViewer::mailToAttendees( bool all ) 232void KOEventViewer::mailToAttendees( bool all )
232{ 233{
233 QPtrList<Attendee> attendees = mCurrentIncidence->attendees(); 234 QPtrList<Attendee> attendees = mCurrentIncidence->attendees();
234 if (attendees.count() == 0) return; 235 if (attendees.count() == 0) return;
235 QStringList nameList; 236 QStringList nameList;
236 QStringList emailList; 237 QStringList emailList;
237 QStringList uidList; 238 QStringList uidList;
238 Attendee* a; 239 Attendee* a;
239 for(a=attendees.first();a;a=attendees.next()) { 240 for(a=attendees.first();a;a=attendees.next()) {
240 if ( !all && !a->RSVP() ) continue; 241 if ( !all && !a->RSVP() ) continue;
241 if (!a->email().isEmpty()) { 242 if (!a->email().isEmpty()) {
242 nameList.append (a->name() ); 243#ifndef DESKTOP_VERSION
244 nameList.append (a->realName() );
243 emailList.append (a->email() ); 245 emailList.append (a->email() );
244 uidList.append (a->uid() ); 246 uidList.append (a->uid() );
247#else
248 emailList.append(a->realName() +" <" + a->email() +">");
249#endif
245 } 250 }
246 } 251 }
247 QString uid = "ComposeMailUIpick2"+mMailSubject;
248#ifndef DESKTOP_VERSION 252#ifndef DESKTOP_VERSION
253 QString uid = "ComposeMailUIpick2"+mMailSubject;
249 bool res = ExternalAppHandler::instance()->returnNameEmailUidListFromKAPI("QPE/Application/ompi", uid, nameList, emailList, uidList); 254 bool res = ExternalAppHandler::instance()->returnNameEmailUidListFromKAPI("QPE/Application/ompi", uid, nameList, emailList, uidList);
255
256#else
257 ExternalAppHandler::instance()->mailToMultipleContacts( emailList.join(","), mMailSubject );
250#endif 258#endif
251 259
252} 260}
253void KOEventViewer::addTag(const QString & tag,const QString & text) 261void KOEventViewer::addTag(const QString & tag,const QString & text)
254{ 262{
255 int number=text.contains("\n"); 263 int number=text.contains("\n");
256 QString str = "<" + tag + ">"; 264 QString str = "<" + tag + ">";
257 QString tmpText=text; 265 QString tmpText=text;
258 QString tmpStr=str; 266 QString tmpStr=str;
259 if(number !=-1) 267 if(number !=-1)
260 { 268 {
261 if (number > 0) { 269 if (number > 0) {
@@ -661,25 +669,25 @@ void KOEventViewer::formatAttendees(Incidence *event)
661#endif //DESKTOP_VERSION 669#endif //DESKTOP_VERSION
662#else 670#else
663 //qDebug("nokabc "); 671 //qDebug("nokabc ");
664 mText += "<li><a href=\"uid:" + a->uid() + "\">"; 672 mText += "<li><a href=\"uid:" + a->uid() + "\">";
665 if (!a->name().isEmpty()) mText += a->name(); 673 if (!a->name().isEmpty()) mText += a->name();
666 else mText += a->email(); 674 else mText += a->email();
667 mText += "</a>\n"; 675 mText += "</a>\n";
668#endif 676#endif
669 677
670 678
671 if (!a->email().isEmpty()) { 679 if (!a->email().isEmpty()) {
672 if (iconPath) { 680 if (iconPath) {
673 mText += "<a href=\"mailto:" + a->name() +" <" + a->email() + ">:" + mMailSubject + "\">"; 681 mText += "<a href=\"mailto:" + a->realName() +" <" + a->email() + ">:" + mMailSubject + "\">";
674 if ( a->RSVP() ) { 682 if ( a->RSVP() ) {
675 ++a_count_nr; 683 ++a_count_nr;
676 mText += "<IMG src=\"" + iconPath + "\">"; 684 mText += "<IMG src=\"" + iconPath + "\">";
677 } 685 }
678 else { 686 else {
679 ++a_count; 687 ++a_count;
680 mText += "<IMG src=\"" + NOiconPath + "\">"; 688 mText += "<IMG src=\"" + NOiconPath + "\">";
681 } 689 }
682 mText += "</a>\n"; 690 mText += "</a>\n";
683 } 691 }
684 } 692 }
685 if (a->status() != Attendee::NeedsAction ) 693 if (a->status() != Attendee::NeedsAction )
diff --git a/libkcal/person.cpp b/libkcal/person.cpp
index aca28c2..858805d 100644
--- a/libkcal/person.cpp
+++ b/libkcal/person.cpp
@@ -40,25 +40,31 @@ Person::Person( const QString &name, const QString &email )
40{ 40{
41 setName(name); 41 setName(name);
42 setEmail(email); 42 setEmail(email);
43} 43}
44 44
45 45
46bool KCal::operator==( const Person& p1, const Person& p2 ) 46bool KCal::operator==( const Person& p1, const Person& p2 )
47{ 47{
48 return ( p1.name() == p2.name() && 48 return ( p1.name() == p2.name() &&
49 p1.email() == p2.email() ); 49 p1.email() == p2.email() );
50} 50}
51 51
52 52QString Person::realName() const
53{
54 int ccc = mName.find (',');
55 if ( ccc < 0 )
56 return mName;
57 return mName.mid( ccc+1 ).stripWhiteSpace() + " " + mName.left( ccc ).stripWhiteSpace();
58}
53QString Person::fullName() const 59QString Person::fullName() const
54{ 60{
55 if( mName.isEmpty() ) { 61 if( mName.isEmpty() ) {
56 return mEmail; 62 return mEmail;
57 } else { 63 } else {
58 if( mEmail.isEmpty() ) 64 if( mEmail.isEmpty() )
59 return mName; 65 return mName;
60 else 66 else
61 return mName + " <" + mEmail + ">"; 67 return mName + " <" + mEmail + ">";
62 } 68 }
63} 69}
64 70
diff --git a/libkcal/person.h b/libkcal/person.h
index c46c5f0..3cec153 100644
--- a/libkcal/person.h
+++ b/libkcal/person.h
@@ -26,24 +26,25 @@ namespace KCal {
26 26
27class Person 27class Person
28{ 28{
29 public: 29 public:
30 Person() {} 30 Person() {}
31 Person( const QString &fullName ); 31 Person( const QString &fullName );
32 Person( const QString &name, const QString &email ); 32 Person( const QString &name, const QString &email );
33 33
34 QString fullName( ) const; 34 QString fullName( ) const;
35 35
36 void setName(const QString &); 36 void setName(const QString &);
37 QString name() const { return mName; } 37 QString name() const { return mName; }
38 QString realName() const;
38 39
39 void setEmail(const QString &); 40 void setEmail(const QString &);
40 QString email() const { return mEmail; } 41 QString email() const { return mEmail; }
41 42
42 private: 43 private:
43 QString mName; 44 QString mName;
44 QString mEmail; 45 QString mEmail;
45}; 46};
46 47
47 bool operator==( const Person& p1, const Person& p2 ); 48 bool operator==( const Person& p1, const Person& p2 );
48} 49}
49 50
diff --git a/libkdepim/externalapphandler.cpp b/libkdepim/externalapphandler.cpp
index 2ce6926..edefda4 100644
--- a/libkdepim/externalapphandler.cpp
+++ b/libkdepim/externalapphandler.cpp
@@ -30,24 +30,25 @@ $Id$
30#include <stdlib.h> 30#include <stdlib.h>
31 31
32#include <qfile.h> 32#include <qfile.h>
33#include <qtimer.h> 33#include <qtimer.h>
34#include <qmap.h> 34#include <qmap.h>
35#include <qregexp.h> 35#include <qregexp.h>
36 36
37#ifndef DESKTOP_VERSION 37#ifndef DESKTOP_VERSION
38#include <qpe/qpeapplication.h> 38#include <qpe/qpeapplication.h>
39#include <qtopia/qcopenvelope_qws.h> 39#include <qtopia/qcopenvelope_qws.h>
40#else 40#else
41#include <qapplication.h> 41#include <qapplication.h>
42#include <qprocess.h>
42#endif 43#endif
43 44
44#include <kstaticdeleter.h> 45#include <kstaticdeleter.h>
45#include <kmessagebox.h> 46#include <kmessagebox.h>
46 47
47 48
48#include "externalapphandler.h" 49#include "externalapphandler.h"
49 50
50#include "kpimglobalprefs.h" 51#include "kpimglobalprefs.h"
51 52
52//uncomment line to get debug output 53//uncomment line to get debug output
53//#define DEBUG_EXT_APP_HANDLER 54//#define DEBUG_EXT_APP_HANDLER
@@ -425,39 +426,58 @@ void ExternalAppHandler::loadConfig()
425 426
426 427
427 428
428 //mailclients 429 //mailclients
429 QString mailmsg1 = "writeMail(QString,QString)"; 430 QString mailmsg1 = "writeMail(QString,QString)";
430 QString mailmsg2 = "writeMail(QMap(QString,QString))"; 431 QString mailmsg2 = "writeMail(QMap(QString,QString))";
431 432
432 QString undefined = ""; 433 QString undefined = "";
433 434
434 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::NONE_EMC, "No email client installed", undefined, undefined, undefined, undefined, undefined); 435 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::NONE_EMC, "No email client installed", undefined, undefined, undefined, undefined, undefined);
435 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OTHER_EMC, "Userdefined email client", undefined, undefined, undefined, undefined, undefined); 436 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OTHER_EMC, "Userdefined email client", undefined, undefined, undefined, undefined, undefined);
436 437
438#ifdef DESKTOP_VERSION
439 QString appPath;
440#ifdef _WIN32_
441 appPath = "C:\\Programme\\Mozilla Thunderbird\\thunderbird.exe";
442#else
443 appPath = "/usr/bin/thunderbird";
444#endif
445 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OMPI_EMC, "Mozilla Thunderbird", appPath, "-compose", "to=%1 <%2>", ",", "subject=%1");
446
447#ifdef _WIN32_
448 appPath = "C:\\Programme\\Mozilla\\mozilla.exe";
449#else
450 appPath = "/usr/bin/mozilla";
451#endif
452 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::QTOPIA_EMC, "Mozilla Suite", appPath, "-mail -compose", "to=%1 <%2>", ",", "subject=%1");
453
454
455
456#else
437 if (( QFile::exists( qtopiapath + "/bin/ompi" )) || 457 if (( QFile::exists( qtopiapath + "/bin/ompi" )) ||
438 ( QFile::exists( opiepath + "/bin/ompi" )) || 458 ( QFile::exists( opiepath + "/bin/ompi" )) ||
439 ( QFile::exists( qtpath + "/bin/ompi" ))) 459 ( QFile::exists( qtpath + "/bin/ompi" )))
440 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OMPI_EMC, "OM/Pi email client", "QPE/Application/ompi", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2"); 460 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OMPI_EMC, "OM/Pi email client", "QPE/Application/ompi", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2");
441 461
442 if (( QFile::exists( qtopiapath + "/bin/qtmail" )) || 462 if (( QFile::exists( qtopiapath + "/bin/qtmail" )) ||
443 ( QFile::exists( qtpath + "/bin/qtmail" ))) 463 ( QFile::exists( qtpath + "/bin/qtmail" )))
444 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::QTOPIA_EMC, "Qtopia email client", "QPE/Application/qtmail", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2"); 464 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::QTOPIA_EMC, "Qtopia email client", "QPE/Application/qtmail", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2");
445 465
446 if ( QFile::exists( opiepath + "/bin/opiemail" )) 466 if ( QFile::exists( opiepath + "/bin/opiemail" ))
447 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OPIE_EMC, "Opie email client", "QPE/Application/opiemail", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2"); 467 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OPIE_EMC, "Opie email client", "QPE/Application/opiemail", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2");
448 468
449 if ( QFile::exists( opiepath + "/bin/mailit" )) 469 if ( QFile::exists( opiepath + "/bin/mailit" ))
450 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OPIE_MAILIT_EMC, "Opie mailit email client", "QPE/Application/mailit", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2"); 470 addDefaultAppItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::OPIE_MAILIT_EMC, "Opie mailit email client", "QPE/Application/mailit", mailmsg1, "%1;%2", mailmsg2, "TO=%1;ATTACHMENT=%2");
451 471#endif
452 472
453 473
454 //phoneclients 474 //phoneclients
455 475
456 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::NONE_PHC, "No phone client installed", undefined, undefined, undefined, undefined, undefined); 476 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::NONE_PHC, "No phone client installed", undefined, undefined, undefined, undefined, undefined);
457 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::OTHER_PHC, "Other phone client", undefined, undefined, undefined, undefined, undefined); 477 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::OTHER_PHC, "Other phone client", undefined, undefined, undefined, undefined, undefined);
458 if (( QFile::exists( qtopiapath + "/bin/kppi" )) || 478 if (( QFile::exists( qtopiapath + "/bin/kppi" )) ||
459 ( QFile::exists( opiepath + "/bin/kppi" ))) 479 ( QFile::exists( opiepath + "/bin/kppi" )))
460 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::KPPI_PHC, "KP/Pi phone client", "QPE/Application/kppi", "-ring:%1", "", undefined, undefined); 480 addDefaultAppItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::KPPI_PHC, "KP/Pi phone client", "QPE/Application/kppi", "-ring:%1", "", undefined, undefined);
461 481
462 //faxclients 482 //faxclients
463 addDefaultAppItem(ExternalAppHandler::FAX, KPimGlobalPrefs::NONE_FAC, "No fax client installed", undefined, undefined, undefined, undefined, undefined); 483 addDefaultAppItem(ExternalAppHandler::FAX, KPimGlobalPrefs::NONE_FAC, "No fax client installed", undefined, undefined, undefined, undefined, undefined);
@@ -519,38 +539,35 @@ DefaultAppItem* ExternalAppHandler::getDefaultItem(Types type, int clientid)
519 539
520 for ( dai=mDefaultItems.first(); dai != 0; dai=mDefaultItems.next() ) 540 for ( dai=mDefaultItems.first(); dai != 0; dai=mDefaultItems.next() )
521 { 541 {
522 if (dai->_type == type && dai->_id == clientid) 542 if (dai->_type == type && dai->_id == clientid)
523 return dai; 543 return dai;
524 } 544 }
525 545
526 return 0; 546 return 0;
527} 547}
528 548
529bool ExternalAppHandler::isEmailAppAvailable() 549bool ExternalAppHandler::isEmailAppAvailable()
530{ 550{
531#ifndef DESKTOP_VERSION 551
532 if (mEmailAppAvailable == UNDEFINED) 552 if (mEmailAppAvailable == UNDEFINED)
533 { 553 {
534 int client = KPimGlobalPrefs::instance()->mEmailClient; 554 int client = KPimGlobalPrefs::instance()->mEmailClient;
535 if (client == KPimGlobalPrefs::NONE_EMC) 555 if (client == KPimGlobalPrefs::NONE_EMC)
536 mEmailAppAvailable = UNAVAILABLE; 556 mEmailAppAvailable = UNAVAILABLE;
537 else 557 else
538 mEmailAppAvailable = AVAILABLE; 558 mEmailAppAvailable = AVAILABLE;
539 } 559 }
540 return (mEmailAppAvailable == AVAILABLE); 560 return (mEmailAppAvailable == AVAILABLE);
541 561
542#else //DESKTOP_VERSION
543 return false;
544#endif //DESKTOP_VERSION
545} 562}
546 563
547bool ExternalAppHandler::isSMSAppAvailable() 564bool ExternalAppHandler::isSMSAppAvailable()
548{ 565{
549#ifndef DESKTOP_VERSION 566#ifndef DESKTOP_VERSION
550 if (mSMSAppAvailable == UNDEFINED) 567 if (mSMSAppAvailable == UNDEFINED)
551 { 568 {
552 int client = KPimGlobalPrefs::instance()->mSMSClient; 569 int client = KPimGlobalPrefs::instance()->mSMSClient;
553 if (client == KPimGlobalPrefs::NONE_SMC) 570 if (client == KPimGlobalPrefs::NONE_SMC)
554 mSMSAppAvailable = UNAVAILABLE; 571 mSMSAppAvailable = UNAVAILABLE;
555 else 572 else
556 mSMSAppAvailable = AVAILABLE; 573 mSMSAppAvailable = AVAILABLE;
@@ -679,39 +696,93 @@ bool ExternalAppHandler::mailToMultipleContacts( const QString& emails, const QS
679 qDebug("passing emailadresses(%s), attachmenturls(%s) as parameters in the form %s to QCopEnvelope", emails.latin1() , urls.latin1(), parameters2.latin1()); 696 qDebug("passing emailadresses(%s), attachmenturls(%s) as parameters in the form %s to QCopEnvelope", emails.latin1() , urls.latin1(), parameters2.latin1());
680#endif 697#endif
681 698
682 699
683 QCopEnvelope e(channel.latin1(), message2.latin1()); 700 QCopEnvelope e(channel.latin1(), message2.latin1());
684 //US we need no names in the To field. The emailadresses are enough 701 //US we need no names in the To field. The emailadresses are enough
685 702
686 passParameters(&e, parameters2, emails, urls); 703 passParameters(&e, parameters2, emails, urls);
687 704
688 705
689 706
690#else 707#else
691 KMessageBox::sorry( 0, i18n( "This version does not support the sending of emails." ) ); 708 //qDebug("mtmc %s %s ", emails.latin1(), urls.latin1());
709
710 QString channel;
711 QString message2;
712 QString parameters2;
713 QString message;
714 QString parameters;
715
716
717 int client = KPimGlobalPrefs::instance()->mEmailClient;
718 if (client == KPimGlobalPrefs::OTHER_EMC)
719 {
720 channel = KPimGlobalPrefs::instance()->mEmailOtherChannel;
721 message2 = KPimGlobalPrefs::instance()->mEmailOtherMessage;
722 parameters2 = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters;
723 }
724 else
725 {
726 DefaultAppItem* dai = getDefaultItem(EMAIL, client);
727 if (!dai)
728 {
729 qDebug("could not find configured email application.");
730 return false;
731 }
732 channel = dai->_channel;
733 message2 = dai->_message2;
734 parameters2 = dai->_parameters2;
735 message = dai->_message;
736 parameters = dai->_parameters;
737 }
738
739 //first check if one of the mailers need the emails right in the message.
740 message2 = translateMessage(message2, emails, urls);
741#ifdef DEBUG_EXT_APP_HANDLER
742 qDebug("4Using QCopEnvelope e(\"%s\",\"%s\")", channel.latin1(), message2.latin1());
743 qDebug("passing emailadresses(%s), attachmenturls(%s) as parameters in the form %s to QCopEnvelope", emails.latin1() , urls.latin1(), parameters2.latin1());
744#endif
745 qDebug("%s --- %s %s --- %s %s", channel.latin1(), message.latin1(),message2.latin1(), parameters.latin1(), parameters2.latin1() );
746 //KMessageBox::sorry( 0, message2 );
747 QProcess * proc = new QProcess( this );
748 QStringList list = QStringList::split( " ", message );
749 int i = 0;
750 proc->addArgument( channel );
751 while ( i < list.count ( ) ) {
752 //qDebug("add%sdd ",list[i].stripWhiteSpace().latin1() );
753 proc->addArgument( list[i].stripWhiteSpace() );
754 ++i;
755 }
756 parameters2 = translateMessage(parameters2, urls, "" );
757 QString arg = "to='%1'";
758 arg = arg.arg( emails ) + ","+parameters2;;
759
760 //qDebug("2add%sdd ",arg.latin1() );
761 proc->addArgument( arg);
762 proc->launch("");
692#endif 763#endif
693 764
694 return true; 765 return true;
695} 766}
696 767
697/************************************************************************** 768/**************************************************************************
698 * 769 *
699 **************************************************************************/ 770 **************************************************************************/
700 771
701 772
702//calls the emailapplication and creates a mail with parameter emails as recipients 773//calls the emailapplication and creates a mail with parameter emails as recipients
703bool ExternalAppHandler::mailToOneContact( const QString& name, const QString& emailadress ) 774bool ExternalAppHandler::mailToOneContact( const QString& name, const QString& emailadress )
704{ 775{
705#ifndef DESKTOP_VERSION 776
706 QString channel; 777 QString channel;
707 QString message; 778 QString message;
708 QString parameters; 779 QString parameters;
709 780
710 781
711 int client = KPimGlobalPrefs::instance()->mEmailClient; 782 int client = KPimGlobalPrefs::instance()->mEmailClient;
712 if (client == KPimGlobalPrefs::OTHER_EMC) 783 if (client == KPimGlobalPrefs::OTHER_EMC)
713 { 784 {
714 channel = KPimGlobalPrefs::instance()->mEmailOtherChannel; 785 channel = KPimGlobalPrefs::instance()->mEmailOtherChannel;
715 message = KPimGlobalPrefs::instance()->mEmailOtherMessage; 786 message = KPimGlobalPrefs::instance()->mEmailOtherMessage;
716 parameters = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters; 787 parameters = KPimGlobalPrefs::instance()->mEmailOtherMessageParameters;
717 } 788 }
@@ -719,45 +790,57 @@ bool ExternalAppHandler::mailToOneContact( const QString& name, const QString& e
719 { 790 {
720 DefaultAppItem* dai = ExternalAppHandler::getDefaultItem(EMAIL, client); 791 DefaultAppItem* dai = ExternalAppHandler::getDefaultItem(EMAIL, client);
721 if (!dai) 792 if (!dai)
722 { 793 {
723 qDebug("could not find configured email application."); 794 qDebug("could not find configured email application.");
724 return false; 795 return false;
725 } 796 }
726 channel = dai->_channel; 797 channel = dai->_channel;
727 message = dai->_message; 798 message = dai->_message;
728 parameters = dai->_parameters; 799 parameters = dai->_parameters;
729 } 800 }
730 801
731 802#ifdef DESKTOP_VERSION
803 //message = channel + " " +message + " \""+ parameters + "\"";
804#endif
732 //first check if one of the mailers need the emails right in the message. 805 //first check if one of the mailers need the emails right in the message.
733 message = translateMessage(message, name, emailadress); 806 message = translateMessage(message, name, emailadress);
734 807
735
736#ifdef DEBUG_EXT_APP_HANDLER 808#ifdef DEBUG_EXT_APP_HANDLER
737 qDebug("5Using QCopEnvelope e(\"%s\",\"%s\")", channel.latin1(), message.latin1()); 809 qDebug("5Using QCopEnvelope e(\"%s\",\"%s\")", channel.latin1(), message.latin1());
738 qDebug("passing name(%s), emailadresses(%s) as parameters in the form %s to QCopEnvelope", name.latin1(), emailadress.latin1(), parameters.latin1()); 810 qDebug("passing name(%s), emailadresses(%s) as parameters in the form %s to QCopEnvelope", name.latin1(), emailadress.latin1(), parameters.latin1());
739#endif 811#endif
740 812
813#ifndef DESKTOP_VERSION
741 QCopEnvelope e(channel.latin1(), message.latin1()); 814 QCopEnvelope e(channel.latin1(), message.latin1());
742 //US we need no names in the To field. The emailadresses are enough 815 //US we need no names in the To field. The emailadresses are enough
743 816
744 passParameters(&e, parameters, name, emailadress); 817 passParameters(&e, parameters, name, emailadress);
818#else // DESKTOP_VERSION
745 819
746 820 //KMessageBox::sorry( 0, message );
747#else 821 QProcess * proc = new QProcess( this );
748 KMessageBox::sorry( 0, i18n( "This version does not support the sending of emails." ) ); 822 QStringList list = QStringList::split( " ", message );
823 int i = 0;
824 proc->addArgument( channel );
825 while ( i < list.count ( ) ) {
826 //qDebug("add%sdd ",list[i].latin1() );
827 proc->addArgument( list[i] );
828 ++i;
829 }
830 parameters = translateMessage(parameters, name, emailadress);
831 proc->addArgument( parameters );
832 proc->launch("");
749#endif 833#endif
750 834
751
752 return true; 835 return true;
753} 836}
754 837
755/************************************************************************** 838/**************************************************************************
756 * 839 *
757 **************************************************************************/ 840 **************************************************************************/
758 841
759//calls the emailapplication and creates a mail with parameter as recipients 842//calls the emailapplication and creates a mail with parameter as recipients
760// parameters format is 843// parameters format is
761// NAME <EMAIL>:SUBJECT 844// NAME <EMAIL>:SUBJECT
762bool ExternalAppHandler::mailToOneContact( const QString& adressline ) 845bool ExternalAppHandler::mailToOneContact( const QString& adressline )
763{ 846{