Commit Graph

64427 Commits

Author SHA1 Message Date
Aman Agrawal
82ec451a19 topic_list: Rename function to specify where it works.
This function only works to scroll topic in left sidebar.
2025-04-24 16:22:13 -07:00
Sayam Samal
6f672298b2 banners: Improve banner layout dimensions.
This commit makes some fine adjustments to the layout of the banners,
- The padding of the banner label is adjusted such that the height of
  the banner label is equal to the height of the banner action button.
  This ensures that these banner children elements are vertically
  aligned while allowing for multi-line banner labels.
- Removes the extra margin used previously for aligning the banner
  action buttons.
- The padding of the banner close button is also adjusted to match the
  height of the banner, as a result of the other padding adjustments.
2025-04-24 16:06:00 -07:00
okGus
e45fec9395
rest_api: Add logging for use of the deprecated method parameter.
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-10.0, 10.0 Version Upgrade, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
This will help audit the usage of this legacy feature.

Fixes part of #1403.
2025-04-24 13:10:52 -07:00
Karl Stolley
1e61ec00b7 left_sidebar: Align muted unreads with correct em value.
Fixes: #34472
2025-04-24 12:25:04 -07:00
bedo
da8428c133 mention: Add sender_can_mention_group & clean up comments. 2025-04-24 12:21:31 -07:00
bedo
215cc632bc mention: Skip fetching group membership for silent-mentioned groups.
Fixes: #32934

Follow up to PR zulip#33097

Also add test cases to make sure a silent mention alone doesn't fetch
group membership, but non-silent mention does and always takes precedence.
2025-04-24 12:21:31 -07:00
Sahil Batra
53cdfddf5b groups-ui: Add option to copy membership from group.
Instead of adding group as a subgroup, we now provide option
to add direct members and direct subgroups of a group to a
user group by providing an expand button in the group pill.

Fixes #32335.
2025-04-24 11:36:49 -07:00
Sahil Batra
592ee2de1c groups-ui: Fix order of members typeahead.
We previously showed "Everyone except guests" group at the
top for group members and stream subscribers typeahead. It
makes sense for stream subscribers typeahead but not for
group members typeahead, so this commit fixes that.
2025-04-24 11:36:49 -07:00
Sahil Batra
b63b484f8d typeahead_helper: Rename functions used for sorting.
d11537a8cd modified how we sort options in typeahead for stream
subscribers and group members. The function names added in that
commit were confusing since the names included "settings" when
the function is used to sort the typehead for adding and updating
stream subscribers and group members. This commit fixes the names
of these functions.

This commit also renames sort_setting_options since that function
is now used for adding and updating stream subscribers and group
members apart from being used for sorting typeahead for group
settings.
2025-04-24 11:36:49 -07:00
Sahil Batra
9ebc877bbe pill_typeahead: Refactor code for set_up_combined.
Since set_up_combined was only being called with
is_stream_subscriber_input as true, there is no
need to have this variable in opts as we use same
sorting function for all the cases.
2025-04-24 11:36:49 -07:00
Karl Stolley
bd4d172408 dev_docs: Better present images in tables. 2025-04-24 11:23:38 -07:00
Lauryn Menard
79061c08d2 demo-orgs: Disable invite user modal before owner sets email.
Until the owner of a demo organization sets an email, the submit
button on the invite user modal is now disabled.

The input div for email addresses is also disabled, which wasn't
disabled before because it's not an input element on the form.
2025-04-24 09:48:38 -07:00
Lauryn Menard
9a2f4c7e15 demo-orgs: Hide setup tips in invite modal if email not set.
In the invite users modal, if the demo organization owner hasn't
yet added an email to their account, hide the banners with tips
for setting up organization information before inviting users.
2025-04-24 09:48:38 -07:00
Aman Agrawal
9d3279caf4 models: Add request_timestamp field to ScheduledMessage table.
This just records the time when the user created the
request to schedule a message or set a reminder.

