summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/tododb.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/libopie/tododb.cpp b/libopie/tododb.cpp
index 1e40c40..17163a0 100644
--- a/libopie/tododb.cpp
+++ b/libopie/tododb.cpp
@@ -23,96 +23,98 @@ public:
23 XMLElement *task = new XMLElement(); 23 XMLElement *task = new XMLElement();
24 map.insert( "Completed", QString::number((int)(*it).isCompleted() ) ); 24 map.insert( "Completed", QString::number((int)(*it).isCompleted() ) );
25 map.insert( "HasDate", QString::number((int)(*it).hasDate() ) ); 25 map.insert( "HasDate", QString::number((int)(*it).hasDate() ) );
26 map.insert( "Priority", QString::number( (*it).priority() ) ); 26 map.insert( "Priority", QString::number( (*it).priority() ) );
27 map.insert( "Progress", QString::number( (*it).progress() ) ); 27 map.insert( "Progress", QString::number( (*it).progress() ) );
28 map.insert( "Summary", (*it).summary() ); 28 map.insert( "Summary", (*it).summary() );
29 QArray<int> arrat = (*it).categories(); 29 QArray<int> arrat = (*it).categories();
30 QString attr; 30 QString attr;
31 for(uint i=0; i < arrat.count(); i++ ){ 31 for(uint i=0; i < arrat.count(); i++ ){
32 attr.append(QString::number(arrat[i])+";" ); 32 attr.append(QString::number(arrat[i])+";" );
33 } 33 }
34 if(!attr.isEmpty() ) // remove the last ; 34 if(!attr.isEmpty() ) // remove the last ;
35 attr.remove(attr.length()-1, 1 ); 35 attr.remove(attr.length()-1, 1 );
36 map.insert( "Categories", attr ); 36 map.insert( "Categories", attr );
37 //else 37 //else
38 //map.insert( "Categories", QString::null ); 38 //map.insert( "Categories", QString::null );
39 map.insert( "Description", (*it).description() ); 39 map.insert( "Description", (*it).description() );
40 if( (*it).hasDate() ){ 40 if( (*it).hasDate() ){
41 map.insert("DateYear", QString::number( (*it).date().year() ) ); 41 map.insert("DateYear", QString::number( (*it).date().year() ) );
42 map.insert("DateMonth", QString::number( (*it).date().month() ) ); 42 map.insert("DateMonth", QString::number( (*it).date().month() ) );
43 map.insert("DateDay", QString::number( (*it).date().day() ) ); 43 map.insert("DateDay", QString::number( (*it).date().day() ) );
44 } 44 }
45 map.insert("Uid", QString::number( (*it).uid() ) ); 45 map.insert("Uid", QString::number( (*it).uid() ) );
46 task->setTagName("Task" ); 46 task->setTagName("Task" );
47 task->setAttributes( map ); 47 task->setAttributes( map );
48 tasks->appendChild(task); 48 tasks->appendChild(task);
49 } 49 }
50 QFile file( name); 50 QFile file( name);
51 if( file.open(IO_WriteOnly ) ){ 51 if( file.open(IO_WriteOnly ) ){
52 QTextStream stream(&file ); 52 QTextStream stream(&file );
53 stream.setEncoding( QTextStream::UnicodeUTF8 ); 53 stream.setEncoding( QTextStream::UnicodeUTF8 );
54 stream << "<!DOCTYPE Tasks>" << endl; 54 stream << "<!DOCTYPE Tasks>" << endl;
55 tasks->save(stream ); 55 tasks->save(stream );
56 delete tasks; 56 delete tasks;
57 stream << "</Tasks>" << endl; 57 stream << "</Tasks>" << endl;
58 file.close(); 58 file.close();
59 return true; 59 return true;
60 } 60 }
61 return false; 61 return false;
62 } 62 }
63 QValueList<ToDoEvent> load( const QString &name ){ 63 QValueList<ToDoEvent> load( const QString &name ){
64 qWarning("loading tododb" ); 64 qWarning("loading tododb" );
65 QValueList<ToDoEvent> m_todos; 65 QValueList<ToDoEvent> m_todos;
66 XMLElement *root = XMLElement::load( name ); 66 XMLElement *root = XMLElement::load( name );
67 if(root != 0l ){ // start parsing 67 if(root != 0l ){ // start parsing
68 qWarning("ToDoDB::load tagName(): %s", root->tagName().latin1() ); 68 qWarning("ToDoDB::load tagName(): %s", root->tagName().latin1() );
69 //if( root->tagName() == QString::fromLatin1("Tasks" ) ){// Start 69 //if( root->tagName() == QString::fromLatin1("Tasks" ) ){// Start
70 XMLElement *element = root->firstChild(); 70 XMLElement *element = root->firstChild();
71 if (element == 0 )
72 return m_todos;
71 element = element->firstChild(); 73 element = element->firstChild();
72 while( element ){ 74 while( element ){
73 if( element->tagName() != QString::fromLatin1("Task") ){ 75 if( element->tagName() != QString::fromLatin1("Task") ){
74 element = element->nextChild(); 76 element = element->nextChild();
75 continue; 77 continue;
76 } 78 }
77 qWarning("ToDoDB::load element tagName() : %s", element->tagName().latin1() ); 79 qWarning("ToDoDB::load element tagName() : %s", element->tagName().latin1() );
78 QString dummy; 80 QString dummy;
79 ToDoEvent event; 81 ToDoEvent event;
80 bool ok; 82 bool ok;
81 int dumInt; 83 int dumInt;
82 // completed 84 // completed
83 dummy = element->attribute("Completed" ); 85 dummy = element->attribute("Completed" );
84 dumInt = dummy.toInt(&ok ); 86 dumInt = dummy.toInt(&ok );
85 if(ok ) event.setCompleted( dumInt == 0 ? false : true ); 87 if(ok ) event.setCompleted( dumInt == 0 ? false : true );
86 // progress 88 // progress
87 dummy = element->attribute("Progress" ); 89 dummy = element->attribute("Progress" );
88 { 90 {
89 ushort dumShort = dummy.toUShort(&ok); 91 ushort dumShort = dummy.toUShort(&ok);
90 event.setProgress( dumShort ); 92 event.setProgress( dumShort );
91 93
92 } 94 }
93 // hasDate 95 // hasDate
94 dummy = element->attribute("HasDate" ); 96 dummy = element->attribute("HasDate" );
95 dumInt = dummy.toInt(&ok ); 97 dumInt = dummy.toInt(&ok );
96 if(ok ) event.setHasDate( dumInt == 0 ? false: true ); 98 if(ok ) event.setHasDate( dumInt == 0 ? false: true );
97 // set the date 99 // set the date
98 bool hasDa = dumInt; 100 bool hasDa = dumInt;
99 if ( hasDa ) { //parse the date 101 if ( hasDa ) { //parse the date
100 int year, day, month = 0; 102 int year, day, month = 0;
101 year = day = month; 103 year = day = month;
102 // year 104 // year
103 dummy = element->attribute("DateYear" ); 105 dummy = element->attribute("DateYear" );
104 dumInt = dummy.toInt(&ok ); 106 dumInt = dummy.toInt(&ok );
105 if( ok ) year = dumInt; 107 if( ok ) year = dumInt;
106 // month 108 // month
107 dummy = element->attribute("DateMonth" ); 109 dummy = element->attribute("DateMonth" );
108 dumInt = dummy.toInt(&ok ); 110 dumInt = dummy.toInt(&ok );
109 if(ok ) month = dumInt; 111 if(ok ) month = dumInt;
110 dummy = element->attribute("DateDay" ); 112 dummy = element->attribute("DateDay" );
111 dumInt = dummy.toInt(&ok ); 113 dumInt = dummy.toInt(&ok );
112 if(ok ) day = dumInt; 114 if(ok ) day = dumInt;
113 // set the date 115 // set the date
114 QDate date( year, month, day ); 116 QDate date( year, month, day );
115 event.setDate( date); 117 event.setDate( date);
116 } 118 }
117 dummy = element->attribute("Priority" ); 119 dummy = element->attribute("Priority" );
118 dumInt = dummy.toInt(&ok ); 120 dumInt = dummy.toInt(&ok );