main_view_image.py 705 B

123456789101112131415161718
  1. from .tool.func import *
  2. from .main_func_error_404 import main_func_error_404
  3. def main_view_image(name = ''):
  4. with get_db_connect() as conn:
  5. if acl_check(conn, '', 'render') != 1:
  6. name = re.sub(r'\.cache_v(?:[0-9]+)$', '', name)
  7. mime_type = re.search(r'([^.]+)$', name)
  8. if mime_type:
  9. mime_type = mime_type.group(1).lower()
  10. if mime_type == 'svg':
  11. mime_type = 'svg+xml'
  12. return flask.send_from_directory('./' + load_image_url(conn), name, mimetype = 'image/' + mime_type)
  13. else:
  14. return main_func_error_404()
  15. else:
  16. return re_error(conn, '/ban')