Commit Graph

61142 Commits

Author SHA1 Message Date
Sahil Batra b554106e6d user_groups: Allow members of subgroups to manage group.
Previously, if the user_group_edit_policy was set to allow
members or full members to manage the group, the user had
to be the direct member of the group being managed.

This commit updates the code to allow members of the subgroups
as well to manage the group as technically members of the
subgroups are member of the group.

This also improves the code to not fetch all the group members
to check this, and instead directly call is_user_in_group
which uses "exists" to check it.
2024-09-30 18:42:14 -07:00
Sahil Batra 233775d257 user_groups: Rename has_user_group_access.
This commit renames has_user_group_access function to
has_user_group_access_for_subgroup, since the function
is only used to check access for using a group as subgroup.
2024-09-30 18:42:14 -07:00
Sahil Batra 0c89621fa6 user_groups: Refactor code to check permissions.
This commit refactors the code to check permission for
accessing user group in such a way that we can avoid
duplicate code in future when we will have different
settings controlling the permissions for editing group
details and settings, joining the group, adding others
to group, etc.
2024-09-30 18:42:14 -07:00
evykassirer 9ba6c18e3a reload: Only add stream_id if it's defined.
This isn't a bug fix, but it does clean up the code. `reload_setup`
only uses the `stream_id` if it can parse it as an integer and
otherwise falls back to `undefined`, so it makes more sense to not
include undefined stream ids.
2024-09-30 17:48:17 -07:00
Shubham Padia 7a0a71b7d1 message_edit: Use display: grid instead of relative positioning.
Fixes #31750.
The control buttons of the edit box were flickering b/w default cursor
and pointer cursor after c1d155d923.
The addition of `position: relative` to `.edit-content-container` was
causing that. We've now added a div to apply position:relative to, this
div does not have any edit controls in it's children.
2024-09-30 17:40:37 -07:00
evykassirer 261f01ede8 input_pill: Highlight previous pill after backspace deletion.
This is helpful for when a user wants to delete multiple pills
in a row, now that a pill needs to be highlighted before it can
be deleted.

It makes more sense intuitively for the previous pill to be selected
after backspace, since the direction of deletion is backwards. We
still potentially focus next() if there is no previous pill, which
is most helpful when the input element has no more pills left, since
this focuses the text field.
2024-09-30 16:37:12 -07:00
evykassirer 6e85fa8fcc input_pill: Highlight/focus pill before removing it.
Select the pill on the first backspace and delete the whole pill on
the second backspace. If the pill is already highlighted from
left-pressing, then backspace would delete it right away.

We're making this change because it can be quite annoying to
re-type out a pill that's accidentally deleted, and users might
think pills are editable and accidentally delete the whole thing
with a backspace stroke.
2024-09-30 16:37:12 -07:00
evykassirer f5be62f60d buddy_list: Include offline users in participants list for large orgs. 2024-09-30 16:35:13 -07:00
evykassirer 38e5b4b8fc buddy_list: Show conversation participants in the right sidebar.
Fixes #31129.
2024-09-30 16:35:13 -07:00
evykassirer 12033d6690 message_view_header: Add blueslip logging for undefined sub.
To try to figure out why this is happening:
https://chat.zulip.org/#narrow/stream/464-kandra-js-errors/topic/Error.3A.20Failed.20to.20process.20an.20event
2024-09-30 16:32:03 -07:00
Anders Kaseorg 2440c6d244 electron_bridge: Harden against hypothetical DOM clobbering attacks.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-09-30 16:31:27 -07:00
Alya Abbott 6701d0c068 help: Update instructions to mark messages as read. 2024-09-30 16:29:59 -07:00
Anders Kaseorg b0653d1ea4 uploaded_files_list: Fix id pollution.
The HTML id attribute is supposed to be globally unique; it’s not an
appropriate place to store a user-controlled string, or to identify
part of a component that’s rendered more than once.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-09-30 14:15:31 -07:00
Karl Stolley 762617e23f left_sidebar: Add hover styles for action headings. 2024-09-30 13:38:33 -07:00
Karl Stolley 04f6082dfb left_sidebar: Add color for collapsed nav item hover. 2024-09-30 13:38:33 -07:00
Karl Stolley f73e39c63d sidebars: Restyle vdots icon colors and hover states. 2024-09-30 13:38:33 -07:00
Karl Stolley 872a1e64a6 left_sidebar: Add hover effects for section headings. 2024-09-30 13:38:33 -07:00
Karl Stolley 8c54c1df3e sidebars: Add active and hover sidebar-row styles. 2024-09-30 13:38:33 -07:00
Karl Stolley 1d4f282cbd sidebars: Present neutral and active sidebar-row states. 2024-09-30 13:38:33 -07:00
evykassirer 471d042a11 message_notifications: Convert module to typescript. 2024-09-30 12:07:27 -07:00
evykassirer 6c390551de unread: Remove useless message_unread function. 2024-09-30 12:07:27 -07:00
evykassirer 4215c9d707 message_notifications: Check if NotificationAPI is undefined.
`window.Notification` can be `undefined` in iOS Safari.
https://bugs.webkit.org/show_bug.cgi?id=247315

This hasn't caused any known bugs, but it's better to catch
this case with an undefined check than to assert it's defined
when we convert this file to typescript.
2024-09-30 12:07:27 -07:00
Mateusz Mandera 06fa99e87c do_change_user_delivery_email: Add acting_user kwarg.
This is standard for our do_change_... functions.
2024-09-30 12:00:14 -07:00
Mateusz Mandera 5bba9b4018 users: Create RealmAuditLog in misc do_change_... functions.
We've been meaning to fill this gap and create RealmAuditLog entries in
these.
2024-09-30 12:00:14 -07:00
Mateusz Mandera 18357404b5 emails: Consistently use a real parser for generating dummy addresses.
The use of the robust Address(...)-based address generation was added in
b945aa3443 but then this couple of
instances of the naive approach were added later.
2024-09-30 12:00:14 -07:00
Lauryn Menard ef1275e6fe help: Remove 'Getting your organization started with Zulip' guide.
Creates a URLRedirect for this help center article to go to the
new "Moving to Zulip" guide.

