##### ##### This file is part of Mail-in-a-Box-LDAP which is released under the ##### terms of the GNU Affero General Public License as published by the ##### Free Software Foundation, either version 3 of the License, or (at ##### your option) any later version. See file LICENSE or go to ##### https://github.com/downtownallday/mailinabox-ldap for full license ##### details. ##### def select_top(c, select, start, end, y, fields, field_types): '''`c` is a cursor `select` is the select query `start` and `end` are the range in the format YYYY-MM-DD HH:MM:SS and the select query must have substitutes 'start_date' and 'end_date'. `y` is a description of the dataset `fields` are all fields to select by name `field_types` are the corresponding field types the caller will need to render the data visuals ''' top = { 'start': start, 'end': end, 'y': y, 'fields': fields, 'field_types': field_types, 'items': [] } for row in c.execute(select, { 'start_date':start, 'end_date':end }): v = {} for key in fields: v[key] = row[key] top['items'].append(v) return top