Commit Graph

52959 Commits

Author SHA1 Message Date
Lauryn Menard 6a36340ac7 demo-orgs: Hide change password field if email not configured.
Because demo organization owners do not initially have an email
set, some of the personal and organization settings in the web-app
UI should be disabled/hidden until the owner configures an email
address for their account.

Updates showing the password change field in the account & privacy
tab of the personal settings overlay to check if the user's email
being configured (to cover the demo organization case) and if the
organization has enabled password authorization.
2023-08-31 15:02:16 -07:00
Lauryn Menard fd45350532 settings-data: Add `user_email_not_configured` check.
Since an email address is not required to create a demo organization,
we need to disable some parts of the web-app UI until the owner of
the demo organization configures an email address for their account.

Addd `user_email_not_configured` check to `settings_data.ts` so
that we can check in various modules if the user is a demo
organization owner who has not configured an email address yet.

This adds `delivery_email` to `page_params.ts`. Also, adjusts the
`muted_users` in the list of page params so that the list is sorted
alphabetically.
2023-08-31 15:02:16 -07:00
Lauryn Menard a9eb70ac68 demo-orgs: Set owner `email_address_visibility` on account creation.
Since an email address is not required to create a demo organization,
we need a Zulip API email address for the web-app to use until the
owner configures an email for their account.

Here, we set the owner's `email_address_visibility` to "Nobody" when
the owner's account is created so that the Zulip API email field in
their profile is a fake email address string.
2023-08-31 15:02:16 -07:00
Eeshan Garg 5e33ae8adf demo-orgs: Create dev environment demo organization without email.
To make creation of demo organizations feel lightweight for users,
we do not want to require an email address at sign-up. Instead an
empty string will used for the new realm owner's email. Currently
implements that for new demo organizations in the development
environment.

Because the user's email address does not exist, we don't enqueue
any of the welcome emails upon account/realm creation, and we
don't create/send new login emails.

This is a part of #19523.

