summaryrefslogtreecommitdiff
path: root/db_sqlite.py
diff options
context:
space:
mode:
authorLouie S <louie@example.com>2023-09-16 09:36:14 -0400
committerLouie S <louie@example.com>2023-09-16 09:36:14 -0400
commit11db353ea4cac33caccb005be7d4b72671f20ad9 (patch)
tree18b89d43ff41ef823404844f09bf06aee0f4b2ed /db_sqlite.py
parentf2ca02a9230621d0968b8df129051e332339b768 (diff)
removing (hiding) groups working
Diffstat (limited to 'db_sqlite.py')
-rw-r--r--db_sqlite.py34
1 files changed, 33 insertions, 1 deletions
diff --git a/db_sqlite.py b/db_sqlite.py
index 2f20c91..a3620e2 100644
--- a/db_sqlite.py
+++ b/db_sqlite.py
@@ -79,7 +79,8 @@ def loadFromTables():
record.field("id").value(),
record.field("name").value(),
record.field("column").value(),
- record.field("link").value()))
+ record.field("link").value(),
+ record.field("hidden").value()))
# Load entries
query.exec_("SELECT * FROM entries")
@@ -168,3 +169,34 @@ def insertEntry(new_entry):
database.close()
return output
+
+def removeGroup(group_id):
+ """
+ Remove a group by id from the database
+ (actually set hidden to true, don't permanently delete it)
+ """
+
+ database = QSqlDatabase.addDatabase("QSQLITE") # SQlite version 3
+ database.setDatabaseName(Globals.db_path)
+
+ if not database.open():
+ print("Unable to open data source file.")
+ sys.exit(1) # Error out. TODO consider throwing a dialog instead
+
+ query = QSqlQuery()
+
+ # First, set entries to hidden
+ query.prepare("""
+ UPDATE entries SET hidden = 1 WHERE parent_id = ?
+ """)
+ query.addBindValue(group_id)
+ query.exec_()
+
+ # Now, set the group to hidden
+ query.prepare("""
+ UPDATE groups SET hidden = 1 WHERE id = ?
+ """)
+ query.addBindValue(group_id)
+ query.exec_()
+
+ database.close()