sqlwhere.append("SELECT e.id, e.data FROM services s RIGHT JOIN events e ON s.service_id = e.service_id WHERE e.id > %s")
foridentityingroup:
sqlparams.append(idor0)
sqltemp['group']+=("s.identity LIKE '%s' AND "%(identity))
ifnogroupisnotNone:
foridentityinnogroup:
sqltemp['group']+=("s.identity NOT LIKE '%s' AND "%(identity))
# logging.debug(sqltemp['group'][:-4])
ifcatornocat:
sqlwhere.append(sqltemp['group'][:-4])
not_op=""ifcatelse"NOT"
parent_cats=[]
sqltemp,sqlpar=self.generateDynamicQuery("Category","category_id %s IN (%%s)"%not_op,(catornocat),parent_cats)
forpcatsinparent_cats:
sqltemp+=" %s category_id DIV %s = 1 "%(("OR"ifsqltempelse""),pcats)
sqlwhere.append(" AND e.id IN (SELECT event_id FROM event_category_mapping WHERE %s)"%sqltemp)
sqlparams.extend(sqlpar)
sqlwhere_string=(" AND ".join(sqlwhere))
iftagornotag:
# logging.debug(sqlwhere_string)
not_op=""iftagelse"NOT"
# logging.debug(' AND ' . join(sqlwhere))
sqltemp,sqlpar=self.generateDynamicQuery("Tag","tag_id %s IN (%%s)"%not_op,(tagornotag))
#sqlwhere = sqlwhere[:-4]
sqlwhere.append(" AND e.id IN (SELECT event_id FROM event_tag_mapping WHERE %s)"%sqltemp)
and_op=""ifnotsqlwhere_stringelse"AND"
sqlparams.extend(sqlpar)
ifgroupornogroup:
not_op=""ifgroupelse"NOT"
foridentityin(groupornogroup):
sqlwhere.append(" AND s.identity %s LIKE %%s"%not_op)
sqlparams.append(identity+"%")
logging.debug("SELECT e.id, e.data FROM services s RIGHT JOIN events e ON s.id = e.service_id WHERE e.id > %s AND %s %s e.valid = 1 LIMIT %s"%(str(idor0),sqlwhere_string,and_op,str(count)))
sqlwhere.append(" AND e.valid = 1 LIMIT %s")
self.crs.execute("SELECT e.id, e.data FROM services s RIGHT JOIN events e ON s.service_id = e.service_id WHERE e.id > %s AND %s %s e.valid = 1 LIMIT %s"%(str(idor0),sqlwhere_string,and_op,str(count)))