mirror of
https://github.com/zulip/zulip.git
synced 2025-11-05 22:43:42 +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);
|
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();
|
e.preventDefault();
|
||||||
|
|
||||||
var stream_id = $(e.target).closest(".subscription_settings").attr("data-stream-id");
|
var stream_id = $(e.target).closest(".subscription_settings").attr("data-stream-id");
|
||||||
var sub = stream_data.get_sub_by_id(stream_id);
|
var sub = stream_data.get_sub_by_id(stream_id);
|
||||||
|
|
||||||
$("#subscriptions-status").hide();
|
$("#subscriptions-status").hide();
|
||||||
var data = {stream_name: sub.name};
|
var data = {stream_name: sub.name, is_private: is_private};
|
||||||
|
|
||||||
channel.post({
|
channel.patch({
|
||||||
url: url,
|
url: "/json/streams/" + sub.name,
|
||||||
data: data,
|
data: data,
|
||||||
success: function () {
|
success: function () {
|
||||||
sub = stream_data.get_sub_by_id(stream_id);
|
sub = stream_data.get_sub_by_id(stream_id);
|
||||||
@@ -1302,7 +1302,7 @@ $(function () {
|
|||||||
$("#subscriptions_table").on("click", ".make-stream-public-button", function (e) {
|
$("#subscriptions_table").on("click", ".make-stream-public-button", function (e) {
|
||||||
change_stream_privacy(
|
change_stream_privacy(
|
||||||
e,
|
e,
|
||||||
"/json/make_stream_public",
|
false,
|
||||||
"The stream has been made public!",
|
"The stream has been made public!",
|
||||||
"Error making stream public",
|
"Error making stream public",
|
||||||
false
|
false
|
||||||
@@ -1312,7 +1312,7 @@ $(function () {
|
|||||||
$("#subscriptions_table").on("click", ".make-stream-private-button", function (e) {
|
$("#subscriptions_table").on("click", ".make-stream-private-button", function (e) {
|
||||||
change_stream_privacy(
|
change_stream_privacy(
|
||||||
e,
|
e,
|
||||||
"/json/make_stream_private",
|
true,
|
||||||
"The stream has been made private!",
|
"The stream has been made private!",
|
||||||
"Error making stream private",
|
"Error making stream private",
|
||||||
true
|
true
|
||||||
|
|||||||
@@ -117,18 +117,20 @@ class StreamAdminTest(ZulipTestCase):
|
|||||||
|
|
||||||
do_change_is_admin(user_profile, True)
|
do_change_is_admin(user_profile, True)
|
||||||
params = {
|
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.assert_json_error(result, 'You are not invited to this stream.')
|
||||||
|
|
||||||
self.subscribe_to_stream(email, 'private_stream')
|
self.subscribe_to_stream(email, 'private_stream')
|
||||||
|
|
||||||
do_change_is_admin(user_profile, True)
|
do_change_is_admin(user_profile, True)
|
||||||
params = {
|
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)
|
self.assert_json_success(result)
|
||||||
|
|
||||||
realm = user_profile.realm
|
realm = user_profile.realm
|
||||||
@@ -145,9 +147,10 @@ class StreamAdminTest(ZulipTestCase):
|
|||||||
|
|
||||||
do_change_is_admin(user_profile, True)
|
do_change_is_admin(user_profile, True)
|
||||||
params = {
|
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)
|
self.assert_json_success(result)
|
||||||
stream = Stream.objects.get(name='public_stream', realm=realm)
|
stream = Stream.objects.get(name='public_stream', realm=realm)
|
||||||
self.assertTrue(stream.invite_only)
|
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)
|
do_remove_default_stream(user_profile.realm, stream_name)
|
||||||
return json_success()
|
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
|
@require_realm_admin
|
||||||
@has_request_variables
|
@has_request_variables
|
||||||
def update_stream_backend(request, user_profile, stream_name,
|
def update_stream_backend(request, user_profile, stream_name,
|
||||||
description=REQ(validator=check_string, default=None),
|
description=REQ(validator=check_string, default=None),
|
||||||
|
is_private=REQ(validator=check_bool, default=None),
|
||||||
new_name=REQ(validator=check_string, 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:
|
if description is not None:
|
||||||
do_change_stream_description(user_profile.realm, stream_name, description)
|
do_change_stream_description(user_profile.realm, stream_name, description)
|
||||||
if stream_name is not None and new_name is not None:
|
if stream_name is not None and new_name is not None:
|
||||||
do_rename_stream(user_profile.realm, stream_name, new_name)
|
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()
|
return json_success()
|
||||||
|
|
||||||
def list_subscriptions_backend(request, user_profile):
|
def list_subscriptions_backend(request, user_profile):
|
||||||
|
|||||||
@@ -13,8 +13,6 @@ import zerver.views.messages
|
|||||||
|
|
||||||
legacy_urls = [
|
legacy_urls = [
|
||||||
# These are json format views used by the web client. They require a logged in browser.
|
# 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/invite_users$', zerver.views.invite.json_invite_users),
|
||||||
url(r'^json/bulk_invite_users$', zerver.views.invite.json_bulk_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),
|
url(r'^json/refer_friend$', zerver.views.invite.json_refer_friend),
|
||||||
|
|||||||
Reference in New Issue
Block a user