mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
Eliminate legacy json/make_stream_public and json/make_stream_private URL
Migrate from POST to PATCH
This commit is contained in:
@@ -1270,17 +1270,17 @@ $(function () {
|
||||
stream_list.redraw_stream_privacy(sub.name);
|
||||
}
|
||||
|
||||
function change_stream_privacy(e, url, success_message, error_message, invite_only) {
|
||||
function change_stream_privacy(e, is_private, success_message, error_message, invite_only) {
|
||||
e.preventDefault();
|
||||
|
||||
var stream_id = $(e.target).closest(".subscription_settings").attr("data-stream-id");
|
||||
var sub = stream_data.get_sub_by_id(stream_id);
|
||||
|
||||
$("#subscriptions-status").hide();
|
||||
var data = {stream_name: sub.name};
|
||||
var data = {stream_name: sub.name, is_private: is_private};
|
||||
|
||||
channel.post({
|
||||
url: url,
|
||||
channel.patch({
|
||||
url: "/json/streams/" + sub.name,
|
||||
data: data,
|
||||
success: function () {
|
||||
sub = stream_data.get_sub_by_id(stream_id);
|
||||
@@ -1302,7 +1302,7 @@ $(function () {
|
||||
$("#subscriptions_table").on("click", ".make-stream-public-button", function (e) {
|
||||
change_stream_privacy(
|
||||
e,
|
||||
"/json/make_stream_public",
|
||||
false,
|
||||
"The stream has been made public!",
|
||||
"Error making stream public",
|
||||
false
|
||||
@@ -1312,7 +1312,7 @@ $(function () {
|
||||
$("#subscriptions_table").on("click", ".make-stream-private-button", function (e) {
|
||||
change_stream_privacy(
|
||||
e,
|
||||
"/json/make_stream_private",
|
||||
true,
|
||||
"The stream has been made private!",
|
||||
"Error making stream private",
|
||||
true
|
||||
|
||||
@@ -117,18 +117,20 @@ class StreamAdminTest(ZulipTestCase):
|
||||
|
||||
do_change_is_admin(user_profile, True)
|
||||
params = {
|
||||
'stream_name': 'private_stream'
|
||||
'stream_name': ujson.dumps('private_stream'),
|
||||
'is_private': ujson.dumps(False)
|
||||
}
|
||||
result = self.client_post("/json/make_stream_public", params)
|
||||
result = self.client_patch("/json/streams/private_stream", params)
|
||||
self.assert_json_error(result, 'You are not invited to this stream.')
|
||||
|
||||
self.subscribe_to_stream(email, 'private_stream')
|
||||
|
||||
do_change_is_admin(user_profile, True)
|
||||
params = {
|
||||
'stream_name': 'private_stream'
|
||||
'stream_name': ujson.dumps('private_stream'),
|
||||
'is_private': ujson.dumps(False)
|
||||
}
|
||||
result = self.client_post("/json/make_stream_public", params)
|
||||
result = self.client_patch("/json/streams/private_stream", params)
|
||||
self.assert_json_success(result)
|
||||
|
||||
realm = user_profile.realm
|
||||
@@ -145,9 +147,10 @@ class StreamAdminTest(ZulipTestCase):
|
||||
|
||||
do_change_is_admin(user_profile, True)
|
||||
params = {
|
||||
'stream_name': 'public_stream'
|
||||
'stream_name': ujson.dumps('public_stream'),
|
||||
'is_private': ujson.dumps(True)
|
||||
}
|
||||
result = self.client_post("/json/make_stream_private", params)
|
||||
result = self.client_patch("/json/streams/public_stream", params)
|
||||
self.assert_json_success(result)
|
||||
stream = Stream.objects.get(name='public_stream', realm=realm)
|
||||
self.assertTrue(stream.invite_only)
|
||||
|
||||
@@ -158,32 +158,22 @@ def remove_default_stream(request, user_profile, stream_name=REQ()):
|
||||
do_remove_default_stream(user_profile.realm, stream_name)
|
||||
return json_success()
|
||||
|
||||
@authenticated_json_post_view
|
||||
@require_realm_admin
|
||||
@has_request_variables
|
||||
def json_make_stream_public(request, user_profile, stream_name=REQ()):
|
||||
# type: (HttpRequest, UserProfile, text_type) -> HttpResponse
|
||||
do_make_stream_public(user_profile, user_profile.realm, stream_name)
|
||||
return json_success()
|
||||
|
||||
@authenticated_json_post_view
|
||||
@require_realm_admin
|
||||
@has_request_variables
|
||||
def json_make_stream_private(request, user_profile, stream_name=REQ()):
|
||||
# type: (HttpRequest, UserProfile, text_type) -> HttpResponse
|
||||
do_make_stream_private(user_profile.realm, stream_name)
|
||||
return json_success()
|
||||
|
||||
@require_realm_admin
|
||||
@has_request_variables
|
||||
def update_stream_backend(request, user_profile, stream_name,
|
||||
description=REQ(validator=check_string, default=None),
|
||||
is_private=REQ(validator=check_bool, default=None),
|
||||
new_name=REQ(validator=check_string, default=None)):
|
||||
# type: (HttpRequest, UserProfile, text_type, Optional[text_type], Optional[text_type]) -> HttpResponse
|
||||
# type: (HttpRequest, UserProfile, text_type, Optional[text_type], Optional[bool], Optional[text_type]) -> HttpResponse
|
||||
if description is not None:
|
||||
do_change_stream_description(user_profile.realm, stream_name, description)
|
||||
if stream_name is not None and new_name is not None:
|
||||
do_rename_stream(user_profile.realm, stream_name, new_name)
|
||||
if is_private is not None:
|
||||
if is_private:
|
||||
do_make_stream_private(user_profile.realm, stream_name)
|
||||
else:
|
||||
do_make_stream_public(user_profile, user_profile.realm, stream_name)
|
||||
return json_success()
|
||||
|
||||
def list_subscriptions_backend(request, user_profile):
|
||||
|
||||
@@ -13,8 +13,6 @@ import zerver.views.messages
|
||||
|
||||
legacy_urls = [
|
||||
# These are json format views used by the web client. They require a logged in browser.
|
||||
url(r'^json/make_stream_public$', zerver.views.streams.json_make_stream_public),
|
||||
url(r'^json/make_stream_private$', zerver.views.streams.json_make_stream_private),
|
||||
url(r'^json/invite_users$', zerver.views.invite.json_invite_users),
|
||||
url(r'^json/bulk_invite_users$', zerver.views.invite.json_bulk_invite_users),
|
||||
url(r'^json/refer_friend$', zerver.views.invite.json_refer_friend),
|
||||
|
||||
Reference in New Issue
Block a user