Source code for ibeis.web.routes_ajax

# -*- coding: utf-8 -*-
"""
Dependencies: flask, tornado
"""
from __future__ import absolute_import, division, print_function
from flask import request, make_response, current_app
from ibeis.control import controller_inject
from ibeis.web import appfuncs as appf
import utool as ut
import vtool as vt

register_route = controller_inject.get_ibeis_flask_route(__name__)


@register_route('/ajax/cookie/', methods=['GET'])

@register_route('/ajax/image/src/<gid>/', methods=['GET'])
[docs]def image_src(gid=None, thumbnail=False, fresh=False, **kwargs): thumbnail = thumbnail or 'thumbnail' in request.args or 'thumbnail' in request.form ibs = current_app.ibs gid = int(gid) if thumbnail: gpath = ibs.get_image_thumbpath(gid, ensure_paths=True) fresh = fresh or 'fresh' in request.args or 'fresh' in request.form if fresh: import os os.remove(gpath) gpath = ibs.get_image_thumbpath(gid, ensure_paths=True) else: gpath = ibs.get_image_paths(gid) # Load image image = vt.imread(gpath, orient='auto') image = appf.resize_via_web_parameters(image) return appf.embed_image_html(image, target_width=None)
@register_route('/ajax/annotation/src/<aid>/', methods=['GET'])
[docs]def annotation_src(aid=None): ibs = current_app.ibs gpath = ibs.get_annot_chip_fpath(aid) image = vt.imread(gpath) image_src = appf.embed_image_html(image, target_width=200) return image_src
if __name__ == '__main__': """ CommandLine: python -m ibeis.web.app python -m ibeis.web.app --allexamples python -m ibeis.web.app --allexamples --noface --nosrc """ import multiprocessing multiprocessing.freeze_support() # for win32 import utool as ut # NOQA ut.doctest_funcs()