This would be unused but is future-proofing against a world
where we decide to edit the strings or UI to show when you
asked for the thing.
2025-04-24 09:43:58 -07:00
Mohammad Reza Kianifar
7907c5f846 refactor: Rename huddle to direct_message_group in email templates.
The huddle database table was renamed to direct_message_group.
This commit updates all references to huddle in the missed_message
email templates and locale files.
2025-04-23 17:45:03 -07:00
Alex Vandiver
49d2c1010a thumbnail: Add a tool to re-thumbnail spinners, or process old images. 2025-04-23 17:41:51 -07:00
Tim Abbott
4bab0538fd attachments: Use early return and improve comments. 2025-04-23 17:34:09 -07:00
Alex Vandiver
eae18738a6 signup: Add optional Altcha to realm registration. 2025-04-23 17:18:40 -07:00
Karl Stolley
f434c9d913 dev_docs: Add instructions for preparing icon files. 2025-04-23 17:06:35 -07:00
Karl Stolley
025ead514b dev_docs: Finesse language on icons guidance. 2025-04-23 17:06:35 -07:00
Shubham Padia
700da670cf attachments: Allow seeing attachments to users with content access.
Fixes https://chat.zulip.org/#narrow/channel/9-issues/topic/Can't.20view.20images.20in.20private.20channel.2E
2025-04-23 12:43:54 -07:00
Shubham Padia
6baa106460 test_subs: Add check_subscription_exists helper.
Fetching a subscription and then checking if it exists was taking too
much space in a test and making it feel convoluted. We're planning to
check it more in future commits.
2025-04-23 12:43:54 -07:00
Shubham Padia
ca50b5dac7 attachments: Do not fetch complete owner object.
We just need to compare the user profile id and the owner id, we will
save 1 query call this way.
2025-04-23 12:43:54 -07:00
Karl Stolley
a7996c1bd6 thumbnails: Remove right-to-left rules obviated by flexbox. 2025-04-23 10:53:05 -07:00
Karl Stolley
bcddd71cca thumbnails: Add minimal flexbox definition. 2025-04-23 10:53:05 -07:00
Karl Stolley
ad75ab590a thumbnails: Structure adjacent images into galleries. 2025-04-23 10:53:05 -07:00
Lauryn Menard
4d1bfe6537 demo-orgs: Disable corporate upgrade and sponsorship pages.
Use a shared error template for demo organizations when rendering
the upgrade or sponsorship pages.

Demo organizations must be converted into a permanent organization,
i.e., not be automatically scheduled for deletion, to either apply
for a sponsorship/discount or upgrade to a paid plan.
2025-04-23 09:23:24 -07:00
Niloth P
14173b757f github webhook: Support all actions on discussion events.
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-10.0, 10.0 Version Upgrade, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
Previously, only the action value `created` was supported.
Now, all 16 are supported.

Fixes: #26064.
2025-04-22 13:20:14 -07:00
Karl Stolley
75ed0c9383 compose: Preserve decorated-stream layout in picker.
In addition to preserving the space between the icon and
stream name, this also moves the ellipsis to the DOM node
for the channel name itself.
2025-04-22 11:26:12 -07:00
Karl Stolley
d5822a04be decorated_channels: Present names in DOM nodes. 2025-04-22 11:26:12 -07:00
Karl Stolley
3671a6a39c decorated_channels: Rename privacy-icon class. 2025-04-22 11:26:12 -07:00
Karl Stolley
1c55004cda decorated_channels: Rename partial as 'decorated_channel'. 2025-04-22 11:26:12 -07:00
Shubham Padia
b8ba174455 users: Return true for admins for is_moderator.
This change is for consistency with how is_admin works.

API design discussion at https://chat.zulip.org/#narrow/channel/378-api-design/topic/Should.20is_moderator.20have.20admins
2025-04-22 11:24:49 -07:00
Shubham Padia
50fbaa4da6 popover_menus_data: Remove unused is_moderator from topic context. 2025-04-22 11:24:49 -07:00
Prakhar Pratyush
ccc82976dc unread_data: Ensure deterministic ordering of unread message rows.
Earlier, in `get_raw_unread_data` the ordering was applied inside
the CTE.

Once we leave the CTE scope and do a join, SQL makes no promise
about preserving the row order unless we re-specify ORDER BY in
the outer query.

Since, there was no ORDER BY clause in the outer query it was
resulting in a random ordering of the entries. This bug was caught
by `test_unreads_case_insensitive_topics` failing in a flaky way.

This commit fixes the bug.
2025-04-22 10:36:59 -07:00
Alex Vandiver
6b3143d7fc send_email: Add a flag to force all emails through the queue.
Sending emails synchronously is useful because it reports
configuration errors -- but it also means that occasional failures can
result in ugly 500's, since those don't retry.

