~ubuntu-bots/ubuntu-bots/devel

« back to all changes in this revision

Viewing changes to Bantracker/plugin.py

  • Committer: Dennis Kaarsemaker
  • Date: 2007-01-23 23:42:45 UTC
  • Revision ID: dennis@ubuntu-nl.org-20070123234245-9516ada349f5481d
Made bugtracker plugin more usable
Some copyright notices

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
###
2
 
# Copyright (c) 2006 Dennis Kaarsemaker
 
2
# Copyright (c) 2006,2007 Dennis Kaarsemaker
3
3
#
4
4
# This program is free software; you can redistribute it and/or modify
5
5
# it under the terms of version 2 of the GNU General Public License as
73
73
        else:
74
74
            self.db = None
75
75
 
 
76
    def die(self):
 
77
        self.db.close()
 
78
 
 
79
    def reset(self):
 
80
        self.db.close()
 
81
 
76
82
    def __call__(self, irc, msg):
77
83
        try:
78
84
            super(self.__class__, self).__call__(irc, msg)
88
94
        cur.execute(query, parms)
89
95
        data = None
90
96
        if expect_result: data = cur.fetchall()
91
 
        if expect_id: data = con.insert_id()
 
97
        if expect_id: data = self.db.insert_id()
92
98
        self.db.commit()
93
99
        return data
94
100
 
121
127
        if not self.registryValue('enabled', channel):
122
128
            return
123
129
        n = now()
124
 
        id = db_run("INSERT INTO bans (channel, mask, operator, time, log) values(%s, %s, %s, %s, %s)", 
 
130
        id = self.db_run("INSERT INTO bans (channel, mask, operator, time, log) values(%s, %s, %s, %s, %s)", 
125
131
                          (channel, target, nick, n, '\n'.join(self.logs[channel])), expect_id=True)
126
132
        if kickmsg and id and not (kickmsg == nick):
127
 
            db_run("INSERT INTO comments (ban_id, who, comment, time) values(%s,%s,%s,%s)", (id, nick, kickmsg, n))
 
133
            self.db_run("INSERT INTO comments (ban_id, who, comment, time) values(%s,%s,%s,%s)", (id, nick, kickmsg, n))
128
134
 
129
135
    def doUnban(self, irc, channel, nick, mask):
130
136
        if not self.registryValue('enabled', channel):
131
137
            return
132
 
        data = db_run("SELECT MAX(id) FROM bans where channel=%s and mask=%s", (channel, mask), expect_result=True)
 
138
        data = self.db_run("SELECT MAX(id) FROM bans where channel=%s and mask=%s", (channel, mask), expect_result=True)
133
139
        if len(data) and not (data[0][0] == None):
134
 
            db_run("UPDATE bans SET removal=%s , removal_op=%s WHERE id=%s", (now(), nick, int(data[0][0])))
 
140
            self.db_run("UPDATE bans SET removal=%s , removal_op=%s WHERE id=%s", (now(), nick, int(data[0][0])))
135
141
 
136
142
    def doPrivmsg(self, irc, msg):
137
143
        (recipients, text) = msg.args