summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2004-10-14 10:19:14 (UTC)
committer zautrix <zautrix>2004-10-14 10:19:14 (UTC)
commitdddcb44c8428e9054a91eea0c7483ee88ee03452 (patch) (unidiff)
tree0c6b26192c70f8cfccd00f527f56a39109a11f2d
parent3d79ab275374292196c7d032ffd2e321841c8cb0 (diff)
downloadkdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.zip
kdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.tar.gz
kdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.tar.bz2
phone calendar fixes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libkcal/phoneformat.cpp7
-rw-r--r--libkdepim/phoneaccess.cpp2
2 files changed, 5 insertions, 4 deletions
diff --git a/libkcal/phoneformat.cpp b/libkcal/phoneformat.cpp
index 3555dc6..281434e 100644
--- a/libkcal/phoneformat.cpp
+++ b/libkcal/phoneformat.cpp
@@ -203,385 +203,386 @@ ulong PhoneFormat::getCsumEvent( Event* event )
203 int count = 1; 203 int count = 1;
204 QPtrList<Recurrence::rMonthPos> rmp; 204 QPtrList<Recurrence::rMonthPos> rmp;
205 rmp = rec->monthPositions(); 205 rmp = rec->monthPositions();
206 if ( rmp.first()->negative ) 206 if ( rmp.first()->negative )
207 count = 5 - rmp.first()->rPos - 1; 207 count = 5 - rmp.first()->rPos - 1;
208 else 208 else
209 count = rmp.first()->rPos - 1; 209 count = rmp.first()->rPos - 1;
210 list.append( QString::number( count ) ); 210 list.append( QString::number( count ) );
211 211
212 } 212 }
213 213
214 list.append( "0" ); 214 list.append( "0" );
215 break; 215 break;
216 case Recurrence::rMonthlyDay:// 3 216 case Recurrence::rMonthlyDay:// 3
217 list.append( "3" ); 217 list.append( "3" );
218 list.append( QString::number( rec->frequency()) );//12 218 list.append( QString::number( rec->frequency()) );//12
219 list.append( "0" ); 219 list.append( "0" );
220 list.append( "0" ); 220 list.append( "0" );
221 writeEndDate = true; 221 writeEndDate = true;
222 break; 222 break;
223 case Recurrence::rYearlyMonth://4 223 case Recurrence::rYearlyMonth://4
224 list.append( "4" ); 224 list.append( "4" );
225 list.append( QString::number( rec->frequency()) );//12 225 list.append( QString::number( rec->frequency()) );//12
226 list.append( "0" ); 226 list.append( "0" );
227 list.append( "0" ); 227 list.append( "0" );
228 writeEndDate = true; 228 writeEndDate = true;
229 break; 229 break;
230 230
231 default: 231 default:
232 list.append( "255" ); 232 list.append( "255" );
233 list.append( QString() ); 233 list.append( QString() );
234 list.append( "0" ); 234 list.append( "0" );
235 list.append( QString() ); 235 list.append( QString() );
236 list.append( "0" ); 236 list.append( "0" );
237 list.append( "20991231T000000" ); 237 list.append( "20991231T000000" );
238 break; 238 break;
239 } 239 }
240 if ( writeEndDate ) { 240 if ( writeEndDate ) {
241 241
242 if ( rec->endDate().isValid() ) { // 15 + 16 242 if ( rec->endDate().isValid() ) { // 15 + 16
243 list.append( "1" ); 243 list.append( "1" );
244 list.append( PhoneParser::dtToString( rec->endDate()) ); 244 list.append( PhoneParser::dtToString( rec->endDate()) );
245 } else { 245 } else {
246 list.append( "0" ); 246 list.append( "0" );
247 list.append( "20991231T000000" ); 247 list.append( "20991231T000000" );
248 } 248 }
249 249
250 } 250 }
251 attList << list.join(""); 251 attList << list.join("");
252 attList << event->categoriesStr(); 252 attList << event->categoriesStr();
253 //qDebug("csum cat %s", event->categoriesStr().latin1()); 253 //qDebug("csum cat %s", event->categoriesStr().latin1());
254 254
255 attList << event->secrecyStr(); 255 attList << event->secrecyStr();
256 return PhoneFormat::getCsum(attList ); 256 return PhoneFormat::getCsum(attList );
257} 257}
258ulong PhoneFormat::getCsum( const QStringList & attList) 258ulong PhoneFormat::getCsum( const QStringList & attList)
259{ 259{
260 int max = attList.count(); 260 int max = attList.count();
261 ulong cSum = 0; 261 ulong cSum = 0;
262 int j,k,i; 262 int j,k,i;
263 int add; 263 int add;
264 for ( i = 0; i < max ; ++i ) { 264 for ( i = 0; i < max ; ++i ) {
265 QString s = attList[i]; 265 QString s = attList[i];
266 if ( ! s.isEmpty() ){ 266 if ( ! s.isEmpty() ){
267 j = s.length(); 267 j = s.length();
268 for ( k = 0; k < j; ++k ) { 268 for ( k = 0; k < j; ++k ) {
269 int mul = k +1; 269 int mul = k +1;
270 add = s[k].unicode (); 270 add = s[k].unicode ();
271 if ( k < 16 ) 271 if ( k < 16 )
272 mul = mul * mul; 272 mul = mul * mul;
273 int ii = i+1; 273 int ii = i+1;
274 add = add * mul *ii*ii*ii; 274 add = add * mul *ii*ii*ii;
275 cSum += add; 275 cSum += add;
276 } 276 }
277 } 277 }
278 278
279 } 279 }
280 //QString dump = attList.join(","); 280 //QString dump = attList.join(",");
281 //qDebug("csum: %d %s", cSum,dump.latin1()); 281 //qDebug("csum: %d %s", cSum,dump.latin1());
282 282
283 return cSum; 283 return cSum;
284 284
285} 285}
286//extern "C" GSM_Error GSM_InitConnection(GSM_StateMachine *s, int ReplyNum); 286//extern "C" GSM_Error GSM_InitConnection(GSM_StateMachine *s, int ReplyNum);
287#include <stdlib.h> 287#include <stdlib.h>
288#define DEBUGMODE false 288#define DEBUGMODE false
289bool PhoneFormat::load( Calendar *calendar, Calendar *existingCal) 289bool PhoneFormat::load( Calendar *calendar, Calendar *existingCal)
290{ 290{
291 291
292 QString fileName; 292 QString fileName;
293#ifdef _WIN32_ 293#ifdef _WIN32_
294 fileName = locateLocal("tmp", "phonefile.vcs"); 294 fileName = locateLocal("tmp", "phonefile.vcs");
295#else 295#else
296 fileName = "/tmp/phonefile.vcs"; 296 fileName = "/tmp/phonefile.vcs";
297#endif 297#endif
298 QString command; 298 QString command;
299 int ret = PhoneAccess::readFromPhone( fileName ); 299 if ( ! PhoneAccess::readFromPhone( fileName )) {
300 if ( ret != 0 ) {
301 qDebug("Error::command returned %d", ret);
302 return false; 300 return false;
303 } 301 }
304 VCalFormat vfload; 302 VCalFormat vfload;
305 vfload.setLocalTime ( true ); 303 vfload.setLocalTime ( true );
306 qDebug("loading file ..."); 304 qDebug("loading file ...");
307 305
308 if ( ! vfload.load( calendar, fileName ) ) 306 if ( ! vfload.load( calendar, fileName ) )
309 return false; 307 return false;
310 QPtrList<Event> er = calendar->rawEvents(); 308 QPtrList<Event> er = calendar->rawEvents();
311 Event* ev = er.first(); 309 Event* ev = er.first();
312 qDebug("reading events... "); 310 qDebug("reading events... ");
313 while ( ev ) { 311 while ( ev ) {
314 QStringList cat = ev->categories(); 312 QStringList cat = ev->categories();
315 if ( cat.contains( "MeetingDEF" )) { 313 if ( cat.contains( "MeetingDEF" )) {
316 ev->setCategories( QStringList() ); 314 ev->setCategories( QStringList() );
317 } 315 }
318 int id = ev->pilotId(); 316 int id = ev->pilotId();
319 Event *event; 317 Event *event;
320 event = existingCal->event( mProfileName ,QString::number( id ) ); 318 event = existingCal->event( mProfileName ,QString::number( id ) );
321 if ( event ) { 319 if ( event ) {
322 event = (Event*)event->clone(); 320 event = (Event*)event->clone();
323 copyEvent( event, ev ); 321 copyEvent( event, ev );
324 calendar->deleteEvent( ev ); 322 calendar->deleteEvent( ev );
325 calendar->addEvent( event); 323 calendar->addEvent( event);
326 } 324 }
327 else 325 else
328 event = ev; 326 event = ev;
329 uint cSum; 327 uint cSum;
330 cSum = PhoneFormat::getCsumEvent( event ); 328 cSum = PhoneFormat::getCsumEvent( event );
331 event->setCsum( mProfileName, QString::number( cSum )); 329 event->setCsum( mProfileName, QString::number( cSum ));
332 event->setTempSyncStat( SYNC_TEMPSTATE_NEW_EXTERNAL ); 330 event->setTempSyncStat( SYNC_TEMPSTATE_NEW_EXTERNAL );
333 event->setID( mProfileName,QString::number( id ) ); 331 event->setID( mProfileName,QString::number( id ) );
334 ev = er.next(); 332 ev = er.next();
335 } 333 }
336 { 334 {
337 qDebug("reading todos... "); 335 qDebug("reading todos... ");
338 QPtrList<Todo> tr = calendar->rawTodos(); 336 QPtrList<Todo> tr = calendar->rawTodos();
339 Todo* ev = tr.first(); 337 Todo* ev = tr.first();
340 while ( ev ) { 338 while ( ev ) {
341 339
342 QStringList cat = ev->categories(); 340 QStringList cat = ev->categories();
343 if ( cat.contains( "MeetingDEF" )) { 341 if ( cat.contains( "MeetingDEF" )) {
344 ev->setCategories( QStringList() ); 342 ev->setCategories( QStringList() );
345 } 343 }
346 int id = ev->pilotId(); 344 int id = ev->pilotId();
347 Todo *event; 345 Todo *event;
348 event = existingCal->todo( mProfileName ,QString::number( id ) ); 346 event = existingCal->todo( mProfileName ,QString::number( id ) );
349 if ( event ) { 347 if ( event ) {
350 //qDebug("copy todo %s ", event->summary().latin1()); 348 //qDebug("copy todo %s ", event->summary().latin1());
351 349
352 event = (Todo*)event->clone(); 350 event = (Todo*)event->clone();
353 copyTodo( event, ev ); 351 copyTodo( event, ev );
354 calendar->deleteTodo( ev ); 352 calendar->deleteTodo( ev );
355 calendar->addTodo( event); 353 calendar->addTodo( event);
356 } 354 }
357 else 355 else
358 event = ev; 356 event = ev;
359 uint cSum; 357 uint cSum;
360 cSum = PhoneFormat::getCsumTodo( event ); 358 cSum = PhoneFormat::getCsumTodo( event );
361 event->setCsum( mProfileName, QString::number( cSum )); 359 event->setCsum( mProfileName, QString::number( cSum ));
362 event->setTempSyncStat( SYNC_TEMPSTATE_NEW_EXTERNAL ); 360 event->setTempSyncStat( SYNC_TEMPSTATE_NEW_EXTERNAL );
363 event->setID( mProfileName,QString::number( id ) ); 361 event->setID( mProfileName,QString::number( id ) );
364 ev = tr.next(); 362 ev = tr.next();
365 } 363 }
366 } 364 }
367 return true; 365 return true;
368} 366}
369void PhoneFormat::copyEvent( Event* to, Event* from ) 367void PhoneFormat::copyEvent( Event* to, Event* from )
370{ 368{
371 if ( from->dtStart().isValid() ) 369 if ( from->dtStart().isValid() )
372 to->setDtStart( from->dtStart() ); 370 to->setDtStart( from->dtStart() );
373 if ( from->dtEnd().isValid() ) 371 if ( from->dtEnd().isValid() )
374 to->setDtEnd( from->dtEnd() ); 372 to->setDtEnd( from->dtEnd() );
375 if ( !from->location().isEmpty() ) 373 if ( !from->location().isEmpty() )
376 to->setLocation( from->location() ); 374 to->setLocation( from->location() );
377 if ( !from->description().isEmpty() ) 375 if ( !from->description().isEmpty() )
378 to->setDescription( from->description() ); 376 to->setDescription( from->description() );
379 if ( !from->summary().isEmpty() ) 377 if ( !from->summary().isEmpty() )
380 to->setSummary( from->summary() ); 378 to->setSummary( from->summary() );
381 379
382 if ( from->alarms().count() ) { 380 if ( from->alarms().count() ) {
383 to->clearAlarms(); 381 to->clearAlarms();
384 Alarm *a = from->alarms().first(); 382 Alarm *a = from->alarms().first();
385 Alarm *b = to->newAlarm( ); 383 Alarm *b = to->newAlarm( );
386 b->setEnabled( a->enabled() ); 384 b->setEnabled( a->enabled() );
387 if ( a->hasStartOffset() ) { 385 if ( a->hasStartOffset() ) {
388 b->setStartOffset( a->startOffset() ); 386 b->setStartOffset( a->startOffset() );
389 } 387 }
390 if ( a->hasTime() ) 388 if ( a->hasTime() )
391 b->setTime( a->time() ); 389 b->setTime( a->time() );
392 390
393 } 391 }
394 QStringList cat = to->categories(); 392 QStringList cat = to->categories();
395 QStringList catFrom = from->categories(); 393 QStringList catFrom = from->categories();
396 QString nCat; 394 QString nCat;
397 int iii; 395 int iii;
398 for ( iii = 0; iii < catFrom.count();++iii ) { 396 for ( iii = 0; iii < catFrom.count();++iii ) {
399 nCat = catFrom[iii]; 397 nCat = catFrom[iii];
400 if ( !nCat.isEmpty() ) 398 if ( !nCat.isEmpty() )
401 if ( !cat.contains( nCat )) { 399 if ( !cat.contains( nCat )) {
402 cat << nCat; 400 cat << nCat;
403 } 401 }
404 } 402 }
405 to->setCategories( cat ); 403 to->setCategories( cat );
406 Recurrence * r = new Recurrence( *from->recurrence(),to); 404 Recurrence * r = new Recurrence( *from->recurrence(),to);
407 to->setRecurrence( r ) ; 405 to->setRecurrence( r ) ;
408 406
409 407
410} 408}
411void PhoneFormat::copyTodo( Todo* to, Todo* from ) 409void PhoneFormat::copyTodo( Todo* to, Todo* from )
412{ 410{
413 if ( from->dtStart().isValid() ) 411 if ( from->dtStart().isValid() )
414 to->setDtStart( from->dtStart() ); 412 to->setDtStart( from->dtStart() );
415 if ( from->dtDue().isValid() ) 413 if ( from->dtDue().isValid() )
416 to->setDtDue( from->dtDue() ); 414 to->setDtDue( from->dtDue() );
417 if ( !from->location().isEmpty() ) 415 if ( !from->location().isEmpty() )
418 to->setLocation( from->location() ); 416 to->setLocation( from->location() );
419 if ( !from->description().isEmpty() ) 417 if ( !from->description().isEmpty() )
420 to->setDescription( from->description() ); 418 to->setDescription( from->description() );
421 if ( !from->summary().isEmpty() ) 419 if ( !from->summary().isEmpty() )
422 to->setSummary( from->summary() ); 420 to->setSummary( from->summary() );
423 421
424 if ( from->alarms().count() ) { 422 if ( from->alarms().count() ) {
425 to->clearAlarms(); 423 to->clearAlarms();
426 Alarm *a = from->alarms().first(); 424 Alarm *a = from->alarms().first();
427 Alarm *b = to->newAlarm( ); 425 Alarm *b = to->newAlarm( );
428 b->setEnabled( a->enabled() ); 426 b->setEnabled( a->enabled() );
429 if ( a->hasStartOffset() ) 427 if ( a->hasStartOffset() )
430 b->setStartOffset( a->startOffset() ); 428 b->setStartOffset( a->startOffset() );
431 if ( a->hasTime() ) 429 if ( a->hasTime() )
432 b->setTime( a->time() ); 430 b->setTime( a->time() );
433 } 431 }
434 432
435 QStringList cat = to->categories(); 433 QStringList cat = to->categories();
436 QStringList catFrom = from->categories(); 434 QStringList catFrom = from->categories();
437 QString nCat; 435 QString nCat;
438 int iii; 436 int iii;
439 for ( iii = 0; iii < catFrom.count();++iii ) { 437 for ( iii = 0; iii < catFrom.count();++iii ) {
440 nCat = catFrom[iii]; 438 nCat = catFrom[iii];
441 if ( !nCat.isEmpty() ) 439 if ( !nCat.isEmpty() )
442 if ( !cat.contains( nCat )) { 440 if ( !cat.contains( nCat )) {
443 cat << nCat; 441 cat << nCat;
444 } 442 }
445 } 443 }
446 to->setCategories( cat ); 444 to->setCategories( cat );
447 if ( from->isCompleted() ) { 445 if ( from->isCompleted() ) {
448 to->setCompleted( true ); 446 to->setCompleted( true );
449 if( from->completed().isValid() ) 447 if( from->completed().isValid() )
450 to->setCompleted( from->completed() ); 448 to->setCompleted( from->completed() );
451 } else { 449 } else {
452 // set percentcomplete only, if to->isCompleted() 450 // set percentcomplete only, if to->isCompleted()
453 if ( to->isCompleted() ) 451 if ( to->isCompleted() )
454 to->setPercentComplete(from->percentComplete()); 452 to->setPercentComplete(from->percentComplete());
455 } 453 }
456 if( to->priority() == 2 && from->priority() == 1 ) 454 if( to->priority() == 2 && from->priority() == 1 )
457 ; //skip 455 ; //skip
458 else if (to->priority() == 4 && from->priority() == 5 ) 456 else if (to->priority() == 4 && from->priority() == 5 )
459 ; 457 ;
460 else 458 else
461 to->setPriority(from->priority()); 459 to->setPriority(from->priority());
462 460
463} 461}
464#include <qcstring.h> 462#include <qcstring.h>
465 463
466void PhoneFormat::afterSave( Incidence* inc) 464void PhoneFormat::afterSave( Incidence* inc)
467{ 465{
468 uint csum; 466 uint csum;
469 inc->removeID( mProfileName ); 467 inc->removeID( mProfileName );
470 if ( inc->type() == "Event") 468 if ( inc->type() == "Event")
471 csum = PhoneFormat::getCsumEvent( (Event*) inc ); 469 csum = PhoneFormat::getCsumEvent( (Event*) inc );
472 else 470 else
473 csum = PhoneFormat::getCsumTodo( (Todo*) inc ); 471 csum = PhoneFormat::getCsumTodo( (Todo*) inc );
474 inc->setCsum( mProfileName, QString::number( csum )); 472 inc->setCsum( mProfileName, QString::number( csum ));
475 473
476 inc->setTempSyncStat( SYNC_TEMPSTATE_NEW_ID ); 474 inc->setTempSyncStat( SYNC_TEMPSTATE_NEW_ID );
477 475
478} 476}
479 477
480bool PhoneFormat::writeToPhone( Calendar * calendar) 478bool PhoneFormat::writeToPhone( Calendar * calendar)
481{ 479{
482#ifdef _WIN32_ 480#ifdef _WIN32_
483 QString fileName = locateLocal("tmp", "tempfile.vcs"); 481 QString fileName = locateLocal("tmp", "tempfile.vcs");
484#else 482#else
485 QString fileName = "/tmp/kdepimtemp.vcs"; 483 QString fileName = "/tmp/kdepimtemp.vcs";
486#endif 484#endif
487 485
488 VCalFormat vfsave; 486 VCalFormat vfsave;
489 vfsave.setLocalTime ( true ); 487 vfsave.setLocalTime ( true );
488 QString id = calendar->timeZoneId();
489 calendar->setLocalTime();
490 if ( ! vfsave.save( calendar, fileName ) ) 490 if ( ! vfsave.save( calendar, fileName ) )
491 return false; 491 return false;
492 calendar->setTimeZoneId( id );
492 return PhoneAccess::writeToPhone( fileName ); 493 return PhoneAccess::writeToPhone( fileName );
493} 494}
494bool PhoneFormat::save( Calendar *calendar) 495bool PhoneFormat::save( Calendar *calendar)
495{ 496{
496 QLabel status ( i18n(" Opening device ..."), 0 ); 497 QLabel status ( i18n(" Opening device ..."), 0 );
497 int w = status.sizeHint().width()+20 ; 498 int w = status.sizeHint().width()+20 ;
498 if ( w < 200 ) w = 230; 499 if ( w < 200 ) w = 230;
499 int h = status.sizeHint().height()+20 ; 500 int h = status.sizeHint().height()+20 ;
500 int dw = QApplication::desktop()->width(); 501 int dw = QApplication::desktop()->width();
501 int dh = QApplication::desktop()->height(); 502 int dh = QApplication::desktop()->height();
502 status.setCaption(i18n("Writing to phone...") ); 503 status.setCaption(i18n("Writing to phone...") );
503 status.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); 504 status.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
504 status.show(); 505 status.show();
505 status.raise(); 506 status.raise();
506 qApp->processEvents(); 507 qApp->processEvents();
507 QString message; 508 QString message;
508 509
509 // 1 remove events which should be deleted 510 // 1 remove events which should be deleted
510 QPtrList<Event> er = calendar->rawEvents(); 511 QPtrList<Event> er = calendar->rawEvents();
511 Event* ev = er.first(); 512 Event* ev = er.first();
512 while ( ev ) { 513 while ( ev ) {
513 if ( ev->tempSyncStat() == SYNC_TEMPSTATE_DELETE ) { 514 if ( ev->tempSyncStat() == SYNC_TEMPSTATE_DELETE ) {
514 calendar->deleteEvent( ev ); 515 calendar->deleteEvent( ev );
515 } else { 516 } else {
516 517
517 } 518 }
518 ev = er.next(); 519 ev = er.next();
519 } 520 }
520 // 2 remove todos which should be deleted 521 // 2 remove todos which should be deleted
521 QPtrList<Todo> tl = calendar->rawTodos(); 522 QPtrList<Todo> tl = calendar->rawTodos();
522 Todo* to = tl.first(); 523 Todo* to = tl.first();
523 while ( to ) { 524 while ( to ) {
524 if ( to->tempSyncStat() == SYNC_TEMPSTATE_DELETE ) { 525 if ( to->tempSyncStat() == SYNC_TEMPSTATE_DELETE ) {
525 calendar->deleteTodo( to ); 526 calendar->deleteTodo( to );
526 } else { 527 } else {
527 if ( to->isCompleted()) { 528 if ( to->isCompleted()) {
528 calendar->deleteTodo( to ); 529 calendar->deleteTodo( to );
529 } 530 }
530 } 531 }
531 to = tl.next(); 532 to = tl.next();
532 } 533 }
533 // 3 save file 534 // 3 save file
534 if ( !writeToPhone( calendar ) ) 535 if ( !writeToPhone( calendar ) )
535 return false; 536 return false;
536 537
537 // 5 reread data 538 // 5 reread data
538 message = i18n(" Rereading all data ... "); 539 message = i18n(" Rereading all data ... ");
539 status.setText ( message ); 540 status.setText ( message );
540 qApp->processEvents(); 541 qApp->processEvents();
541 CalendarLocal* calendarTemp = new CalendarLocal(); 542 CalendarLocal* calendarTemp = new CalendarLocal();
542 calendarTemp->setTimeZoneId( calendar->timeZoneId()); 543 calendarTemp->setTimeZoneId( calendar->timeZoneId());
543 if ( ! load( calendarTemp,calendar) ){ 544 if ( ! load( calendarTemp,calendar) ){
544 qDebug("error reloading calendar "); 545 qDebug("error reloading calendar ");
545 delete calendarTemp; 546 delete calendarTemp;
546 return false; 547 return false;
547 } 548 }
548 // 6 compare data 549 // 6 compare data
549 550
550//algo 6 compare event 551//algo 6 compare event
551 er = calendar->rawEvents(); 552 er = calendar->rawEvents();
552 ev = er.first(); 553 ev = er.first();
553 message = i18n(" Comparing event # "); 554 message = i18n(" Comparing event # ");
554 QPtrList<Event> er1 = calendarTemp->rawEvents(); 555 QPtrList<Event> er1 = calendarTemp->rawEvents();
555 Event* ev1; 556 Event* ev1;
556 int procCount = 0; 557 int procCount = 0;
557 while ( ev ) { 558 while ( ev ) {
558 //qDebug("event new ID %s",ev->summary().latin1()); 559 //qDebug("event new ID %s",ev->summary().latin1());
559 status.setText ( message + QString::number ( ++procCount ) ); 560 status.setText ( message + QString::number ( ++procCount ) );
560 qApp->processEvents(); 561 qApp->processEvents();
561 uint csum; 562 uint csum;
562 csum = PhoneFormat::getCsumEvent( ev ); 563 csum = PhoneFormat::getCsumEvent( ev );
563 QString cSum = QString::number( csum ); 564 QString cSum = QString::number( csum );
564 //ev->setCsum( mProfileName, cSum ); 565 //ev->setCsum( mProfileName, cSum );
565 //qDebug("Event cSum %s ", cSum.latin1()); 566 //qDebug("Event cSum %s ", cSum.latin1());
566 ev1 = er1.first(); 567 ev1 = er1.first();
567 while ( ev1 ) { 568 while ( ev1 ) {
568 if ( ev1->getCsum( mProfileName ) == cSum ) { 569 if ( ev1->getCsum( mProfileName ) == cSum ) {
569 er1.remove( ev1 ); 570 er1.remove( ev1 );
570 afterSave( ev ); 571 afterSave( ev );
571 ev->setID(mProfileName, ev1->getID(mProfileName) ); 572 ev->setID(mProfileName, ev1->getID(mProfileName) );
572 //qDebug("Event found on phone for %s ", ev->summary().latin1()); 573 //qDebug("Event found on phone for %s ", ev->summary().latin1());
573 574
574 break; 575 break;
575 } 576 }
576 ev1 = er1.next(); 577 ev1 = er1.next();
577 } 578 }
578 if ( ! ev1 ) { 579 if ( ! ev1 ) {
579 // ev->removeID(mProfileName); 580 // ev->removeID(mProfileName);
580 qDebug("ERROR: No event found on phone for %s ", ev->summary().latin1()); 581 qDebug("ERROR: No event found on phone for %s ", ev->summary().latin1());
581 } 582 }
582 583
583 584
584 ev = er.next(); 585 ev = er.next();
585 } 586 }
586 //algo 6 compare todo 587 //algo 6 compare todo
587 tl = calendar->rawTodos(); 588 tl = calendar->rawTodos();
diff --git a/libkdepim/phoneaccess.cpp b/libkdepim/phoneaccess.cpp
index 5fafa1f..8298aa6 100644
--- a/libkdepim/phoneaccess.cpp
+++ b/libkdepim/phoneaccess.cpp
@@ -70,104 +70,104 @@ void PhoneAccess::writeConfig( QString device, QString connection, QString model
70 } 70 }
71 71
72 } else if ( line.left( 10 ) == "connection" ) { 72 } else if ( line.left( 10 ) == "connection" ) {
73 if ( line == "connection = " + connection +"\n") { 73 if ( line == "connection = " + connection +"\n") {
74 addConnection = false; 74 addConnection = false;
75 content += line ; 75 content += line ;
76 //qDebug("con found" ); 76 //qDebug("con found" );
77 } 77 }
78 78
79 } else { 79 } else {
80 content += line ; 80 content += line ;
81 } 81 }
82 } 82 }
83 file.close(); 83 file.close();
84 } else { 84 } else {
85 if ( ! connection.isEmpty() ) { 85 if ( ! connection.isEmpty() ) {
86 addConnection = true; 86 addConnection = true;
87 } 87 }
88 if ( ! device.isEmpty() ) { 88 if ( ! device.isEmpty() ) {
89 addPort = true; 89 addPort = true;
90 90
91 } 91 }
92 if ( ! model.isEmpty() ) { 92 if ( ! model.isEmpty() ) {
93 addModel = true; 93 addModel = true;
94 } 94 }
95 } 95 }
96 96
97 if ( addConnection ) { 97 if ( addConnection ) {
98 write = true; 98 write = true;
99 content += "connection = "; 99 content += "connection = ";
100 content += connection; 100 content += connection;
101 content += "\n"; 101 content += "\n";
102 } 102 }
103 if ( addPort ) { 103 if ( addPort ) {
104 write = true; 104 write = true;
105 content += "port = "; 105 content += "port = ";
106 content += device; 106 content += device;
107 content += "\n"; 107 content += "\n";
108 108
109 } 109 }
110 if ( addModel ) { 110 if ( addModel ) {
111 write = true; 111 write = true;
112 content += "model = "; 112 content += "model = ";
113 content += model; 113 content += model;
114 content += "\n"; 114 content += "\n";
115 } 115 }
116 if ( write ) { 116 if ( write ) {
117 if (!file.open( IO_WriteOnly ) ) { 117 if (!file.open( IO_WriteOnly ) ) {
118 qDebug("Error: cannot write file %s ", fileName.latin1() ); 118 qDebug("Error: cannot write file %s ", fileName.latin1() );
119 return; 119 return;
120 } 120 }
121 qDebug("Writing file %s ", fileName.latin1() ); 121 qDebug("Writing file %s ", fileName.latin1() );
122 QTextStream ts( &file ); 122 QTextStream ts( &file );
123 ts << content ; 123 ts << content ;
124 file.close(); 124 file.close();
125 } 125 }
126 126
127} 127}
128 128
129 129
130bool PhoneAccess::writeToPhone( QString fileName) 130bool PhoneAccess::writeToPhone( QString fileName)
131{ 131{
132 132
133#ifdef DESKTOP_VERSION 133#ifdef DESKTOP_VERSION
134#ifdef _WIN32_ 134#ifdef _WIN32_
135 QString command ="kammu --restore " + fileName ; 135 QString command ="kammu --restore " + fileName ;
136#else 136#else
137 QString command ="./kammu --restore " + fileName ; 137 QString command ="./kammu --restore " + fileName ;
138#endif 138#endif
139#else 139#else
140 QString command ="kammu --restore " + fileName ; 140 QString command ="kammu --restore " + fileName ;
141#endif 141#endif
142 int ret; 142 int ret;
143 while ( (ret = system ( command.latin1())) != 0 ) { 143 while ( (ret = system ( command.latin1())) != 0 ) {
144 qDebug("Error S::command returned %d.", ret); 144 qDebug("Error S::command returned %d.", ret);
145 int retval = KMessageBox::warningContinueCancel(0, 145 int retval = KMessageBox::warningContinueCancel(0,
146 i18n("Error accessing device!\nPlease turn on connection\nand retry!"),i18n("KDE/Pim phone access"),i18n("Retry"),i18n("Cancel")); 146 i18n("Error accessing device!\nPlease turn on connection\nand retry!"),i18n("KDE/Pim phone access"),i18n("Retry"),i18n("Cancel"));
147 if ( retval != KMessageBox::Continue ) 147 if ( retval != KMessageBox::Continue )
148 return false; 148 return false;
149 } 149 }
150 return true; 150 return true;
151} 151}
152bool PhoneAccess::readFromPhone( QString fileName) 152bool PhoneAccess::readFromPhone( QString fileName)
153{ 153{
154 154
155#ifdef DESKTOP_VERSION 155#ifdef DESKTOP_VERSION
156#ifdef _WIN32_ 156#ifdef _WIN32_
157 QString command ="kammu --backup " + fileName + " -yes" ; 157 QString command ="kammu --backup " + fileName + " -yes" ;
158#else 158#else
159 QString command ="./kammu --backup " + fileName + " -yes" ; 159 QString command ="./kammu --backup " + fileName + " -yes" ;
160#endif 160#endif
161#else 161#else
162 QString command ="kammu --backup " + fileName + " -yes" ; 162 QString command ="kammu --backup " + fileName + " -yes" ;
163#endif 163#endif
164 int ret; 164 int ret;
165 while ( (ret = system ( command.latin1())) != 0 ) { 165 while ( (ret = system ( command.latin1())) != 0 ) {
166 qDebug("Error S::command returned %d.", ret); 166 qDebug("Error reading from phone:Command returned %d", ret);
167 int retval = KMessageBox::warningContinueCancel(0, 167 int retval = KMessageBox::warningContinueCancel(0,
168 i18n("Error accessing device!\nPlease turn on connection\nand retry!"),i18n("KDE/Pim phone access"),i18n("Retry"),i18n("Cancel")); 168 i18n("Error accessing device!\nPlease turn on connection\nand retry!"),i18n("KDE/Pim phone access"),i18n("Retry"),i18n("Cancel"));
169 if ( retval != KMessageBox::Continue ) 169 if ( retval != KMessageBox::Continue )
170 return false; 170 return false;
171 } 171 }
172 return true; 172 return true;
173} 173}