Commit Graph

65544 Commits

Author SHA1 Message Date
Evy Kassirer
f7af0f0879 search: Update description string for channel terms. 2025-07-08 10:02:34 -07:00
Evy Kassirer
c61943f002 search_suggestion: Show pills in search suggestions.
Fixes #34750.
2025-07-08 10:02:34 -07:00
Evy Kassirer
106a97cd05 search_pill: Separate out logic to calculate user pill data.
This will be reused in an upcoming commit.
2025-07-08 10:02:34 -07:00
Evy Kassirer
58f5f499fc search_pill: Rename non-user type to 'generic_operator'.
This change is meant to remove confusion between a pill's `type` being
"search" and its `operator` being "search".
2025-07-08 10:02:34 -07:00
Lauryn Menard
ca48ffccb8 realm-create: Update default user email visibility for org_type.
When creating a new organization, the new user default for email
address visibility is now limited to admins for most organization
types. The exceptions are education organizations, which have the
default set to moderators, and business organizations, which have
the default set to all users.

Fixes #34859.
2025-07-08 09:30:39 -07:00
Lauryn Menard
4e97a6d80e analytics: Get user by delivery email when creating users in test set up.
In the analytics tests, where users are created as part of the set up
of the test, we want to get users by the delivery email and not the
visible-to-other-users email field.

Prep for setting default new user email visibility in realm creation
by the organization type.
2025-07-08 09:30:39 -07:00
Lauryn Menard
be30af9f22 test-send-message: Update cross realm direct message test.
Set organization type as business when making realms for tests,
and get newly created users with delivery email.

Prep for changes to the default email visibility setting for new
realms based on organization type.
2025-07-08 09:30:39 -07:00
Lauryn Menard
dded5c3bad help: Remove instructions with relative links to settings overlay.
These links do not work for the general help center docs as there
is no Zulip organization for the relative link to go to. Instead
we link to other help center documentation that's relevant to the
context of these articles.
2025-07-08 09:28:40 -07:00
Sahil Batra
635cd1133c groups-ui: Fix members list not updating when creating groups.
On removing a user or group pill from input, the user or group
was not being removed from the table. This was because of
onPillRemove not being set for the pill widget as it was
removed by mistake while doing other changes in ec65dad063.
2025-07-08 09:27:17 -07:00
Alya Abbott
8a42845605 help: Add note about pasting plain URLs. 2025-07-07 18:46:51 -07:00
Lauryn Menard
c68881af10 help: Switch tab label for configure single channel notifications.
Follow up to #35103.
2025-07-07 18:46:13 -07:00
Mateusz Mandera
fe993032a6 validate_email_not_already_in_realm: Add kwarg for mirror dummies.
In user signup context, we are okay with there being an existing mirror
dummy user with the matching email - at the end of the signup, that
mirror dummy account will be activated and control of it given to the
user doing this signup.

However, in email change contexts (SCIM API and regular email change
flow), we can't change an account's email address to the address that
already belongs to an existing mirror dummy user.

To avoid subtle bugs like this, we make callers have to explicitly
specify whether existance of mirror dummies with the matching email
address is okay or not.
2025-07-07 17:15:08 -07:00
Mateusz Mandera
9abdb17d1f do_start_email_change_process: Don't revoke USED EmailChangeStatus objs.
We obviously shouldn't set such objects to REVOKED as that introduces
misleading information into our data. USED objects cannot be re-used, so
they can stay as they are.
2025-07-07 17:15:08 -07:00
Mateusz Mandera
2bfefe2ebd confirm_email_change: Use redirect-to-POST trick.
Just like with signup confirmation links, we shouldn't trigger email
change based on a GET to the confirmation URL - POST should be required.

So upon GET of the confirmation link, we serve a form which will
immediately be POSTed by JS code to finalize the email change.
2025-07-07 17:15:08 -07:00
Mateusz Mandera
32daab11c5 confirm_email_change: Mark the Confirmation used inside a transaction.
The get_object_from_key call should be included in the transaction - we
shouldn't modify the object if the rest of the function fails to
actually confirm the email change (e.g. due to IntegrityError occurring).
2025-07-07 17:15:08 -07:00
Karl Stolley
e43ee9dbbe compose: Correct low-attention logic for combined feeds. 2025-07-07 15:14:36 -07:00
Karl Stolley
04349a427f compose: Evaluate narrow against stream_id. 2025-07-07 15:14:36 -07:00
Vector73
c46272f009 stream_types: Rename stream_types.hbs to stream_permissions.hbs. 2025-07-07 09:50:50 -07:00
Vector73
f65fdb7bef stream_settings: Reorganize settings in subsections.
This commit reorganizes channel settings in the "Advanced
configurations" section into four subsections.

