Move alert_words views into their own file.

This commit is contained in:
Tim Abbott
2015-11-23 19:56:24 -08:00
parent e64a3d0fae
commit f77b0bdb43
3 changed files with 49 additions and 36 deletions

View File

@@ -31,7 +31,6 @@ from zerver.lib.actions import do_change_password, do_change_full_name, do_chang
do_set_realm_invite_required, do_set_realm_invite_by_admins_only, \ do_set_realm_invite_required, do_set_realm_invite_by_admins_only, \
get_default_subs, do_deactivate_user, do_reactivate_user, \ get_default_subs, do_deactivate_user, do_reactivate_user, \
user_email_is_unique, do_invite_users, do_refer_friend, compute_mit_user_fullname, \ user_email_is_unique, do_invite_users, do_refer_friend, compute_mit_user_fullname, \
do_add_alert_words, do_remove_alert_words, do_set_alert_words, \
do_set_muted_topics, clear_followup_emails_queue, do_change_default_all_public_streams, \ do_set_muted_topics, clear_followup_emails_queue, do_change_default_all_public_streams, \
do_change_default_events_register_stream, do_change_default_sending_stream, \ do_change_default_events_register_stream, do_change_default_sending_stream, \
do_regenerate_api_key, do_update_pointer, do_change_avatar_source, realm_user_count do_regenerate_api_key, do_update_pointer, do_change_avatar_source, realm_user_count
@@ -42,7 +41,6 @@ from zerver.forms import RegistrationForm, HomepageForm, ToSForm, \
from django.views.decorators.csrf import csrf_exempt from django.views.decorators.csrf import csrf_exempt
from django_auth_ldap.backend import LDAPBackend, _LDAPUser from django_auth_ldap.backend import LDAPBackend, _LDAPUser
from zerver.lib import bugdown from zerver.lib import bugdown
from zerver.lib.alert_words import user_alert_words
from zerver.lib.validator import check_string, check_list, check_bool from zerver.lib.validator import check_string, check_list, check_bool
from zerver.decorator import require_post, authenticated_json_post_view, \ from zerver.decorator import require_post, authenticated_json_post_view, \
has_request_variables, authenticated_json_view, to_non_negative_int, \ has_request_variables, authenticated_json_view, to_non_negative_int, \
@@ -1481,34 +1479,6 @@ def json_refer_friend(request, user_profile, email=REQ):
return json_success() return json_success()
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
def add_alert_words(request, user_profile,
alert_words=REQ(validator=check_list(check_string), default=[])):
do_add_alert_words(user_profile, alert_words)
return json_success()
@has_request_variables
def remove_alert_words(request, user_profile,
alert_words=REQ(validator=check_list(check_string), default=[])):
do_remove_alert_words(user_profile, alert_words)
return json_success()
@authenticated_json_post_view @authenticated_json_post_view
@has_request_variables @has_request_variables
def json_set_muted_topics(request, user_profile, def json_set_muted_topics(request, user_profile,

View File

@@ -0,0 +1,41 @@
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
def add_alert_words(request, user_profile,
alert_words=REQ(validator=check_list(check_string), default=[])):
do_add_alert_words(user_profile, alert_words)
return json_success()
@has_request_variables
def remove_alert_words(request, user_profile,
alert_words=REQ(validator=check_list(check_string), default=[])):
do_remove_alert_words(user_profile, alert_words)
return json_success()

View File

@@ -139,7 +139,7 @@ urlpatterns += patterns('zerver.views',
url(r'^json/update_message$', 'messages.json_update_message'), url(r'^json/update_message$', 'messages.json_update_message'),
url(r'^json/fetch_raw_message$', 'messages.json_fetch_raw_message'), url(r'^json/fetch_raw_message$', 'messages.json_fetch_raw_message'),
url(r'^json/refer_friend$', 'json_refer_friend'), url(r'^json/refer_friend$', 'json_refer_friend'),
url(r'^json/set_alert_words$', 'json_set_alert_words'), url(r'^json/set_alert_words$', 'alert_words.json_set_alert_words'),
url(r'^json/set_muted_topics$', 'json_set_muted_topics'), url(r'^json/set_muted_topics$', 'json_set_muted_topics'),
url(r'^json/set_avatar$', 'user_settings.json_set_avatar'), url(r'^json/set_avatar$', 'user_settings.json_set_avatar'),
url(r'^json/time_setting$', 'user_settings.json_time_setting'), url(r'^json/time_setting$', 'user_settings.json_time_setting'),
@@ -184,11 +184,6 @@ v1_api_and_json_patterns = patterns('zerver.views',
url(r'^users/me/pointer$', 'rest_dispatch', url(r'^users/me/pointer$', 'rest_dispatch',
{'GET': 'get_pointer_backend', {'GET': 'get_pointer_backend',
'PUT': 'update_pointer_backend'}), 'PUT': 'update_pointer_backend'}),
url(r'^users/me/alert_words$', 'rest_dispatch',
{'GET': 'list_alert_words',
'PUT': 'set_alert_words',
'PATCH': 'add_alert_words',
'DELETE': 'remove_alert_words'}),
url(r'^realm$', 'rest_dispatch', url(r'^realm$', 'rest_dispatch',
{'PATCH': 'update_realm'}), {'PATCH': 'update_realm'}),
url(r'^users/me/presence$', 'rest_dispatch', url(r'^users/me/presence$', 'rest_dispatch',
@@ -231,6 +226,13 @@ v1_api_and_json_patterns = patterns('zerver.views',
url(r'^messages/flags$', 'rest_dispatch', url(r'^messages/flags$', 'rest_dispatch',
{'POST': 'update_message_flags'}), {'POST': 'update_message_flags'}),
) + patterns('zerver.views.alert_words',
url(r'^users/me/alert_words$', 'rest_dispatch',
{'GET': 'list_alert_words',
'PUT': 'set_alert_words',
'PATCH': 'add_alert_words',
'DELETE': 'remove_alert_words'}),
) + patterns('zerver.views.user_settings', ) + patterns('zerver.views.user_settings',
url(r'^users/me/api_key/regenerate$', 'rest_dispatch', url(r'^users/me/api_key/regenerate$', 'rest_dispatch',
{'POST': 'regenerate_api_key'}), {'POST': 'regenerate_api_key'}),