mirror of https://github.com/zulip/zulip.git
realm: Removed WILDCARD_MENTION_POLICY_STREAM_ADMINS option.
This commit removes WILDCARD_MENTION_POLICY_STREAM_ADMINS option of wildcard_mention_policy since we are not moving forward with stream administrator concept and instead working on new permssions model as per #19525. We also add a migration to change wildcard_mention_policy of existing realms to WILDCARD_MENTION_POLICY_ADMINS. This change is fine since we were already treating both the setting values as same as stream admin concept was not implemented completely.
This commit is contained in:
parent
d31fc27912
commit
83383090f9
|
@ -20,6 +20,11 @@ format used by the Zulip server that they are interacting with.
|
||||||
|
|
||||||
## Changes in Zulip 6.0
|
## Changes in Zulip 6.0
|
||||||
|
|
||||||
|
**Feature level 133**
|
||||||
|
|
||||||
|
* [`POST /register`](/api/register-queue), `PATCH /realm`: Removed
|
||||||
|
stream administrators option from `wildcard_mention_policy` setting.
|
||||||
|
|
||||||
**Feature level 132**
|
**Feature level 132**
|
||||||
|
|
||||||
* [`GET /streams/{stream_id}`](/api/get-stream-by-id):
|
* [`GET /streams/{stream_id}`](/api/get-stream-by-id):
|
||||||
|
|
|
@ -1605,10 +1605,6 @@ def wildcard_mention_allowed(sender: UserProfile, stream: Stream) -> bool:
|
||||||
if realm.wildcard_mention_policy == Realm.WILDCARD_MENTION_POLICY_MODERATORS:
|
if realm.wildcard_mention_policy == Realm.WILDCARD_MENTION_POLICY_MODERATORS:
|
||||||
return sender.is_realm_admin or sender.is_moderator
|
return sender.is_realm_admin or sender.is_moderator
|
||||||
|
|
||||||
if realm.wildcard_mention_policy == Realm.WILDCARD_MENTION_POLICY_STREAM_ADMINS:
|
|
||||||
# TODO: Change this when we implement stream administrators
|
|
||||||
return sender.is_realm_admin
|
|
||||||
|
|
||||||
if realm.wildcard_mention_policy == Realm.WILDCARD_MENTION_POLICY_FULL_MEMBERS:
|
if realm.wildcard_mention_policy == Realm.WILDCARD_MENTION_POLICY_FULL_MEMBERS:
|
||||||
return sender.is_realm_admin or (not sender.is_provisional_member and not sender.is_guest)
|
return sender.is_realm_admin or (not sender.is_provisional_member and not sender.is_guest)
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,32 @@
|
||||||
|
# Generated by Django 3.2.13 on 2022-07-05 12:23
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
from django.db.backends.postgresql.schema import BaseDatabaseSchemaEditor
|
||||||
|
from django.db.migrations.state import StateApps
|
||||||
|
|
||||||
|
|
||||||
|
def fix_wildcard_mention_policy_stream_admins_value(
|
||||||
|
apps: StateApps, schema_editor: BaseDatabaseSchemaEditor
|
||||||
|
) -> None:
|
||||||
|
Realm = apps.get_model("zerver", "Realm")
|
||||||
|
WILDCARD_MENTION_POLICY_STREAM_ADMINS = 4
|
||||||
|
WILDCARD_MENTION_POLICY_ADMINS = 5
|
||||||
|
Realm.objects.filter(wildcard_mention_policy=WILDCARD_MENTION_POLICY_STREAM_ADMINS).update(
|
||||||
|
wildcard_mention_policy=WILDCARD_MENTION_POLICY_ADMINS
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
("zerver", "0394_alter_realm_want_advertise_in_communities_directory"),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name="realm",
|
||||||
|
name="wildcard_mention_policy",
|
||||||
|
field=models.PositiveSmallIntegerField(default=5),
|
||||||
|
),
|
||||||
|
migrations.RunPython(fix_wildcard_mention_policy_stream_admins_value, elidable=True),
|
||||||
|
]
|
|
@ -414,18 +414,16 @@ class Realm(models.Model):
|
||||||
WILDCARD_MENTION_POLICY_EVERYONE = 1
|
WILDCARD_MENTION_POLICY_EVERYONE = 1
|
||||||
WILDCARD_MENTION_POLICY_MEMBERS = 2
|
WILDCARD_MENTION_POLICY_MEMBERS = 2
|
||||||
WILDCARD_MENTION_POLICY_FULL_MEMBERS = 3
|
WILDCARD_MENTION_POLICY_FULL_MEMBERS = 3
|
||||||
WILDCARD_MENTION_POLICY_STREAM_ADMINS = 4
|
|
||||||
WILDCARD_MENTION_POLICY_ADMINS = 5
|
WILDCARD_MENTION_POLICY_ADMINS = 5
|
||||||
WILDCARD_MENTION_POLICY_NOBODY = 6
|
WILDCARD_MENTION_POLICY_NOBODY = 6
|
||||||
WILDCARD_MENTION_POLICY_MODERATORS = 7
|
WILDCARD_MENTION_POLICY_MODERATORS = 7
|
||||||
wildcard_mention_policy: int = models.PositiveSmallIntegerField(
|
wildcard_mention_policy: int = models.PositiveSmallIntegerField(
|
||||||
default=WILDCARD_MENTION_POLICY_STREAM_ADMINS,
|
default=WILDCARD_MENTION_POLICY_ADMINS,
|
||||||
)
|
)
|
||||||
WILDCARD_MENTION_POLICY_TYPES = [
|
WILDCARD_MENTION_POLICY_TYPES = [
|
||||||
WILDCARD_MENTION_POLICY_EVERYONE,
|
WILDCARD_MENTION_POLICY_EVERYONE,
|
||||||
WILDCARD_MENTION_POLICY_MEMBERS,
|
WILDCARD_MENTION_POLICY_MEMBERS,
|
||||||
WILDCARD_MENTION_POLICY_FULL_MEMBERS,
|
WILDCARD_MENTION_POLICY_FULL_MEMBERS,
|
||||||
WILDCARD_MENTION_POLICY_STREAM_ADMINS,
|
|
||||||
WILDCARD_MENTION_POLICY_ADMINS,
|
WILDCARD_MENTION_POLICY_ADMINS,
|
||||||
WILDCARD_MENTION_POLICY_NOBODY,
|
WILDCARD_MENTION_POLICY_NOBODY,
|
||||||
WILDCARD_MENTION_POLICY_MODERATORS,
|
WILDCARD_MENTION_POLICY_MODERATORS,
|
||||||
|
|
|
@ -4051,7 +4051,6 @@ paths:
|
||||||
- 1 => Any user can use wildcard mentions in large streams.
|
- 1 => Any user can use wildcard mentions in large streams.
|
||||||
- 2 => Only members can use wildcard mentions in large streams.
|
- 2 => Only members can use wildcard mentions in large streams.
|
||||||
- 3 => Only [full members][calc-full-member] can use wildcard mentions in large streams.
|
- 3 => Only [full members][calc-full-member] can use wildcard mentions in large streams.
|
||||||
- 4 => Only stream and organization administrators can use wildcard mentions in large streams.
|
|
||||||
- 5 => Only organization administrators can use wildcard mentions in large streams.
|
- 5 => Only organization administrators can use wildcard mentions in large streams.
|
||||||
- 6 => Nobody can use wildcard mentions in large streams.
|
- 6 => Nobody can use wildcard mentions in large streams.
|
||||||
- 7 => Only organization administrators and moderators can use wildcard mentions in large streams.
|
- 7 => Only organization administrators and moderators can use wildcard mentions in large streams.
|
||||||
|
@ -4060,7 +4059,8 @@ paths:
|
||||||
mentions in large streams, even when permitted to do so.
|
mentions in large streams, even when permitted to do so.
|
||||||
|
|
||||||
**Changes**: New in Zulip 4.0 (feature level 33). Moderators option added in
|
**Changes**: New in Zulip 4.0 (feature level 33). Moderators option added in
|
||||||
Zulip 4.0 (feature level 62).
|
Zulip 4.0 (feature level 62). Stream administrators option removed in
|
||||||
|
Zulip 6.0 (feature level 133).
|
||||||
|
|
||||||
[permission-level]: /api/roles-and-permissions#permission-levels
|
[permission-level]: /api/roles-and-permissions#permission-levels
|
||||||
[calc-full-member]: /api/roles-and-permissions#determining-if-a-user-is-a-full-member
|
[calc-full-member]: /api/roles-and-permissions#determining-if-a-user-is-a-full-member
|
||||||
|
@ -10889,7 +10889,6 @@ paths:
|
||||||
- 1 => Any user can use wildcard mentions in large streams.
|
- 1 => Any user can use wildcard mentions in large streams.
|
||||||
- 2 => Only members can use wildcard mentions in large streams.
|
- 2 => Only members can use wildcard mentions in large streams.
|
||||||
- 3 => Only [full members][calc-full-member] can use wildcard mentions in large streams.
|
- 3 => Only [full members][calc-full-member] can use wildcard mentions in large streams.
|
||||||
- 4 => Only stream and organization administrators can use wildcard mentions in large streams.
|
|
||||||
- 5 => Only organization administrators can use wildcard mentions in large streams.
|
- 5 => Only organization administrators can use wildcard mentions in large streams.
|
||||||
- 6 => Nobody can use wildcard mentions in large streams.
|
- 6 => Nobody can use wildcard mentions in large streams.
|
||||||
- 7 => Only organization administrators and moderators can use wildcard mentions in large streams.
|
- 7 => Only organization administrators and moderators can use wildcard mentions in large streams.
|
||||||
|
@ -10898,7 +10897,8 @@ paths:
|
||||||
mentions in large streams, even when permitted to do so.
|
mentions in large streams, even when permitted to do so.
|
||||||
|
|
||||||
**Changes**: New in Zulip 4.0 (feature level 33). Moderators option added in
|
**Changes**: New in Zulip 4.0 (feature level 33). Moderators option added in
|
||||||
Zulip 4.0 (feature level 62).
|
Zulip 4.0 (feature level 62). Stream administrators option removed in
|
||||||
|
Zulip 6.0 (feature level 133).
|
||||||
|
|
||||||
[permission-level]: /api/roles-and-permissions#permission-levels
|
[permission-level]: /api/roles-and-permissions#permission-levels
|
||||||
[calc-full-member]: /api/roles-and-permissions#determining-if-a-user-is-a-full-member
|
[calc-full-member]: /api/roles-and-permissions#determining-if-a-user-is-a-full-member
|
||||||
|
|
|
@ -1843,18 +1843,6 @@ class StreamMessagesTest(ZulipTestCase):
|
||||||
cordelia.save()
|
cordelia.save()
|
||||||
self.send_and_verify_wildcard_mention_message("cordelia")
|
self.send_and_verify_wildcard_mention_message("cordelia")
|
||||||
|
|
||||||
do_set_realm_property(
|
|
||||||
realm,
|
|
||||||
"wildcard_mention_policy",
|
|
||||||
Realm.WILDCARD_MENTION_POLICY_STREAM_ADMINS,
|
|
||||||
acting_user=None,
|
|
||||||
)
|
|
||||||
# TODO: Change this when we implement stream administrators
|
|
||||||
self.send_and_verify_wildcard_mention_message("cordelia", test_fails=True)
|
|
||||||
# There is no restriction on small streams.
|
|
||||||
self.send_and_verify_wildcard_mention_message("cordelia", sub_count=10)
|
|
||||||
self.send_and_verify_wildcard_mention_message("iago")
|
|
||||||
|
|
||||||
do_set_realm_property(
|
do_set_realm_property(
|
||||||
realm,
|
realm,
|
||||||
"wildcard_mention_policy",
|
"wildcard_mention_policy",
|
||||||
|
|
Loading…
Reference in New Issue