Correct multiple criteria SELECT request

Use "AND" function for multiple SELECT criteria instead of "and" python operator

darcs-hash:20061130213843-86b55-88f870624497ecd59427d57ceb244c9c6cf18937.gz
This commit is contained in:
David Rousselie
2006-11-30 22:38:43 +01:00
parent 2e5337483d
commit 46f0e53eb4

View File

@@ -36,6 +36,7 @@ import re
from Queue import Queue from Queue import Queue
from sqlobject.sqlbuilder import AND
from sqlobject.dbconnection import connectionForURI from sqlobject.dbconnection import connectionForURI
from pyxmpp.jid import JID from pyxmpp.jid import JID
@@ -304,8 +305,8 @@ class JCLComponent(Component, object):
if to_jid and to_jid != self.jid: if to_jid and to_jid != self.jid:
self.db_connect() self.db_connect()
for _account in self.account_class.select(\ for _account in self.account_class.select(\
self.account_class.q.user_jid == base_from_jid \ AND(self.account_class.q.name == name, \
and self.account_class.q.name == name): self.account_class.q.user_jid == base_from_jid)):
self.get_reg_form_init(lang_class, \ self.get_reg_form_init(lang_class, \
_account).attach_xml(query) _account).attach_xml(query)
self.db_disconnect() self.db_disconnect()
@@ -365,8 +366,8 @@ class JCLComponent(Component, object):
return return
self.db_connect() self.db_connect()
accounts = self.account_class.select(\ accounts = self.account_class.select(\
self.account_class.q.user_jid == base_from_jid \ AND(self.account_class.q.name == name, \
and self.account_class.q.name == name) self.account_class.q.user_jid == base_from_jid))
accounts_count = accounts.count() accounts_count = accounts.count()
all_accounts = self.account_class.select(\ all_accounts = self.account_class.select(\
self.account_class.q.user_jid == base_from_jid) self.account_class.q.user_jid == base_from_jid)
@@ -448,9 +449,9 @@ class JCLComponent(Component, object):
self.stream.send(presence) self.stream.send(presence)
else: else:
accounts = self.account_class.select(\ accounts = self.account_class.select(\
self.account_class.q.user_jid == base_from_jid AND(self.account_class.q.name == name, \
and self.account_class.q.name == name) self.account_class.q.user_jid == base_from_jid))
if accounts.count() >= 1: if accounts.count() > 0:
self._send_presence_available(accounts[0], show, lang_class) self._send_presence_available(accounts[0], show, lang_class)
self.db_disconnect() self.db_disconnect()
return 1 return 1
@@ -542,8 +543,8 @@ class JCLComponent(Component, object):
base_from_jid = unicode(message.get_from().bare()) base_from_jid = unicode(message.get_from().bare())
self.db_connect() self.db_connect()
accounts = self.account_class.select(\ accounts = self.account_class.select(\
self.account_class.q.user_jid == base_from_jid \ AND(self.account_class.q.name == name, \
and self.account_class.q.name == name) self.account_class.q.user_jid == base_from_jid))
if hasattr(self.account_class, 'password') \ if hasattr(self.account_class, 'password') \
and hasattr(self.account_class, 'waiting_password_reply') \ and hasattr(self.account_class, 'waiting_password_reply') \
and re.compile("\[PASSWORD\]").search(message.get_subject()) \ and re.compile("\[PASSWORD\]").search(message.get_subject()) \