Co-authored by: Tim Abbott <tabbott@zulip.com>
Co-authored by: Lauryn Menard <lauryn@zulip.com>
2023-08-31 15:02:16 -07:00
Anders Kaseorg dacb5c89af remind_me_popover_content: Remove unused template.
It’s unused since commit eb45925b1a
(#23665), and the entire reminder feature was removed in commit
f40855bad2 (#25318).

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-31 14:59:39 -07:00
Anders Kaseorg eaffbeaf35 non_editable_user_groups: Remove unused template.
It was added by commit c53458c9c0
(#8806) and never used.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-31 14:59:39 -07:00
Anders Kaseorg 6758d8ad12 settings/dropdown_list: Remove unused template.
It’s unused since commit 875d564f2d
(#26291).

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-31 14:59:39 -07:00
Anders Kaseorg de7af60e29 actions_popover_template: Remove unused template.
It’s unused since commit eb45925b1a
(#23665).

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-31 14:59:39 -07:00
Anders Kaseorg 38e7a85e90 colorspace: Remove unused module.
It’s unused since commit 7e473003a6
(#23782).

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-31 14:59:39 -07:00
Lauryn Menard ebfe9637c8 subscribe-unsubscribe: Improve error response for unexpected users.
Updates the API error response when there is an unknown or
deactivated user in the `principals` parameter for either the
`/api/subscribe` or `/api/unsubscribe` endpoints. We now use
the `access_user_by_email` and `access_user_by_id` code paths,
which return an HTTP response of 400 and a "BAD_REQUEST" code.

Previously, an HTTP response of 403 was returned with a special
"UNAUTHORIZED_PRINCIPAL" code in the error response. This code
was not documented in the API documentation and is removed as
a potential JsonableError code with these changes.

Fixes #26593.
2023-08-31 13:48:39 -07:00
Lalit Kumar Singh cfe2ddb091 ui_report: Reuse `channel.xhr_error_message` function in `error` method.
We should reuse the `channel.xhr_error_message` in `ui_report` to reduce
code duplication.

Also, I changed the type of `message` parameter to `string` instead of
`string | null` so that we do not need to alter the types of the functions
that depends on the return value of `xhr_error_message`.
2023-08-31 13:47:16 -07:00
Karl Stolley 2e07c03968 settings: Align notification play button in a flex layout.
This allows the select to flex, keeping the buttons position on
screen even at mobile-scale viewports.

While other most other controls are currently not so responsive,
this might provide some direction (along with a TODO) on how to
go about moving controls in that direction.

Fixes: #26563
2023-08-31 12:06:32 -07:00
Karl Stolley 8b81f2c92c settings: Match notification sound for attribute to ID. 2023-08-31 12:06:32 -07:00
Prakhar Pratyush 43009f7885 icons: Fix the 'Unmute' topic icon.
Earlier, the icon had an unwanted line visible in a few browsers.

Replaced it with a new SVG.
2023-08-31 12:02:07 -07:00
David Rosa 8e2820406e widgets: Rename confusing identifier in `tabbed_instructions.ts`.
Renames misleading identifier using `codeSection` to refer to both
language toggles in API docs and app toggles in help center docs.
2023-08-31 11:55:28 -07:00
David Rosa 4b8c99b01a widgets: Rename confusing attribute name in `tabbed_sections.py`.
Renames misleading attribute in HTML template using `code-section`
to refer to both language toggles in API docs and app toggles in
help center docs.
2023-08-31 11:55:28 -07:00
David Rosa 6e647f12bd widgets: Rename confusing variable/function names in `help.js`.
Renames misleading variable and function names using `code_section`
to refer to both language toggles in API docs and app toggles in
help center docs.
2023-08-31 11:55:28 -07:00
Lauryn Menard a5be9b5463 api-docs: Update feature level 205 changelog entry and changes notes.
Updates API changelog entries for feature level 205 for minor
revisions and the addition of help center links. Also, revises
the Changes notes for the stream creation and deletion events
for the same feature level.
2023-08-31 11:54:21 -07:00
Alex Vandiver 2612a3b657 requirements: Downgrade orjson to 3.9.2.
orjson 3.9.3 introduced a crash (ijl/orjson#415) -- revert to the last
version before the bug.
2023-08-31 10:13:10 -07:00
Satyam Bansal 52e2298d65 api-docs: Clarify name field in realm_incoming_webhook_bots object. 2023-08-30 15:54:13 -07:00
Satyam Bansal d8998ab040 events: Add display name and event types to realm_incoming_webhook_bots. 2023-08-30 15:54:13 -07:00
Satyam Bansal 2370372705 integrations: Extract integration event types returning function. 2023-08-30 15:54:13 -07:00
Lauryn Menard 38ba97c1ac api-docs: Adds a Changes note for `is_owner` in register response.
Adds a feature level 11 note to the `is_owner` field in the
`POST /register` response and revises the changelog entry
for the same.
2023-08-30 15:50:28 -07:00
Lauryn Menard 5fdf7758d3 api-docs: Fix wrong feature level for /api/get-subscription-status.
Commit 8c39ddfd28 was when the endpoint was added with the wrong
feature level in the Changes note.
2023-08-30 15:50:28 -07:00
Lauryn Menard d744467231 api-changelog: Fix formatting for endpoints. 2023-08-30 15:50:28 -07:00
Lauryn Menard e02cde49e8 api-docs: Update API changelog for direct vs private messages.
Updates the one last remaining reference to private messages in
the API changelog in the feature level 11 entry. Also, revises
that entry to be slightly more specific.
2023-08-30 15:50:28 -07:00
Signior-X 3392be5688 user docs: Convert browser scrollbar overflow from .markdown to html.
Remove overflow: hidden from the body and overflow: auto from the
.markdown element. Adjust the scroll-margin-top on the heading
elements so that using the hash, the page opens at perfect
location. Add position: fixed to .sidebar so that it does not scroll
with the content.

For the mobile view, change the .sidebar right from 100vw to 100%.

Also change how the hamburger menu changes its position: use right
instead of left as that works better than translate combined with
left.
2023-08-30 15:34:34 -07:00
Signior-X f63c1fa639 user docs: Remove right SimpleBar from help and API documentation.
Remove the SimpleBar from the content on /help, /api, and /policies in
favor of the default browser scrollbar.

Fixes #10732.
2023-08-30 15:34:34 -07:00
Karl Stolley 50d8e789cb compose: Prevent undesired link-pasting behavior.
This commit checks for two edge cases where the paste-URL logic
should not apply:

1. On text selections likely already in or adjacent to Markdown
   link syntax
2. Over top of existing links
2023-08-30 15:33:28 -07:00
David Rosa 9ff4e8b82b help: Add mobile instructions to "Create a stream". 2023-08-30 15:32:24 -07:00
David Rosa 0635b89415 help: Update "Create a stream".
- Updates Desktop/Web instructions to follow current help center
  documentation patterns.
- Moves instructions to a Markdown include-block.
2023-08-30 15:32:24 -07:00
Karl Stolley a1a8afa2f7 css_grid: Defensively prevent blowouts by using minmax().
This improves upon a change introduced in #26279. But rather than
setting an `overflow` value, this uses `minmax()` with a 0 minimum
value--pushing back against the default grid minimum column value
of `auto`. The `auto` value will always try to fit the content
into the grid, even if that means wreaking havoc on the grid as
defined.
2023-08-30 15:30:40 -07:00
Alex Vandiver f8636e7d2b iptables: Stop logging on dropped packets.
We never examine these logs, and it fills dmesg.  We have flow logging at the AWS stack layer.
2023-08-30 15:29:01 -07:00
Anders Kaseorg 792a44b382 push_notifications: Fix logging.exception misuse.
logging.exception should only be called from an exception handler.
https://docs.python.org/3/library/logging.html#logging.exception

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-30 12:45:45 -07:00
Anders Kaseorg e1ea737ee2 version: Add missing PROVISION_VERSION bump for greenlet upgrade.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-08-30 12:17:36 -07:00
Alex Vandiver 2e760f18ac requirements: Use greenlet>=3.0.0a1 to fix uwsgi segfault.
Pull in the fix for python-greenlet/greenlet#330.
2023-08-30 11:58:30 -07:00
Alex Vandiver 7787fe3f49 push_notifications: Send all APNS devices in parallel.
Instead of starting up one event loop for every device send, use
asyncio.gather to send to all of a user's devices at once.
2023-08-30 11:56:52 -07:00
Alex Vandiver 69825cd54c push_notifications: Drop error messages from failure to send.
We handle, and possibly log, these errors ourselves.
2023-08-30 11:56:52 -07:00
Alex Vandiver 733c6da298 push_notifications: Upgrade aioapns. 2023-08-30 11:56:52 -07:00
Alex Vandiver 168e1d5f85 send_email: Provide the realm and string_id, for ease of "if" logic. 2023-08-30 11:54:28 -07:00
Alex Vandiver c2c67a7640 send_email: Broaden type of context dict.
jinja2 can take objects and other data structures.
2023-08-30 11:54:28 -07:00
David Rosa 38a8c3df17 help: Add mobile instructions to "Unsubscribe from a stream".
- Documents unsubscribing via long-press menu, all streams, and
  stream settings menu.
2023-08-30 11:30:53 -07:00
David Rosa 9e9b1562e5 help: Update "Unsubscribe from a stream".
- Updates Desktop/web instructions to follow current help center
  documentation patterns.
- Adds instructions to unsubscribe from a stream via the stream settings
  panel.
2023-08-30 11:30:53 -07:00
Akshat 3977514dec fenced_code: Enable code-highlighting without language markers.
The 'startinline' option is utilized in the `CodeHilite` instantiation
to indicate that the provided PHP code snippet should be highlighted
even if it doesn't start with the opening tag or marker of the
associated programming language (which will rarely be the case in
Zulip, since one discusses a section of a file much more often than a
whole file).

Fixes: https://chat.zulip.org/#narrow/stream/137-feedback/topic/php.20syntax.20highlighting.20should.20not.20require.20.60.3C.3Fphp.60.

Signed-off-by: Akshat <akshat25iiit@gmail.com>
2023-08-29 18:16:11 -07:00
Daniil Fadeev 198ef43ced left_sidebar: Fix the layout for filter names that are long. 2023-08-29 17:28:05 -07:00
Karl Stolley efa3c4a2c6 scroll: Correct element checks before activation. 2023-08-29 17:25:41 -07:00
Alex Vandiver 110677d441 corporate: We have switched to DMs, from PMs. 2023-08-29 17:13:10 -07:00
Prakhar Pratyush 46446d0e1d test_push_notifications: Add a test for FOLLOWED_TOPIC_PUSH trigger.
This commit adds a test to verify the payload
'get_message_payload_apns' returns when the notification trigger is
'NotificationTriggers.FOLLOWED_TOPIC_PUSH'.
2023-08-29 17:12:21 -07:00
Prakhar Pratyush 6dc3b1a052 push_notifications: Return a common subtitle for wildcard mentions.
This commit updates the 'get_apns_alert_subtitle' function to
return a common subtitle, i.e., "{full_name} mentioned everyone:"
for wildcard mentions.

The triggers for the stream or topic wildcard mentions include:
* NotificationTriggers.TOPIC_WILDCARD_MENTION_IN_FOLLOWED_TOPIC
* NotificationTriggers.STREAM_WILDCARD_MENTION_IN_FOLLOWED_TOPIC
* NotificationTriggers.TOPIC_WILDCARD_MENTION
* NotificationTriggers.STREAM_WILDCARD_MENTION
2023-08-29 17:12:21 -07:00
Prakhar Pratyush e2c9b283f3 get_apns_alert_subtitle: Remove the stale 'user_profile' parameter.
This commit removes the 'user_profile' parameter that wasn't
getting used.

This should have been removed in ce6f6a3.
2023-08-29 17:12:21 -07:00