Fixes #34837.
2025-07-07 09:50:50 -07:00
Vector73
b2bd4500ab stream_settings: Reorder settings in advanced configuration section. 2025-07-07 09:50:50 -07:00
Aditya Kumar Kasaudhan
cc9d78328e users: Add SECURITY_SENSITIVE_USER_SETTINGS to UserBaseSettings.
This commit is a preparatory step for allowing organization owners to
reset user preferences, defines a set of sensitive user settings
that will be protected from resets by organization owners.
2025-07-07 09:48:25 -07:00
Tim Abbott
71e8fcbb3a zilencer: Update comments on remotepushdevice. 2025-07-07 09:41:34 -07:00
Maneesh Shukla
aa49b54fb4 topic_list: Set typeahead to only match when the prefix matches. 2025-07-07 09:29:42 -07:00
Maneesh Shukla
27587fe6b9 topic_list: Fix Enter key behavior for the typeahead.
Previously, pressing the Enter key added a shaking animation to the
input box.

This commit remove that behaviour.
2025-07-07 09:29:42 -07:00
Prakhar Pratyush
7cbd4e4880 zilencer: Add RemotePushDevice model.
This commit adds a `RemotePushDevice` model where each row
corresponds to an account on an install of the app registered
to receive mobile push notifications.
2025-07-06 21:11:26 -07:00
Prakhar Pratyush
e6bdf84363 validate_token: Move validate_token to avoid dependency cycle.
Prep commit to avoid depencency cycle.
2025-07-06 21:11:26 -07:00
Prakhar Pratyush
8b3cef554b settings: Add push_registration_encryption_keys map.
The `push_registration_encryption_keys` map stores the
assymetric key pair generated on bouncer.

The public key will be used by the client to encrypt
registration data and the bouncer will use the corresponding
private key to decrypt.

- Updated the `generate_secrets.py` script to generate the map
during installation in dev environment.
- Added a management command to add / remove key i.e. use it
for key rotation while retaining the older key-pair for a period
of time.
2025-07-06 21:11:26 -07:00
Prakhar Pratyush
86e771c982 test_classes: Use "pk" instead of "id" for primary key lookup.
Prep commit to use "pk" to get the primary keys instead of
hardcoded "id" as we plan to introduce a model with `device_id`
as the primary key name.
2025-07-06 21:07:27 -07:00
Prakhar Pratyush
0c3e0f19d2 test_event_system: Fix ordering of giphy in sorted expected_counts. 2025-07-06 21:07:27 -07:00
Saubhagya Patel
acc889ae9b css: Fix channel privacy icon gap in first stream created modal.
In the first stream created modal, a channel privacy icon
is displayed alongside the channel name. At different font sizes,
the gap between the icon and the channel name was inconsistent.
This commit fixes the above issue.
2025-07-06 16:06:42 -07:00
Saubhagya Patel
e3e322422c css: Align channel privacy icons in Personal settings > Notifications.
This commit aligns the channel privacy icons displayed for
channels with custom notifications in the notifications table
in Personal settings.
2025-07-06 16:06:42 -07:00
Maneesh Shukla
69d3900cd3 x-icon: Fix alignment of x-icon in user group subgroup. 2025-07-06 15:12:41 -07:00
Rohan Gudimetla
a3e7ef8e71 left_sidebar: Add navigation option to go to top unread topic.
This commit adds option in personal settings to allow
navigation of channel links in left sidebar to the top
unread topic in that channel.

In cases of no unread messages in unmuted topics of the channel,
it falls back to the top topic of channel.

