Text shown for empty left and right panels in stream and group
settings UI was too faded in light theme, so we make the text
a little darker.
Fixes#32212.
All integrations currently use their name as their client name as
well. Removed the redundancy of declaring the same name twice, while
retaining the support for client names.
Adds ability to configure a fixed-price plan and to delete a
configured fixed-price plan in the Cloud support view.
Updates the invoice processing to send reminder emails to the
billing support email for these Cloud fixed-price plans about
renewals since we now are able to configure them via our support
panel.
Updates function to get the billing session for stripe webhook
events to handle an intial upgrade for a custom generated invoice
for a fixed-price plan for a Cloud organization, which won't have
a user_id in the invoice metadata.
This check made sense before the support view expanded with the
billing system work over this past year. As we continue to expand
the actions/features of the support views, it's likely we'll have
cases where we're passing more values for particular features.
Prep for implementing fixed-price plan offers in Cloud support view.
Many of the templates for the remote and Cloud support views are
designed to be shared, but some features/actions have not yet been
implemented for both types of support views.
Adds a remote_support_view boolean to each type of support view
context so that it's easy to add checks to existing templates.
Updates the Cloud support view to use the current_plan_forms_support
template, and fixes existing bug of offering the upgrade to Plus
option for modifying a Cloud plan when the current plan is a
fixed-price plan.
Prep for implementing fixed-price plan offers in Cloud support view.
This commit allows users to be assigned to custom groups when
inviting them to join Zulip, similar to how channels are handled.
The implementation follows a similar pattern for adding pills,
ensuring consistency, as user groups and channels are parallel
in nature.
Fixes#24365.
THere's only one call to this function, which should have
a defined `sub`, so we can enforce this through typescript
instead of doing an `undefined` check.
After #28478 we no longer change the name when deactivating a channel,
so this is particularly needed - now there's always a "collision" on
new_name.
Also fixes a second detail - the name should be matched
case-insensitively.
Default to "Move only this message" select option if the message is in
any sort of search view, because the search view by its construction
doesn't guarantee to show all/later messages in the relevant topic.
Fixes#32106.
This helper function is only ever used to describe the current view,
so it might as well be in the module for such views.
Also added the test coverage for "is_search_view".
This first call was added in this commit:
41afdc6526
At the time of this commit, the second call was already there.
When removing this line in this commit, it seems like the
earlier reported bug isn't present. So we can remove it, to avoid
doing extra work when sending a message.
This timeout needs to be short enough that we don't drop the RabbitMQ
connection. Also drop the offending message (by returning with no
further exception) so we don't hit a head-of-queue failure situation.
Ideally, the parser would just be lightning-fast, so this would never
happen.