summaryrefslogtreecommitdiffstats
path: root/storage/sqlite.py
diff options
context:
space:
mode:
Diffstat (limited to 'storage/sqlite.py')
-rw-r--r--storage/sqlite.py26
1 files changed, 16 insertions, 10 deletions
diff --git a/storage/sqlite.py b/storage/sqlite.py
index 09e55fc..bfdae42 100644
--- a/storage/sqlite.py
+++ b/storage/sqlite.py
@@ -6,7 +6,7 @@ from item import item
from pysqlite2 import dbapi2 as sqliteBackend
class sqlite(storageBase):
- dbVersion = '0.2'
+ dbVersion = '0.3'
def __init__(self):
self.con = sqliteBackend.connect(self.getConfigDir() + '/data.sqlite')
@@ -48,14 +48,20 @@ class sqlite(storageBase):
self.con.commit()
def update_db(self, updateFrom):
- print 'updating todo table...'
- if updateFrom == '0.1':
+ print 'updating todo table from %s...' % updateFrom
+ if updateFrom == ('0.1',):
self.cur.execute('''alter table todo
add desc BLOB''')
self.con.commit()
- updateFrom = '0.2'
+ updateFrom = ('0.2',)
- self.cur.execute("update control set value = ? where setting = 'db-version'", (sqlite.dbVersion,))
+ if updateFrom == ('0.2',):
+ self.cur.execute('''alter table todo
+ add completed INTEGER(1) DEFAULT (0)''')
+ self.con.commit()
+ updateFrom = ('0.3',)
+
+ self.cur.execute("update control set value = ? where setting = 'db-version'", updateFrom)
self.con.commit()
def __del__(self):
@@ -65,17 +71,17 @@ class sqlite(storageBase):
items = itemList(self)
todos = self.cur.execute('select * from todo').fetchall()
for todo in todos:
- items += item(row=todo)
+ items += item(row=list(todo))
return items
def notifyChange(self, sender):
if sender.getId() >= 0:
- self.cur.execute('update todo set title=?, createdAt=?, priority=?, desc=? where id=?',
- (sender.getTitle(), sender.getCreatedAt(), sender.getPriority(), sender.getId(), sender.getDescription()))
+ self.cur.execute('update todo set title=?, createdAt=?, priority=?, desc=?, completed=? where id=?',
+ (sender.getTitle(), sender.getCreatedAt(), sender.getPriority(), sender.getDescription(), sender.getCompleted(), sender.getId()))
self.con.commit()
else:
- self.cur.execute('insert into todo (title, createdAt, priority, desc) VALUES (?, ?, ?, ?)',
- (sender.getTitle(), sender.getCreatedAt(), sender.getPriority(), sender.getDescription()))
+ self.cur.execute('insert into todo (title, createdAt, priority, desc, completed) VALUES (?, ?, ?, ?, ?)',
+ (sender.getTitle(), sender.getCreatedAt(), sender.getPriority(), sender.getDescription(), sender.getCompleted()))
self.con.commit()
sender.setId(self.cur.execute('select last_insert_rowid()').fetchone()[0])