Example #1
0
 def getQuery(self):
     """ See IPeopleReport.
     """
     query = {}
     for catid, filter in self.items():
         if IPeopleReportCategoryFilter.providedBy(filter):
             query['category_%s' % str(catid)] = {'query': filter.values,
                                                  'operator': 'or'}
         elif IPeopleReportGroupFilter.providedBy(filter):
             query['groups'] =  {'query': filter.values,
                                 'operator': 'or'}
         elif IPeopleReportIsStaffFilter.providedBy(filter):
             query['is_staff'] =  filter.include_staff
     return query
Example #2
0
 def getQuery(self):
     """ See IPeopleReport.
     """
     query = {}
     for catid, filter in self.items():
         if IPeopleReportCategoryFilter.providedBy(filter):
             query['category_%s' % str(catid)] = {
                 'query': filter.values,
                 'operator': 'or'
             }
         elif IPeopleReportGroupFilter.providedBy(filter):
             query['groups'] = {'query': filter.values, 'operator': 'or'}
         elif IPeopleReportIsStaffFilter.providedBy(filter):
             query['is_staff'] = filter.include_staff
     return query
Example #3
0
def _report_filter_items(report):
    if "filters" in report.__dict__:
        # Old-skool
        for key, values in report.filters.items():
            yield {"name": key, "type": "category", "values": " ".join(values)}
    # return [(name, filter.values) for name, filter in report.items()]
    else:
        for name, obj in sorted(report.items()):
            info = {"name": name, "type": "unknown", "obj": obj}
            if IPeopleReportCategoryFilter.providedBy(obj):
                info["type"] = "category"
                info["values"] = " ".join(obj.values)
            elif IPeopleReportGroupFilter.providedBy(obj):
                info["type"] = "groups"
                info["values"] = " ".join(obj.values)
            elif IPeopleReportIsStaffFilter.providedBy(obj):
                info["type"] = "is_staff"
                info["include_staff"] = str(obj.include_staff)
            yield info
Example #4
0
def _report_filter_items(report):
    if 'filters' in report.__dict__:
        # Old-skool
        for key, values in report.filters.items():
            yield {'name': key,
                   'type': 'category',
                   'values': ' '.join(values),
                  }
    #return [(name, filter.values) for name, filter in report.items()]
    else:
        for name, obj in sorted(report.items()):
            info = {'name': name, 'type': 'unknown', 'obj': obj}
            if IPeopleReportCategoryFilter.providedBy(obj):
                info['type'] = 'category'
                info['values'] = ' '.join(obj.values)
            elif IPeopleReportGroupFilter.providedBy(obj):
                info['type'] = 'groups'
                info['values'] = ' '.join(obj.values)
            elif IPeopleReportIsStaffFilter.providedBy(obj):
                info['type'] = 'is_staff'
                info['include_staff'] = str(obj.include_staff)
            yield info
Example #5
0
def _xxx_report_filter_items(report):
    if 'filters' in report.__dict__:
        # Old-skool
        for key, values in report.filters.items():
            yield {'name': key,
                   'type': 'category',
                   'values': ' '.join(values),
                  }
    #return [(name, filter.values) for name, filter in report.items()]
    else:
        for name, obj in sorted(report.items()):
            info = {'name': name, 'type': 'unknown', 'obj': obj}
            if IPeopleReportCategoryFilter.providedBy(obj):
                info['type'] = 'category'
                info['values'] = ' '.join(obj.values)
            elif IPeopleReportGroupFilter.providedBy(obj):
                info['type'] = 'groups'
                info['values'] = ' '.join(obj.values)
            elif IPeopleReportIsStaffFilter.providedBy(obj):
                info['type'] = 'is_staff'
                info['include_staff'] = str(obj.include_staff)
            yield info