import functools from six.moves import range, input, zip, map # NOQA from ibeis import constants as const from ibeis.control import accessor_decors, controller_inject import utool as ut from ibeis.algo import Config #from ibeis import ibsfuncs from ibeis.control.controller_inject import make_ibs_register_decorator print, print_, profile = ut.inject2(__name__, '[manual_meta]') CLASS_INJECT_KEY, register_ibs_method = make_ibs_register_decorator(__name__) register_api = controller_inject.get_ibeis_flask_api(__name__) register_route = controller_inject.get_ibeis_flask_route(__name__) @register_ibs_method @accessor_decors.adder @register_api('/api/contributor/', methods=['POST']) def add_contributors(ibs, tag_list, uuid_list=None, name_first_list=None, name_last_list=None, loc_city_list=None, loc_state_list=None, loc_country_list=None, loc_zip_list=None, notes_list=None): r""" Adds a list of contributors. Returns: contrib_id_list (list): contributor rowids
# -*- coding: utf-8 -*- """ Dependencies: flask, tornado """ from __future__ import absolute_import, division, print_function from flask import current_app from ibeis.control import controller_inject from ibeis.web import appfuncs as appf import utool as ut from ibeis.web import routes register_route = controller_inject.get_ibeis_flask_route(__name__) @register_route('/csv/sightings/', methods=['GET']) def download_sightings(): filename = 'sightings.csv' sightings = routes.sightings(html_encode=False) return appf.send_csv_file(sightings, filename) @register_route('/csv/nids_with_gids/', methods=['GET']) def get_nid_with_gids_csv(): ibs = current_app.ibs filename = 'nids_with_gids.csv' combined_dict = ibs.get_name_nids_with_gids() combined_list = [ ','.join( map(str, [nid] + [name] + gid_list) ) for name, (nid, gid_list) in sorted(list(combined_dict.iteritems())) ]