X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=xsetbg_db.py;h=e5fe5d0310927a0d2c5704f41cdd44cfffeff47d;hb=a3637a99967383effca24fb7c3d501e6d2dc3e41;hp=fd9237dbde6ccf0101a06e3190ff3c9949ed4630;hpb=4ed80c34b609224bca893a3655d921ab6ba01c8d;p=xsetbg.git diff --git a/xsetbg_db.py b/xsetbg_db.py index fd9237d..e5fe5d0 100755 --- a/xsetbg_db.py +++ b/xsetbg_db.py @@ -11,22 +11,26 @@ __all__ = ['xsetbg_db_path', 'xsetbg_db'] import os from sqlobject import SQLObject, connectionForURI, sqlhub, \ - StringCol, IntCol, BoolCol, dberrors + UnicodeCol, IntCol, BoolCol, DatabaseIndex, dberrors from xsetbg_conf import xsetbg_conf -class SqliteSequence(SQLObject): - class sqlmeta: - idName = 'rowid' - name = StringCol(unique=True) - seq = IntCol() - - class XSetBg(SQLObject): - path = StringCol(alternateID=True) + full_name = UnicodeCol(alternateID=True) last_shown = IntCol(default=None) # timestamp flag = BoolCol(default=None) + last_shown_idx = DatabaseIndex('last_shown') + flag_idx = DatabaseIndex('flag') + + +def recreate_db(): + global xsetbg_db + if not xsetbg_db: + xsetbg_db = XSetBg + xsetbg_db.createTable() + return xsetbg_db + db_dirs = [] try: @@ -49,7 +53,7 @@ if not xsetbg_db_path: if xsetbg_db_path: sqlhub.processConnection = \ - connectionForURI('sqlite:///%s?debug=1&debugOutput=1' % xsetbg_db_path) + connectionForURI('sqlite:///%s' % xsetbg_db_path) try: XSetBg.select()[0] except IndexError: