Diffstat (limited to 'kabc/plugins/sharpdtm/resourcesharpdtm.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | kabc/plugins/sharpdtm/resourcesharpdtm.cpp | 55 |
1 files changed, 9 insertions, 46 deletions
diff --git a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp index bba5f9a..48d3985 100644 --- a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp +++ b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp | |||
@@ -120,25 +120,25 @@ Ticket *ResourceSharpDTM::requestSaveTicket() | |||
120 | #endif | 120 | #endif |
121 | return createTicket( this ); | 121 | return createTicket( this ); |
122 | } | 122 | } |
123 | 123 | ||
124 | 124 | ||
125 | bool ResourceSharpDTM::doOpen() | 125 | bool ResourceSharpDTM::doOpen() |
126 | { | 126 | { |
127 | qDebug("ResourceSharpDTM::doOpen: %s", fileName().latin1()); | 127 | qDebug("ResourceSharpDTM::doOpen: %s", fileName().latin1()); |
128 | 128 | ||
129 | // the last parameter in the SlZDataBase constructor means "readonly" | 129 | // the last parameter in the SlZDataBase constructor means "readonly" |
130 | mAccess = new SlZDataBase(fileName(), | 130 | mAccess = new SlZDataBase(fileName(), |
131 | SlZDataBase::addressbookItems(), | 131 | SlZDataBase::addressbookItems(), |
132 | NULL, true); | 132 | NULL, false); |
133 | 133 | ||
134 | if ( !mAccess ) { | 134 | if ( !mAccess ) { |
135 | qDebug("Unable to load file() %s", fileName().latin1()); | 135 | qDebug("Unable to load file() %s", fileName().latin1()); |
136 | return false; | 136 | return false; |
137 | } | 137 | } |
138 | 138 | ||
139 | if (mConverter == 0) | 139 | if (mConverter == 0) |
140 | { | 140 | { |
141 | mConverter = new SharpDTMConverter(); | 141 | mConverter = new SharpDTMConverter(); |
142 | bool res = mConverter->init(); | 142 | bool res = mConverter->init(); |
143 | if ( !res ) | 143 | if ( !res ) |
144 | { | 144 | { |
@@ -215,116 +215,79 @@ bool ResourceSharpDTM::save( Ticket *ticket ) | |||
215 | id = 0; | 215 | id = 0; |
216 | else | 216 | else |
217 | id = uid.toUInt(); | 217 | id = uid.toUInt(); |
218 | KABC::Addressee addressee = (*it); | 218 | KABC::Addressee addressee = (*it); |
219 | if ( (*it).tempSyncStat() == SYNC_TEMPSTATE_ADDED_EXTERNAL ) { | 219 | if ( (*it).tempSyncStat() == SYNC_TEMPSTATE_ADDED_EXTERNAL ) { |
220 | res = mAccess->startEditCard(id); | 220 | res = mAccess->startEditCard(id); |
221 | if (res == true) | 221 | if (res == true) |
222 | { | 222 | { |
223 | res = mConverter->addresseeToSharp( (*it), mAccess, id ); | 223 | res = mConverter->addresseeToSharp( (*it), mAccess, id ); |
224 | if (res == true) | 224 | if (res == true) |
225 | { | 225 | { |
226 | KABC::Addressee addressee; | 226 | KABC::Addressee addressee; |
227 | qDebug("1NEW id is %d", id); | ||
228 | res = mConverter->sharpToAddressee( id, mAccess, addressee ); | 227 | res = mConverter->sharpToAddressee( id, mAccess, addressee ); |
229 | addressee.setUid((*it).uid() ); | 228 | addressee.setUid((*it).uid() ); |
230 | addressee.setTempSyncStat( SYNC_TEMPSTATE_NEW_CSUM ); | 229 | addressee.setTempSyncStat( SYNC_TEMPSTATE_NEW_ID ); |
231 | changedAddressees.append( addressee ); | ||
232 | res = mAccess->finishEditCard(&id); | 230 | res = mAccess->finishEditCard(&id); |
233 | qDebug("2NEW id is %d", id); | 231 | //qDebug("2NEW id is %d", id); |
232 | addressee.setExternalUID( QString::number( id ) ); | ||
233 | addressee.setOriginalExternalUID( QString::number( id ) ); | ||
234 | changedAddressees.append( addressee ); | ||
234 | 235 | ||
235 | if (res == false) | 236 | if (res == false) |
236 | qDebug("Unable to append Contact: %s", addressee.formattedName().latin1()); | 237 | qDebug("Unable to append Contact: %s", addressee.formattedName().latin1()); |
237 | else { | 238 | |
238 | qDebug("added card success "); | ||
239 | } | ||
240 | } | 239 | } |
241 | else | 240 | else |
242 | { | 241 | { |
243 | qDebug("Unable to convert Addressee: %s", addressee.formattedName().latin1()); | 242 | qDebug("Unable to convert Addressee: %s", addressee.formattedName().latin1()); |
244 | mAccess->cancelEditCard(); | 243 | mAccess->cancelEditCard(); |
245 | } | 244 | } |
246 | } | 245 | } |
247 | 246 | ||
248 | } else if ( (*it).tempSyncStat() == SYNC_TEMPSTATE_DELETE ) { | 247 | } else if ( (*it).tempSyncStat() == SYNC_TEMPSTATE_DELETE ) { |
249 | res = mAccess->deleteCard(&id); | 248 | res = mAccess->deleteCard(&id); |
250 | if ( res ) | 249 | if ( res ) |
251 | qDebug("delete success "); | 250 | qDebug("delete success "); |
252 | else | 251 | else |
253 | qDebug("delete error "); | 252 | qDebug("delete error "); |
254 | 253 | ||
255 | 254 | ||
256 | } else if ( (*it).tempSyncStat() != SYNC_TEMPSTATE_NEW_EXTERNAL ) { | 255 | } else if ( (*it).tempSyncStat() != SYNC_TEMPSTATE_NEW_EXTERNAL ) { |
257 | //changed | 256 | //changed |
257 | qDebug("changed ****"); | ||
258 | res = mAccess->startEditCard(id); | 258 | res = mAccess->startEditCard(id); |
259 | if (res == true) | 259 | if (res == true) |
260 | { | 260 | { |
261 | res = mConverter->addresseeToSharp( (*it), mAccess, id ); | 261 | res = mConverter->addresseeToSharp( (*it), mAccess, id ); |
262 | if (res == true) | 262 | if (res == true) |
263 | { | 263 | { |
264 | KABC::Addressee addressee; | 264 | KABC::Addressee addressee; |
265 | res = mConverter->sharpToAddressee( id, mAccess, addressee ); | 265 | res = mConverter->sharpToAddressee( id, mAccess, addressee ); |
266 | addressee.setUid((*it).uid() ); | 266 | addressee.setUid((*it).uid() ); |
267 | addressee.setTempSyncStat( SYNC_TEMPSTATE_NEW_CSUM ); | 267 | addressee.setTempSyncStat( SYNC_TEMPSTATE_NEW_CSUM ); |
268 | changedAddressees.append( addressee ); | 268 | changedAddressees.append( addressee ); |
269 | res = mAccess->finishEditCard(&id); | 269 | res = mAccess->finishEditCard(&id); |
270 | if (res == false) | 270 | if (res == false) |
271 | qDebug("Unable to append Contact: %s", addressee.formattedName().latin1()); | 271 | qDebug("Unable to append Contact: %s", addressee.formattedName().latin1()); |
272 | else { | ||
273 | qDebug("change card succes "); | ||
274 | } | ||
275 | } | ||
276 | else | ||
277 | { | ||
278 | qDebug("Unable to convert Addressee: %s", addressee.formattedName().latin1()); | ||
279 | mAccess->cancelEditCard(); | ||
280 | } | ||
281 | } | ||
282 | } | ||
283 | |||
284 | |||
285 | |||
286 | |||
287 | |||
288 | 272 | ||
289 | |||
290 | |||
291 | } | ||
292 | |||
293 | #if 0 | ||
294 | // old code | ||
295 | CardId id = 0;// 0 means new card | ||
296 | KABC::Addressee addressee = (*it); | ||
297 | |||
298 | res = mAccess->startEditCard(id); | ||
299 | if (res == true) | ||
300 | { | ||
301 | res = mConverter->addresseeToSharp( *it, mAccess, id ); | ||
302 | if (res == true) | ||
303 | { | ||
304 | res = mAccess->finishEditCard(&id); | ||
305 | if (res == false) | ||
306 | qDebug("Unable to append Contact: %s", addressee.formattedName().latin1()); | ||
307 | } | 273 | } |
308 | else | 274 | else |
309 | { | 275 | { |
310 | qDebug("Unable to convert Addressee: %s", addressee.formattedName().latin1()); | 276 | qDebug("Unable to convert Addressee: %s", addressee.formattedName().latin1()); |
311 | mAccess->cancelEditCard(); | 277 | mAccess->cancelEditCard(); |
312 | } | 278 | } |
313 | } | 279 | } |
314 | else | ||
315 | { | ||
316 | qDebug("Unable to add new card. Addressee: %s", addressee.formattedName().latin1()); | ||
317 | } | 280 | } |
318 | #endif | 281 | } |
319 | 282 | ||
320 | } | 283 | } |
321 | KABC::Addressee::List::Iterator it2; | 284 | KABC::Addressee::List::Iterator it2; |
322 | for ( it2 = changedAddressees.begin(); it2 != changedAddressees.end(); ++it2 ) | 285 | for ( it2 = changedAddressees.begin(); it2 != changedAddressees.end(); ++it2 ) |
323 | addressBook()->insertAddressee((*it2)); | 286 | addressBook()->insertAddressee((*it2)); |
324 | //US mAccess->save(); | 287 | //US mAccess->save(); |
325 | 288 | ||
326 | mDirWatch.startScan(); | 289 | mDirWatch.startScan(); |
327 | delete ticket; | 290 | delete ticket; |
328 | unlock( fileName() ); | 291 | unlock( fileName() ); |
329 | 292 | ||
330 | return true; | 293 | return true; |