'last_name', 'email', 'body']) writer.writeheader() for relic in relics: user = User.objects.get(pk=relic.otm2_model_id) if relic.otm1_username == user.username: continue assert relic.email.lower() == user.email.lower() row = { 'otm1_user_id': relic.otm1_model_id, 'otm2_model_id': user.pk, 'otm1_username': relic.otm1_username, 'last_login': user.last_login, 'otm2_username': user.username, 'first_name': user.first_name, 'last_name': user.last_name, 'email': user.email, } body = render_email_body(user, instance) row['body'] = body writer.writerow(row) return response user_csv_endpoint = do( require_http_method("GET"), admin_instance_request, user_csv)
@transaction.atomic def unarchive(request, instance): return _set_prop_on_comments(request, instance, 'is_archived', False) @transaction.atomic def hide(request, instance): return _set_prop_on_comments(request, instance, 'is_removed', True) @transaction.atomic def show(request, instance): return _set_prop_on_comments(request, instance, 'is_removed', False) _admin_post_do = partial(do, require_http_method("POST"), admin_instance_request, render_template( "otm_comments/partials/moderation.html")) _render_flagging_view = partial( do, require_http_method("POST"), instance_request, render_template("otm_comments/partials/flagging.html")) flag_endpoint = _render_flagging_view(flag) unflag_endpoint = _render_flagging_view(unflag) hide_flags_endpoint = _admin_post_do(hide_flags) archive_endpoint = _admin_post_do(archive) unarchive_endpoint = _admin_post_do(unarchive)
from treemap.decorators import (login_or_401, return_400_if_validation_errors, require_http_method, requires_feature, creates_instance_user, instance_request, admin_instance_request, json_api_edit) import treemap.views.user as user_views import treemap.views.photo as photo_views import treemap.views.tree as tree_views import treemap.views.misc as misc_views import treemap.views.map_feature as feature_views add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template('treemap/partials/photo_carousel.html')) ##################################### # misc content views ##################################### edits_page = do( instance_request, requires_feature('recent_edits_report'), render_template('treemap/edits.html'), misc_views.edits)
creates_instance_user, instance_request, admin_instance_request, json_api_edit, ) import treemap.views.user as user_views import treemap.views.photo as photo_views import treemap.views.tree as tree_views import treemap.views.misc as misc_views import treemap.views.map_feature as feature_views add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template("treemap/partials/photo_carousel.html"), ) ##################################### # misc content views ##################################### edits_page = do( instance_request, requires_feature("recent_edits_report"), render_template("treemap/edits.html"), misc_views.edits ) index_page = instance_request(misc_views.index)
route(PUT=update_user)) add_photo_endpoint = logged_in_api_do( route( POST=do( instance_request, creates_instance_user, return_400_if_validation_errors, add_photo))) status_view = api_do(route(GET=status)) version_view = api_do(route(GET=version)) update_profile_photo_endpoint = logged_in_api_do( require_http_method('POST'), return_400_if_validation_errors, update_profile_photo) export_users_csv_endpoint = do( csrf_exempt, check_signature_and_require_login, set_api_version, admin_instance_request, route(GET=users_csv)) export_users_json_endpoint = do( csrf_exempt, check_signature_and_require_login, set_api_version, admin_instance_request,
route(GET=do(login_required, transform_user_response, user_info), POST=do(transform_user_request, return_400_if_validation_errors, create_user))) update_user_endpoint = logged_in_api_do(transform_user_request, return_400_if_validation_errors, transform_user_response, route(PUT=update_user)) add_photo_endpoint = logged_in_api_do( route(POST=do(instance_request, creates_instance_user, return_400_if_validation_errors, add_photo))) status_view = api_do(route(GET=status)) version_view = api_do(route(GET=version)) update_profile_photo_endpoint = logged_in_api_do( require_http_method('POST'), return_400_if_validation_errors, update_profile_photo) export_users_csv_endpoint = do(csrf_exempt, check_signature_and_require_login, set_api_version, admin_instance_request, route(GET=users_csv)) export_users_json_endpoint = do(csrf_exempt, check_signature_and_require_login, set_api_version, admin_instance_request, route(GET=users_json)) reset_password_endpoint = api_do(route(POST=reset_password))
udf_delete_popup, udf_delete, udf_update_choice, remove_udf_notifications) from manage_treemap.views.user_roles import (user_roles_list, update_user_roles, create_user_role, remove_invited_user_from_instance) from treemap.decorators import (require_http_method, admin_instance_request, return_400_if_validation_errors, requires_feature) admin_route = lambda **kwargs: admin_instance_request(route(**kwargs)) json_do = partial(do, json_api_call, return_400_if_validation_errors) management = do(require_http_method('GET'), views.management_root) admin_counts = admin_route(GET=do(json_api_call, views.admin_counts)) site_config = admin_route(GET=do(render_template('manage_treemap/basic.html'), views.site_config_basic_info), PUT=json_do(update_instance_fields_with_validator, views.site_config_validator)) external_link = admin_route(GET=do(render_template('manage_treemap/link.html'), views.external_link), PUT=json_do(views.update_external_link)) branding = admin_route(GET=do(render_template('manage_treemap/branding.html'), views.branding), PUT=json_do(update_instance_fields_with_validator,
get_plot_eco_view = instance_request(etag(_map_feature_hash)( render_template('treemap/partials/plot_eco.html', plot_detail))) get_map_feature_sidebar_view = instance_request(etag(_map_feature_hash)( render_template('treemap/partials/sidebar.html', plot_detail))) map_feature_popup_view = instance_request(etag(_map_feature_hash)( render_template('treemap/partials/map_feature_popup.html', map_feature_popup))) plot_accordion_view = instance_request( render_template('treemap/plot_accordion.html', plot_detail)) add_map_feature_view = require_http_method("POST")( login_or_401( json_api_call( instance_request( creates_instance_user(add_map_feature))))) root_settings_js_view = render_template('treemap/settings.js', {'BING_API_KEY': settings.BING_API_KEY}, mimetype='application/javascript') instance_settings_js_view = instance_request( render_template('treemap/settings.js', {'BING_API_KEY': settings.BING_API_KEY}, mimetype='application/javascript')) boundary_to_geojson_view = json_api_call(instance_request(boundary_to_geojson)) boundary_autocomplete_view = instance_request(
from treemap.views.tree import (add_tree_photo, tree_detail, delete_tree, search_tree_benefits, search_hash) from treemap.views.misc import (edits, get_map_view_context, static_page, boundary_to_geojson, boundary_autocomplete, species_list, compile_scss, index, public_instances_geojson) from treemap.views.map_feature import ( render_map_feature_detail, render_map_feature_add, update_map_feature_detail, map_feature_detail, plot_detail, delete_map_feature, map_feature_popup, add_map_feature, map_feature_hash, rotate_map_feature_photo, add_map_feature_photo) add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template('treemap/partials/photo_carousel.html')) ##################################### # misc content views ##################################### edits_view = do(instance_request, requires_feature('recent_edits_report'), render_template('treemap/edits.html'), edits) index_view = instance_request(index) map_view = do(instance_request, render_template('treemap/map.html'), get_map_view_context)
def _api_call(verb, view_fn): return do(admin_instance_request, require_http_method(verb), view_fn)
from treemap.views.map_feature import (render_map_feature_detail, render_map_feature_add, update_map_feature_detail, map_feature_detail, plot_detail, delete_map_feature, map_feature_popup, add_map_feature, map_feature_hash, rotate_map_feature_photo, add_map_feature_photo) add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template('treemap/partials/photo_carousel.html')) ##################################### # misc content views ##################################### edits_view = do( instance_request, requires_feature('recent_edits_report'), render_template('treemap/edits.html'), edits)
username_matches_request_user) from treemap.decorators import (login_or_401, return_400_if_validation_errors, require_http_method, requires_feature, creates_instance_user, instance_request, json_api_edit) import treemap.views.user as user_views import treemap.views.tree as tree_views import treemap.views.misc as misc_views import treemap.views.map_feature as feature_views add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template('treemap/partials/photo_carousel.html')) ##################################### # misc content views ##################################### edits_page = do( instance_request, requires_feature('recent_edits_report'), render_template('treemap/edits.html'), misc_views.edits)
def unarchive(request, instance): return _set_prop_on_comments(request, instance, "is_archived", False) @transaction.atomic def hide(request, instance): return _set_prop_on_comments(request, instance, "is_removed", True) @transaction.atomic def show(request, instance): return _set_prop_on_comments(request, instance, "is_removed", False) _admin_post_do = partial( do, require_http_method("POST"), admin_instance_request, render_template("otm_comments/partials/moderation.html") ) _render_flagging_view = partial( do, require_http_method("POST"), instance_request, render_template("otm_comments/partials/flagging.html") ) flag_endpoint = _render_flagging_view(flag) unflag_endpoint = _render_flagging_view(unflag) hide_flags_endpoint = _admin_post_do(hide_flags) archive_endpoint = _admin_post_do(archive) unarchive_endpoint = _admin_post_do(unarchive) hide_endpoint = _admin_post_do(hide) show_endpoint = _admin_post_do(show) comments_csv_endpoint = do(
def unarchive(request, instance): return _set_prop_on_comments(request, instance, 'is_archived', False) @transaction.atomic def hide(request, instance): return _set_prop_on_comments(request, instance, 'is_removed', True) @transaction.atomic def show(request, instance): return _set_prop_on_comments(request, instance, 'is_removed', False) _admin_post_do = partial( do, require_http_method("POST"), admin_instance_request, render_template("otm_comments/partials/moderation.html")) _render_flagging_view = partial( do, require_http_method("POST"), instance_request, render_template("otm_comments/partials/flagging.html")) flag_endpoint = _render_flagging_view(flag) unflag_endpoint = _render_flagging_view(unflag) hide_flags_endpoint = _admin_post_do(hide_flags) archive_endpoint = _admin_post_do(archive) unarchive_endpoint = _admin_post_do(unarchive) hide_endpoint = _admin_post_do(hide) show_endpoint = _admin_post_do(show) comments_csv_endpoint = do(require_http_method("GET"), admin_instance_request,
def _api_call(verb, view_fn): return do( admin_instance_request, requires_feature('bulk_upload'), require_http_method(verb), view_fn)
string_to_response, username_matches_request_user) from treemap.decorators import (login_or_401, return_400_if_validation_errors, require_http_method, requires_feature, creates_instance_user, instance_request, admin_instance_request, json_api_edit) import treemap.views.user as user_views import treemap.views.photo as photo_views import treemap.views.tree as tree_views import treemap.views.misc as misc_views import treemap.views.map_feature as feature_views add_map_feature_photo_do = partial( do, require_http_method("POST"), login_or_401, instance_request, creates_instance_user, render_template('treemap/partials/photo_carousel.html')) ##################################### # misc content views ##################################### edits_page = do(instance_request, requires_feature('recent_edits_report'), render_template('treemap/edits.html'), misc_views.edits) index_page = instance_request(misc_views.index) map_page = do(instance_request, render_template('treemap/map.html'), misc_views.get_map_view_context)