added write beta
authorNicola De Filippo <nicola@nicoladefilippo.it>
Tue, 1 Dec 2009 14:40:14 +0000 (15:40 +0100)
committerNicola De Filippo <nicola@nicoladefilippo.it>
Tue, 1 Dec 2009 14:40:14 +0000 (15:40 +0100)
badgedata.cpp

index 3c89c83..b592cbb 100644 (file)
@@ -1,6 +1,7 @@
 #include "badgedata.h"
 #include <QFile>
 #include <QDir>
+#include <QDebug>
 
 BadgeData::BadgeData()
 {
@@ -8,24 +9,49 @@ BadgeData::BadgeData()
     // se esiste, ma non c'e' nulla per questo anno, crea tutto l'anno
 }
 
-bool BadgeData::setTimetable(TimeTable in)
+bool BadgeData::setTimetable(TimeTable tt)
 {
     QFile data;
+    TimeTable dum;
+    qint64 pos = 0;
+
     data.setFileName(QDir::homePath() + QDir::separator() + "badge.data");
     data.open(QIODevice::ReadWrite);
     QDataStream out(&data);
     while (!data.atEnd()) {
-
+        out >> dum;
+        if (dum.day == tt.day) {
+            data.seek(pos);
+            //tt = dum;
+            out << tt;
+            data.close();
+            return true;
+        }
+         pos = data.pos();
     }
+    out << tt;
     data.close();
     return true;
 }
 
-bool BadgeData::getTimetable(TimeTable &out)
+bool BadgeData::getTimetable(TimeTable &tt)
 {
     QFile data;
+    TimeTable dum;
     data.setFileName(QDir::homePath() + QDir::separator() + "badge.data");
     data.open(QIODevice::ReadOnly);
+    QDataStream out(&data);
+
+
+
+    while (!data.atEnd()) {
+        out >> dum;
+        if (dum.day == tt.day) {
+            tt = dum;
+            data.close();
+            return true;
+        }
+    }
     data.close();
-    return true;
+    return false;
 }