def graph(db, format='png'): class options: sources = request.params.get('source', type=int_list, default=[]) classes = request.params.get('class', type=int_list, default=[]) items = request.params.get('item', type=int_list, default=[]) levels = request.params.get('level', type=int_list, default=[]) country = request.params.get('country') if country <> None and not re.match(r"^([a-z_]+(\*|))$", country): country = None try: data = errors_graph.make_plt(db, options, format) response.content_type = {'png':'image/png', 'svg':'image/svg+xml', 'pdf':'application/pdf'}[format] return data except Exception, e: response.content_type = "text/plain" import traceback out = StringIO.StringIO() traceback.print_exc(file=out) return out.getvalue() + "\n"