lib/my_db.py
branchxbelweb
changeset 41 7b7cd0e74ee3
parent 38 c30e2402deca
child 44 87f94936990d
--- a/lib/my_db.py	Wed Oct 08 17:51:09 2003 -0400
+++ b/lib/my_db.py	Fri Oct 10 11:38:20 2003 -0400
@@ -175,7 +175,7 @@
 			AND (
 			""" % (self.userid, self.userid)
 		for id in bk_ids:
-			qry = qry + "bk.bookmark = %d OR " % (id,)
+			qry += "bk.bookmark = %d OR " % (id,)
 		qry = qry[:-3] + ") ORDER BY k.id;"
 		self.crs.execute(qry)
 		return self.crs.fetchall()
@@ -217,14 +217,19 @@
 			ORDER BY k.id;""" % (self.userid,))
 		res = self.crs.fetchall()
 		return res
-	def get_keywords_count(self):
+	def get_keywords_count(self, bks = []):
 		"""Return a list of doublets [id, count].
 Does with a count of zero are ignored."""
-		self.crs.execute("""SELECT bk.keyword, COUNT(bk.keyword)
+		qry = """SELECT bk.keyword, COUNT(bk.keyword)
 			FROM bookmarks_keywords bk
-			WHERE bk.userid = %d
-			GROUP BY bk.keyword
-			ORDER BY bk.keyword;""" % (self.userid,))
+			WHERE bk.userid = %d""" % (self.userid,)
+		if len(bks) > 0:
+			qry += " AND ( bk.bookmark = %d" % bks[0]
+			for bk in bks[1:]:
+				qry += " OR bk.bookmark = %d" % bk
+			qry += " )"
+		qry += " GROUP BY bk.keyword ORDER BY bk.keyword;"
+		self.crs.execute(qry)
 		res = self.crs.fetchall()
 		if not res:
 			res = [[0,0]]