Fixes #35066
2025-07-03 18:14:10 -07:00
Tim Abbott
35bc9d37f1 search_pill: Move user_pill_operators to top of file. 2025-07-03 15:21:53 -07:00
Evy Kassirer
0e86b01c5b search_suggestion: Move search description html into helper function.
This will be used elsewhere in upcoming commits.
2025-07-03 15:20:17 -07:00
Evy Kassirer
a35f166fac search: Use zrequire instead of mockesm for search_suggestion in tests.
Soon search_suggestion will be used more in unit tests.
2025-07-03 15:19:37 -07:00
Evy Kassirer
20722cea89 typeahead: Rename highlighter_html to item_html.
We no longer do any highlighting so it doesn't make sense to call
it that anymore.
2025-07-03 14:44:13 -07:00
Evy Kassirer
7e951b5249 search: Remove highlighting in search typeahead.
Context: https://chat.zulip.org/#narrow/channel/101-design/topic/search.20typeahead.20highlighting/near/2188093
2025-07-03 14:43:01 -07:00
PieterCK
75f2e27500 url_encoding: Refactor a encode_user_full_name_and_id.
This refactors out a function that encode user name and user id into URL
compatible format.
2025-07-03 14:40:49 -07:00
PieterCK
29d42ab6ad url_encoding: Refactor a encode_user_ids.
This refactors out a function to encode the user ids into URL compatible
format. Previously we use the "-pm" decorator to encode user ids for
group direct messages. That decoration tag is not valid, so this also
updates some existing test cases.
2025-07-03 14:40:49 -07:00
PieterCK
48e33eed31 url_encoding: Standardize to use encode_hash_component.
Previously we use `hash_util_encode` to encode channel and topic names
to be URL compatible. This uses the more capable `encode_hash_component`
from the recently added `topic_link_utils.py` module. It also moves the
function to `url_encoding.py`
2025-07-03 14:40:49 -07:00
PieterCK
c460dc3c9c url_encoding: Update encode_stream -> encode_channel. 2025-07-03 14:40:49 -07:00
Maneesh Shukla
ec60c8a70c x-buttons: Replace "Remove" and "Unsubscribe" buttons with x icons in tables.
This commit removes the "Remove" and "Unsubscribe" action buttons from
various tables and replaces them with icon buttons using the "close"
icon.

Additionally, previously the rows with and without a remove button had
different heights. This commit updates the fixed `px` values to `em`
units to ensure equal height for all rows, regardless of whether a
remove-subscription button is present.

Fixes: #34874.
2025-07-03 14:37:00 -07:00
Sayam Samal
0fe4b6b317 settings: Scale margin of input groups with font size.
This commit adjusts the margin of input groups in settings pages to
relative `em` units to ensure that the spacing scales to accommodate
different font sizes.
2025-07-03 12:00:33 -07:00
Sayam Samal
49332fb528 modals: Use relative em units for padding to scale UI with font size.
This commit modifies the modal styles to use relative `em` units for
padding instead of fixed pixel values, allowing the modal to scale
better with different font sizes.
2025-07-03 12:00:33 -07:00
Sayam Samal
22c913cc9e modals: Set modal content font size and line height to user set values.
This commit sets the font size and line height of modal content to match
the user's base font size and line height settings and updates the modal
title font size accordingly.
2025-07-03 12:00:33 -07:00
Sayam Samal
114673991e css: Replace "i" tag with ".zulip-icon-more-vertical" selector class.
Since CSS selectors are matched by browser engines from right to left,
this commit optimizes the selector to be more specific by replacing the
generic "i" tag with the more specific ".zulip-icon-more-vertical"
class selector.
2025-07-03 11:45:35 -07:00
Sayam Samal
3b0115dce7 inputs: Rename input.hbs partial block to input_wrapper.hbs. 2025-07-03 11:45:35 -07:00
Sayam Samal
2df8ee43cf left_sidebar: Align filter inputs with preexisting left sidebar grids.
This commit acts as a follow-up commit to the previous three commits
implementing the redesigned filter input in the left sidebar. This
makes some structural changes to the channel/topic/dm headers, and
aligns to filter inputs to the predefined grid lines in the left sidebar
to ensure good visual flow.

Fixes #34476.
2025-07-03 11:45:35 -07:00
Sayam Samal
82edac0166 left_sidebar: Standardize DM list filter input.
This follow-up commit replaces the current left sidebar DM list
filter input implementation with the redesigned input component.

Fixes part of #34476.
2025-07-03 11:45:35 -07:00