def queryOffset(self, userId): query1 = 'select timezone.gmtoffset from timezone, person where \ timezone.id = person.fk_timezone and person.id = %d' return self.db.db.runQuery(query1, (userId, )) def getOffset(self, rows, x): return DateTime(2005, 5, 1 + x / 48, (x % 48) / 2, (x % 2) * 30) - DateTimeDelta(0, rows[0][0]) d = self.queryOffset(userId) d.addCallback(self.getOffset) return d