Add a setting which forces all email to go through the `emil_senders`
queue, so it can be retried as needed.
2025-04-22 10:26:25 -07:00
Saubhagya Patel
9f1744511b css: Remove .thinner class from Settings.
This commit removes the `.thinner` class from the
"Play animated images" setting in Preferences > Information,
and from the "Home view" setting in Preferences > Navigation.
The `.setting-next-is-related` class, used in combination with
the `.thinner` class, is also removed as it is not needed.
We no longer use the `.thinner` class.
2025-04-22 09:33:59 -07:00
Lauryn Menard
19f60b203d api-docs: Add note about realm being present in fetch_event_types.
Adds "Present if realm is present in fetch_event_types" to the
fields in the POST /register response that are added to the state
data via fetch_initial_state_data in the if block for "realm".
2025-04-21 14:58:26 -07:00
Ines Falcato
8d96b7879f keyboard_UI: Allow use of e hotkey for spectators.
Previously, when in anonymous login, pressing the "view original
message" button showed the original message and allowed copying it.
However, the corresponding keyboard shortcut ('e') did not work as
expected and a login pop-up appeared instead.

Now, by fixing the UI features' permissions for anonymous users, by
adding "edit_message" as a feature they can perform, they are allowed
to use the 'e' keyboard shortcut as intended.

Fixes #33838
2025-04-21 14:36:10 -07:00
apoorvapendse
18fdbc1519 message_header: Use topic permalink.
Fixes:
https://chat.zulip.org/#narrow/channel/137-feedback/topic/star.20topics/near/2154280.
2025-04-21 12:08:37 -07:00
apoorvapendse
1285151be8 compose_validate: Show disabled save tooltip when message is long.
Fixes:
https://chat.zulip.org/#narrow/channel/101-design/topic/validation.20tooltip.20in.20message.20edit.20same.20as.20compose.3F/near/2149696.
2025-04-21 12:07:45 -07:00
Lauryn Menard
cb3dc88dcf corporate: Show "Fixed" as rate for fixed-rate plans in activity charts. 2025-04-21 11:18:40 -07:00
Karl Stolley
3767c2d98e corporate: Update GetApp, Capterra badges. 2025-04-20 07:43:27 -07:00
Prakhar Pratyush
bf95e9bcae test_push_notifications: Split HandlePushNotificationTest to a new file.
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-10.0, 10.0 Version Upgrade, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
This commit moves `HandlePushNotificationTest` to a new
`test_handle_push_notification.py` file.

It helps in making it easier to work with `test_push_notifications.py`
which was 4000+ lines of code.
2025-04-17 10:55:05 -07:00
Prakhar Pratyush
f98c36210a test_push_notifications: Move PushNotificationTest to test_classes.py.
This is a prep commit which moves the `PushNotificationTest` class
from `test_push_notifications.py` to `test_classes.py` as we plan to
import it and reuse it in other files.

This commit also renames `PushNotificationTest` to
`PushNotificationTestCase` to align with our naming convention
in `test_classes.py` to name classes, which act as a parent class
with helper methods and no actual test within itself, with a
"TestCase" suffix.
2025-04-17 10:55:05 -07:00
Prakhar Pratyush
644efeaa14 test_push_notifications: Rename TestPushApi and it's test methods.
`TestPushApi` was not a great name to reflect what it specifically
tests.

Renamed it to `TestAddRemoveDeviceTokenAPI`. It's test methods
are also renamed for clarity.
2025-04-17 10:55:05 -07:00
Prakhar Pratyush
393423c3a0 test_push_notifications: Split AnalyticsBouncerTest to a separate file.
This commit moves `AnalyticsBouncerTest` to a new
`test_zilencer_analytics.py` file.

It helps in making it easier to work with `test_push_notifications.py`
which was 5000+ lines of code.
2025-04-17 10:55:05 -07:00
Lauryn Menard
b074288bac upgrade: Remove demo_organization_scheduled_deletion_date page param.
The demo_organization_scheduled_deletion_date has never been used
on the upgrade page, and currently raises a Zod error as what is
being sent for the value of that page param is a datetime object,
and not the datetime object converted to an integer.

We really only need the boolean value that checks if the demo
organization scheduled deletion date is not None for the upgrade
page logic, which is set in the context dict for that page, but
not in the page params.
2025-04-17 10:49:02 -07:00
Lauryn Menard
f511383c3d banner-links: Remove underline from links in navbar banners.
Updates the "banner-link" class, which is currently only used
in the demo organization deletion info banner so that the link
text is not underlined when the user is not hovering over the
link text.
2025-04-17 10:48:33 -07:00
Lauryn Menard
7e1625d58b showroom-banners: Update desktop notifications banner text.
Updates the desktop notificaiton banner example in the devtools
showroom for the banner redesign to have the current banner text
that's used in navbar alert.
2025-04-17 10:48:33 -07:00