95 |
95 |
96 void MsgUnifiedEditorAddress::fetchContacts() |
96 void MsgUnifiedEditorAddress::fetchContacts() |
97 { |
97 { |
98 mLaunchBtn->blockSignals(true); |
98 mLaunchBtn->blockSignals(true); |
99 |
99 |
100 QList<QVariant> args; |
100 QString service("phonebookservices"); |
101 QString serviceName("com.nokia.services.phonebookservices"); |
101 QString interface("com.nokia.symbian.IContactsFetch"); |
102 QString operation("fetch(QString,QString,QString)"); |
102 QString operation("multiFetch(QString,QString)"); |
103 XQAiwRequest* request; |
103 XQAiwRequest* request; |
104 XQApplicationManager appManager; |
104 XQApplicationManager appManager; |
105 request = appManager.create(serviceName, "Fetch", operation, true); // embedded |
105 request = appManager.create(service, interface, operation, true); // embedded |
106 if ( request == NULL ) |
106 if ( request == NULL ) |
107 { |
107 { |
108 return; |
108 return; |
109 } |
109 } |
110 |
110 |
111 // Result handlers |
111 // Result handlers |
112 connect (request, SIGNAL(requestOk(const QVariant&)), this, SLOT(handleOk(const QVariant&))); |
112 connect (request, SIGNAL(requestOk(const QVariant&)), this, SLOT(handleOk(const QVariant&))); |
113 connect (request, SIGNAL(requestError(int,const QString&)), this, SLOT(handleError(int,const QString&))); |
113 connect (request, SIGNAL(requestError(int,const QString&)), this, SLOT(handleError(int,const QString&))); |
114 |
114 |
|
115 QList<QVariant> args; |
115 args << QString(tr("Phonebook")); |
116 args << QString(tr("Phonebook")); |
116 args << KCntActionAll; |
117 args << KCntActionAll; |
117 args << KCntFilterDisplayAll; |
118 args << KCntFilterDisplayAll; |
118 |
119 |
119 request->setArguments(args); |
120 request->setArguments(args); |
203 int MsgUnifiedEditorAddress::addressCount() |
204 int MsgUnifiedEditorAddress::addressCount() |
204 { |
205 { |
205 return mAddressEdit->addresses().count(); |
206 return mAddressEdit->addresses().count(); |
206 } |
207 } |
207 |
208 |
208 void MsgUnifiedEditorAddress::setAddresses(ConvergedMessageAddressList addrlist) |
209 void MsgUnifiedEditorAddress::setAddresses(ConvergedMessageAddressList addrlist,bool aSkipCheck) |
209 { |
210 { |
210 // avoid processing if no info available |
211 // avoid processing if no info available |
211 if(addrlist.count() == 0) |
212 if(addrlist.count() == 0) |
212 { |
213 { |
213 return; |
214 return; |
241 int invalidCount= 0; |
242 int invalidCount= 0; |
242 QString invalidContacts; |
243 QString invalidContacts; |
243 for(int i = 0; i < count; i++ ) |
244 for(int i = 0; i < count; i++ ) |
244 { |
245 { |
245 bool isValid = false; |
246 bool isValid = false; |
246 isValid = checkValidAddress(addrlist.at(i)->address()); |
247 if(!aSkipCheck) |
|
248 { |
|
249 isValid = checkValidAddress(addrlist.at(i)->address()); |
|
250 } |
|
251 else |
|
252 { |
|
253 // no need to validate, assume correct |
|
254 isValid = true; |
|
255 } |
247 if(!isValid) |
256 if(!isValid) |
248 { |
257 { |
249 invalidCount ++; |
258 invalidCount ++; |
250 // append the comma till last but one contact. |
259 // append the comma till last but one contact. |
251 // add the invalid ocntacts to the " , " seperated string. |
260 // add the invalid ocntacts to the " , " seperated string. |
252 if(invalidCount > 1) |
261 if(invalidCount > 1) |
253 { |
262 { |
254 invalidContacts.append(COMMA_SEPERATOR); |
263 invalidContacts.append(COMMA_SEPERATOR); |
255 } |
264 } |
256 invalidContacts.append(addrlist.at(i)->alias()); |
265 if(addrlist[i]->alias().isEmpty()) |
|
266 invalidContacts.append(addrlist.at(i)->address()); |
|
267 else |
|
268 invalidContacts.append(addrlist.at(i)->alias()); |
257 } |
269 } |
258 else |
270 else |
259 { |
271 { |
260 mAddressMap.insertMulti(addrlist[i]->address(), addrlist[i]->alias()); |
272 mAddressMap.insertMulti(addrlist[i]->address(), addrlist[i]->alias()); |
261 if(!addrlist[i]->alias().isEmpty()) |
273 if(!addrlist[i]->alias().isEmpty()) |
269 } |
281 } |
270 } |
282 } |
271 if(invalidCount) |
283 if(invalidCount) |
272 { |
284 { |
273 QString invalidStr; |
285 QString invalidStr; |
274 (invalidCount == 1)?(invalidStr = QString(LOC_INVALID_RECIPIENT_NOT_ADDED)) :(invalidStr = QString(LOC_INVALID_RECIPIENTS_NOT_ADDED)); |
286 (invalidCount == 1)?(invalidStr = QString(LOC_INVALID_RECIPIENT_NOT_ADDED.arg(invalidContacts))) :(invalidStr = QString(LOC_INVALID_RECIPIENTS_NOT_ADDED.arg(invalidContacts))); |
275 // append line seperator |
287 HbMessageBox::information(invalidStr, 0, 0, HbMessageBox::Ok); |
276 invalidStr.append("<br>"); |
288 } |
277 invalidStr.append(invalidContacts); |
289 |
278 HbMessageBox::information(invalidStr, 0, 0, HbMessageBox::Ok); |
|
279 } |
|
280 |
290 |
281 // addition operation complete, reset flags |
291 // addition operation complete, reset flags |
282 mAboutToExceedMaxSmsRecipients = false; |
292 mAboutToExceedMaxSmsRecipients = false; |
283 mAboutToExceedMaxMmsRecipients = false; |
293 mAboutToExceedMaxMmsRecipients = false; |
284 mExceedsMaxMmsRecipientsBy = 0; |
294 mExceedsMaxMmsRecipientsBy = 0; |