diff options
| author | 2018-10-06 09:54:21 +0100 | |
|---|---|---|
| committer | 2018-10-06 09:54:21 +0100 | |
| commit | df94020ef5862b8102042d726f55c2bdb2b614b0 (patch) | |
| tree | da5111f8414b9f4b6318b33ba72e633b1204626a /src | |
| parent | raw.* events should be call_unsafe (diff) | |
| signature | ||
Add database.find_by_setting, send github commits to interested channels
Diffstat (limited to 'src')
| -rw-r--r-- | src/Database.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Database.py b/src/Database.py index 27e4f113..c1d07869 100644 --- a/src/Database.py +++ b/src/Database.py @@ -140,6 +140,19 @@ class ChannelSettings(Table): """DELETE FROM channel_settings WHERE channel_id=? AND setting=?""", [channel_id, setting.lower()]) + def find_by_setting(self, setting, default=[]): + values = self.database.execute_fetchall( + """SELECT channels.server_id, channels.name, + channel_settings.value FROM channel_settings + INNER JOIN channels ON + channel_settings.channel_id=channels.channel_id + WHERE channel_settings.setting=?""", [setting]) + if values: + for i, value in enumerate(values): + values[i] = value[0], value[1], json.loads(value[2]) + return values + return default + class UserSettings(Table): def set(self, user_id, setting, value): self.database.execute( |
