canonize, insert_constants, _dispatch_path_to_filesystem, enforce_rate_limits, handle_negotiation_exception, merge_exception_into_response, bypass_csp_for_form_redirects, return_500_for_exception, turn_socket_error_into_50X, overwrite_status_code_of_gateway_errors, ) from liberapay.renderers import csv_dump, jinja2, jinja2_jswrapped, jinja2_xml_min, scss from liberapay.website import Website, website application = website # for stupid WSGI implementations # Configure renderers # =================== json.register_encoder(Money, lambda m: {'amount': str(m.amount), 'currency': m.currency}) json.register_encoder(MoneyBasket, lambda b: list(b)) website.renderer_default = 'unspecified' # require explicit renderer, to avoid escaping bugs website.renderer_factories['csv_dump'] = csv_dump.Factory(website) website.renderer_factories['jinja2'] = jinja2.Factory(website) website.renderer_factories['jinja2_html_jswrapped'] = jinja2_jswrapped.Factory(website) website.renderer_factories['jinja2_xml_min'] = jinja2_xml_min.Factory(website) website.renderer_factories['scss'] = scss.Factory(website) website.default_renderers_by_media_type['text/html'] = 'jinja2' website.default_renderers_by_media_type['text/plain'] = 'jinja2' def _assert(x): assert x, repr(x) return x
return_500_for_exception, turn_socket_error_into_50X, overwrite_status_code_of_gateway_errors, ) from liberapay.utils.types import Object from liberapay.renderers import csv_dump, jinja2, jinja2_jswrapped, jinja2_xml_min, scss from liberapay.website import Website, website application = website # for stupid WSGI implementations # Configure renderers # =================== json.register_encoder( Money, lambda m: { 'amount': str(m.amount), 'currency': m.currency }) json.register_encoder(MoneyBasket, lambda b: list(b)) json.register_encoder(Object, lambda o: o.__dict__) website.renderer_default = 'unspecified' # require explicit renderer, to avoid escaping bugs rp = website.request_processor website.renderer_factories['csv_dump'] = csv_dump.Factory(rp) website.renderer_factories['jinja2'] = jinja2.Factory(rp) website.renderer_factories['jinja2_html_jswrapped'] = jinja2_jswrapped.Factory( rp) website.renderer_factories['jinja2_xml_min'] = jinja2_xml_min.Factory(rp) website.renderer_factories['scss'] = scss.Factory(rp) website.default_renderers_by_media_type['text/html'] = 'jinja2'
return_500_for_exception, set_output_to_None, turn_socket_error_into_50X, ) from liberapay.utils.types import Object from liberapay.renderers import csv_dump, jinja2, jinja2_jswrapped, jinja2_xml_min, scss from liberapay.website import Website, website application = website # for stupid WSGI implementations # Configure renderers # =================== json.register_encoder(Money, Money.for_json) json.register_encoder(MoneyBasket, lambda b: list(b)) json.register_encoder(Object, lambda o: o.__dict__) website.renderer_default = 'unspecified' # require explicit renderer, to avoid escaping bugs rp = website.request_processor website.renderer_factories['csv_dump'] = csv_dump.Factory(rp) website.renderer_factories['jinja2'] = jinja2.Factory(rp) website.renderer_factories['jinja2_html_jswrapped'] = jinja2_jswrapped.Factory(rp) website.renderer_factories['jinja2_xml_min'] = jinja2_xml_min.Factory(rp) website.renderer_factories['scss'] = scss.Factory(rp) website.default_renderers_by_media_type['text/html'] = 'jinja2' website.default_renderers_by_media_type['text/plain'] = 'jinja2' def _assert(x):