aboutsummaryrefslogtreecommitdiff
path: root/Database.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-08-05 17:16:15 +0100
committerGravatar jesopo2018-08-05 17:16:15 +0100
commit6a7369f7debd1a518822d2d789c13d43a06c5b2a (patch)
treebf031d32450874584295fe82f4727e23243aa27a /Database.py
parentonly get "sed" setting when a message that looks like a sed command comes in (diff)
signature
changed words.py to use new user_channel_settings table
Diffstat (limited to 'Database.py')
-rw-r--r--Database.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/Database.py b/Database.py
index 3e0a11e7..5024f558 100644
--- a/Database.py
+++ b/Database.py
@@ -270,7 +270,7 @@ class Database(object):
return default
def find_user_channel_settings(self, server_id, channel, nickname,
pattern, default=[]):
- values = self.cursor().execute(
+ values = self.execute_fetchall(
"""SELECT setting, value FROM user_channel_settings WHERE
server_id=? AND channel=? AND nickname=? AND setting LIKE '?'""",
[server_id, channel.lower(), nickname.lower(), pattern.lower()])
@@ -283,6 +283,17 @@ class Database(object):
prefix, default=[]):
return self.find_user_settings(server_id, nickname, "%s%" % prefix,
default)
+ def get_user_channel_settings_per_setting(self, server_id, nickname,
+ setting, default=[]):
+ values = self.execute_fetchall(
+ """SELECT channel, value FROM user_channel_settings WHERE
+ server_id=? AND nickname=? AND setting=?""",
+ [server_id, nickname.lower(), setting])
+ if values:
+ for i, value in enumerate(values):
+ values[i] = value[0], json.loads(value[1])
+ return values
+ return default
def del_user_channel_setting(self, server_id, channel, nickname, setting):
self.execute(
"""DELETE FROM user_channel_settings WHERE