Updates the astro.config.mjs file for the changes to the help
center sidebar that have been made as part of the replacement
of this help center guide.

Fixes #31499.
2024-09-30 11:58:31 -07:00
Lauryn Menard f9de3f9a45 onboarding: Use "Moving to Zulip" guide in emails & Welcome bot message.
Replaces links to "Getting your organization started with Zulip"
in onboarding emails and Welcome bot direct message for owners of
new organizations.

Revises text in those emails and messages to reflect the new
"Moving to Zulip" help center guide that is now used.
2024-09-30 11:58:31 -07:00
Lauryn Menard 993eeec997 landing-pages: Link to new "Moving to Zulip" guide.
Replace links in the landing page footer and navigation bar to go
to the new "Moving to Zulip" guide, instead of the "Getting your
organization started with Zulip" guide.
2024-09-30 11:58:31 -07:00
Lauryn Menard 957186adff help: Link to "Moving to Zulip" guide in help center and prod docs.
In the help center and production documentation, replace links to
the "Getting your organization started with Zulip" guide to the
new "Moving to Zulip" guide.
2024-09-30 11:58:31 -07:00
Lauryn Menard 9f3553815e help: Link to dedicated articles vs getting org started guide.
As the guide to getting an organization started is being replaced
by the moving to zulip guide, replace links to subsections of the
old guide to instead go to dedicated articles about those topics.
2024-09-30 11:58:31 -07:00
Lauryn Menard 7d21e20cb4 help-links: Limit billing related relative gear menu links.
In order to only generate relative links for Zulip Cloud billing
specific gear menu options in relevant help center articles, we
pass down settings.CORPORATE_ENABLED to be set as a global variable
for zerver/lib/markdown/help_relative_links.py so that self-hosted
servers' help center documentation will not have these links.
2024-09-30 11:35:45 -07:00
Lauryn Menard d8fd0d8599 scheduled-messages-ui: Set channel ID in narrow term to a string. 2024-09-30 11:25:02 -07:00
Alex Vandiver 34308efb94 puppet: Upgrade sentry-cli.
This version causes `sentry-cli monitors run` to not fail if Sentry is
down (getsentry/sentry-cli#2169).
2024-09-30 11:24:36 -07:00
Aman Agrawal e5a0157f84 messages_ovelay: Use specific name for `row_item_selector`. 2024-09-30 11:23:29 -07:00
Aman Agrawal e646b3b7b6 messages_overlay: Force specific name for `message-info-box` selector. 2024-09-30 11:23:29 -07:00
Aman Agrawal d2561b778a scheduled_message: Use specific name for `message-info-box` selector. 2024-09-30 11:23:29 -07:00
Aman Agrawal 4a72801091 scheduled_messages: Use specific name for `items_list_selector`. 2024-09-30 11:23:29 -07:00
Aman Agrawal 3f1b78aab9 scheduled_messages: Use specific name for `items_container_selector`.
This avoids selecting an element from hidden other elements having
the same class.
2024-09-30 11:23:29 -07:00
Mateusz Mandera e655a7b251 migrations: Register (UPPER(email), realm) indexes in UserProfile.Meta.
It's nicer to have these indexes properly registered, rather than hidden
in RunSQL operations. Now that Django has had support for unique
functional indexes for a while, let's clean this up.
2024-09-30 11:21:25 -07:00
Karl Stolley a8217aee36 lightbox: Treat $original_media_element as singular. 2024-09-30 11:12:40 -07:00
Karl Stolley cad8330988 lightbox: Make selected-media logic less brittle. 2024-09-30 11:12:40 -07:00
evykassirer cd9dc3959a reload: Handle stream messages without specified stream.
The stream id can be undefined when the compose box is open
to start a stream message, but no stream has been selected
from the dropdown yet.

Fixes this error:
https://chat.zulip.org/#narrow/stream/464-kandra-js-errors/topic/Error.3A.20Failed.20to.20preserve.20state/near/1948680

Introduced in 97ffccb45f
2024-09-29 12:21:20 -07:00
Tim Abbott e6e3b12124 import_realm: Fix crash importing data with topic moves. 2024-09-28 11:53:30 -07:00
Tim Abbott c73462f124 stream_settings: Fix already-subscribed error handling.
This was not correctly migrated in 65893292b5.
2024-09-27 16:51:07 -07:00
Alex Vandiver 87ee167726 puppet: Allow tusd to be exposed on non-localhost.
This allows its /metrics endpoint to be monitored.
2024-09-27 15:06:47 -07:00
sanchi-t 82fd3c9b32 css: Refactor theme colors for `alerts`.
This change moves the light and dark theme colors for
`alerts` to CSS variables.
2024-09-27 13:27:58 -07:00
Aman Agrawal b6c37a3474 register: Ask which review site for how found zulip. 2024-09-27 13:23:08 -07:00
Aman Agrawal bdf16b7b4d register: Add `reddit` to how found Zulip options. 2024-09-27 13:23:08 -07:00
Aman Agrawal ee85e750f7 activity: Show ad and organization extra context. 2024-09-27 13:23:08 -07:00
Karl Stolley 112d7b60fe lightbox: Correctly center lightbox thumbnails. 2024-09-27 13:22:05 -07:00