mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	Add API for removing default streams from a realm.
(imported from commit 06433126e31b372dff8a23eb8bbea14515138c85)
This commit is contained in:
		@@ -1383,6 +1383,7 @@ def do_add_default_stream(realm, stream_name):
 | 
			
		||||
 | 
			
		||||
def do_remove_default_stream(realm, stream_name):
 | 
			
		||||
    DefaultStream.objects.filter(realm=realm, stream__name=stream_name).delete()
 | 
			
		||||
    return {}
 | 
			
		||||
 | 
			
		||||
def get_default_streams_for_realm(realm):
 | 
			
		||||
    return [default.stream for default in
 | 
			
		||||
 
 | 
			
		||||
@@ -1053,6 +1053,11 @@ class DefaultStreamTest(AuthedTestCase):
 | 
			
		||||
        self.assert_json_success(result)
 | 
			
		||||
        self.assertTrue(stream_name in self.get_default_stream_names(user_profile.realm))
 | 
			
		||||
 | 
			
		||||
        # and remove it
 | 
			
		||||
        result = self.client_delete('/json/default_streams', dict(stream_name=stream_name))
 | 
			
		||||
        self.assert_json_success(result)
 | 
			
		||||
        self.assertFalse(stream_name in self.get_default_stream_names(user_profile.realm))
 | 
			
		||||
 | 
			
		||||
class LoginTest(AuthedTestCase):
 | 
			
		||||
    """
 | 
			
		||||
    Logging in, registration, and logging out.
 | 
			
		||||
 
 | 
			
		||||
@@ -38,7 +38,7 @@ from zerver.lib.actions import bulk_remove_subscriptions, do_change_password, \
 | 
			
		||||
    notify_for_streams_by_default, do_change_enable_offline_push_notifications, \
 | 
			
		||||
    do_deactivate_stream, do_change_autoscroll_forever, do_make_stream_public, \
 | 
			
		||||
    do_make_stream_private, do_change_default_desktop_notifications, \
 | 
			
		||||
    do_change_stream_description, do_update_pointer, do_add_default_stream
 | 
			
		||||
    do_change_stream_description, do_update_pointer, do_add_default_stream, do_remove_default_stream
 | 
			
		||||
from zerver.lib.create_user import random_api_key
 | 
			
		||||
from zerver.lib.push_notifications import num_push_devices_for_user
 | 
			
		||||
from zerver.forms import RegistrationForm, HomepageForm, ToSForm, \
 | 
			
		||||
@@ -1078,6 +1078,11 @@ def get_public_streams_backend(request, user_profile):
 | 
			
		||||
def add_default_stream(request, user_profile, stream_name=REQ):
 | 
			
		||||
    return json_success(do_add_default_stream(user_profile.realm, stream_name))
 | 
			
		||||
 | 
			
		||||
@require_realm_admin
 | 
			
		||||
@has_request_variables
 | 
			
		||||
def remove_default_stream(request, user_profile, stream_name=REQ):
 | 
			
		||||
    return json_success(do_remove_default_stream(user_profile.realm, stream_name))
 | 
			
		||||
 | 
			
		||||
@authenticated_json_post_view
 | 
			
		||||
@require_realm_admin
 | 
			
		||||
@has_request_variables
 | 
			
		||||
 
 | 
			
		||||
@@ -200,7 +200,8 @@ v1_api_and_json_patterns = patterns('zerver.views',
 | 
			
		||||
             'PATCH': 'add_alert_words',
 | 
			
		||||
             'DELETE': 'remove_alert_words'}),
 | 
			
		||||
    url(r'^default_streams$', 'rest_dispatch',
 | 
			
		||||
            {'PATCH': 'add_default_stream'}),
 | 
			
		||||
            {'PATCH': 'add_default_stream',
 | 
			
		||||
             'DELETE': 'remove_default_stream'}),
 | 
			
		||||
    url(r'^users/me/api_key/regenerate$', 'rest_dispatch',
 | 
			
		||||
            {'POST': 'regenerate_api_key'}),
 | 
			
		||||
    url(r'^users/me/presence$', 'rest_dispatch',
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user