from django.conf import settings from django.views.decorators.csrf import csrf_exempt from zerver.decorator import authenticated_json_post_view, has_request_variables, REQ, \ to_non_negative_int from zerver.lib.response import json_success from zerver.lib.queue import queue_json_publish from zerver.lib.unminify import SourceMap from zerver.lib.utils import statsd, statsd_key from zerver.lib.validator import check_bool, check_dict import subprocess import os from zerver.lib.rest import rest_dispatch as _rest_dispatch rest_dispatch = csrf_exempt((lambda request, *args, **kwargs: _rest_dispatch( request, globals(), *args, **kwargs))) # Read the source map information for decoding JavaScript backtraces js_source_map = None if not (settings.DEBUG or settings.TEST_SUITE): js_source_map = SourceMap( os.path.join(settings.DEPLOY_ROOT, 'prod-static/source-map')) @authenticated_json_post_view @has_request_variables def json_report_send_time(request, user_profile, time=REQ(converter=to_non_negative_int), received=REQ(converter=to_non_negative_int, default="(unknown)"),
from __future__ import absolute_import from django.views.decorators.csrf import csrf_exempt from zerver.decorator import authenticated_json_post_view, has_request_variables, REQ from zerver.lib.response import json_success from zerver.lib.validator import check_list, check_string from zerver.lib.actions import do_add_alert_words, do_remove_alert_words, do_set_alert_words from zerver.lib.alert_words import user_alert_words from zerver.lib.rest import rest_dispatch as _rest_dispatch rest_dispatch = csrf_exempt((lambda request, *args, **kwargs: _rest_dispatch(request, globals(), *args, **kwargs))) def list_alert_words(request, user_profile): return json_success({'alert_words': user_alert_words(user_profile)}) @authenticated_json_post_view @has_request_variables def json_set_alert_words(request, user_profile, alert_words=REQ(validator=check_list(check_string), default=[])): do_set_alert_words(user_profile, alert_words) return json_success() @has_request_variables def set_alert_words(request, user_profile, alert_words=REQ(validator=check_list(check_string), default=[])): do_set_alert_words(user_profile, alert_words) return json_success() @has_request_variables