def setListWindowFilterSafe(self, fieldlist, value): v = "" if value and fieldlist: v = "(" fconditions = [] for f in fieldlist: fconditions.append( "{%s} LIKE s|%%%s%%|"%(f, value) ) v += " OR ".join(fconditions) v += ") WHERE?AND ({Closed} is NULL or {Closed}=i|0|)" # access group filter from User import User from functions import currentUser u = User.bring(currentUser()) record = self.getRecord() if u.AccessGroup and record: from AccessGroup import AccessGroup ag = AccessGroup.bring(u.AccessGroup) recordname = record.__class__.__name__ record_filter = { 0: None, 1: ("Office", "Office"), 2: ("Code", "User"), 3: ("Department", "Department"), 4: ("Code", "Asignee") }[ag.getRecordVisibility(recordname)] record_filter_clause = "" if record_filter: record_filter_data = getattr(u, record_filter[0]) record_filter_clause = " WHERE?AND {%s}=s|%s|" % (record_filter[1], record_filter_data) v += record_filter_clause self.ListWindowFilter = v
def doReplacements(self, txt): d = {1:"ONE", 2:"TWO"} us = User.bring("USER") txt = txt.replace(":1", us.Name + d[1]) return txt