Commit Graph

4889 Commits

Author SHA1 Message Date
Sahil Batra c27ff12b8c user_groups: Update ID of overlay container element.
This commit renames ID of the container element of group
settings overlay to group_overlay_container. We also
rename the variables used for this element. This makes
it consistent with the container element of settings overlay.
2023-04-18 08:53:08 -07:00
Sahil Batra a5580264eb stream_settings: Update ID of overlay container element.
This commit renames ID of the container element of stream
settings overlay to streams_overlay_container. This makes
it consistent with the container element of settings overlay.
2023-04-18 08:53:08 -07:00
Aman Agrawal 043d54d170 scheduled_messages: Add overlay to display and edit them.
Fixes #20971
2023-04-17 16:59:25 -07:00
Lauryn Menard c8a4b401c7 unsubscribe-success: Update template for org name and welcome emails.
Because unsubscribing from welcome emails cannot be undone, it is
confusing that the unsubscribe success page suggests that the user
can. Makes the second sentence about undoing the unsubscribe action
conditional on the `subscription_type` not being "welcome".

Updates the first sentence to specifically note the Zulip realm
that has been updated for the unsubscribe action so that it is
clear for which Zulip organization the user's settings have been
updated/changed, since the user might have accounts with various
Zulip organizations (via Zulip Cloud or self-hosted servers) that
use the same email account.
2023-04-17 12:58:32 -07:00
Alex Vandiver 1833afee6a js: Enable cross-origin error debugging with crossorigin="anonymous".
If the script comes from a different origin than the requesting page,
and is not marked `crossorigin="anonymous"`, the `window.onerror`
handler receives no information other than "Script error." in the
event of a runtime error.

This effectively silences blueslip errors in development if the user
is developing on a remote host (such as a DigitalOcean droplet), since
static resources are served from `hostname.zulipdev.org`, and the
realm is served from `realmname.hostname.zulipdev.org`.  It also
silenced blueslip reporting in production for any non-default (non-"")
realms.  Sentry reporting, Vagrant developments, and truly ancient or
insecure browsers were unaffected.

Add the necessary `crossorigin="anonymous"` attribute to the
`<script>` tag to allow blueslip access to this error information.
2023-04-13 14:59:58 -07:00
Daniil Fadeev 40f0663d9d emails: Fix background-color styling.
This issue was introduced after we changed the library we use for
inlining CSS into email HTML. For some reason, the styles in
email.css were not applied earlier but were applied after we
migrated to css-inline. With this commit, we have fixed the
regression in background-color of email body.

Fixes #25083.
2023-04-12 15:48:32 -07:00
Daniil Fadeev f5190ea4de emails: Fix footer styling.
This issue was introduced after we changed the library we use for
inlining CSS into email HTML. For some reason, the styles in
email.css were not applied earlier but were applied after we
migrated to css-inline. With this commit, we have fixed the
regression in footer styles.

Fixes part of #25083
2023-04-12 15:48:32 -07:00
Alya Abbott aa65813294 email: Rewrite followup_day2 email.
Keep the focus of the email the same (topics), but improve how
the information is presented.
2023-04-10 17:44:18 -07:00
AcKindle3 ff48f3c489 templates: Use `root_domain_url` Django templates.
Per the issue #25045, this commit changes some occurences of `uri`
appeared in variable `root_domain_uri`. Files affected are some
html files that used this variables and a backend file
`context_processors.py` that set it as a key.
2023-04-10 10:26:48 -07:00
Lauryn Menard f391bfeec6 emails: Add new onboarding email with guide for organization type.
Adds a new welcome email, `onboarding_zulip_guide`, to be sent four
days after a new user registers with a Zulip organization if the
organization has specified a particular organization type that has
a guide in the corporate `/for/.../` pages. If there is no guide,
then no email is scheduled or sent.

The current `for/communities/` page is not very useful for users
who are not organization administrators, so these onboarding guide
emails are further restricted for those organization types to
only go to new users who are invited/registered as admins for the
organzation.

Adds two database queries for new user registrations: one to get
the organization's type and one to create the scheduled email.

Adds two email logs because the email is sent both to a new user
who registers with an existing organization and to the organization
owner when they register a new organization.

Co-authored by: Alya Abbott <alya@zulip.com>
2023-04-10 08:38:09 -07:00
Daniil Fadeev 2f203f4de1 emails: Inline CSS in emails in build_email.
Previously, we had an architecture where CSS inlining for emails was
done at provision time in inline_email_css.py. This was necessary
because the library we were using for this, Premailer, was extremely
slow, and doing the inlining for every outgoing email would have been
prohibitively expensive.

Now that we've migrated to a more modern library that inlines the
small amount of CSS we have into emails nearly instantly, we are able
to remove the complex architecture built to work around Premailer
being slow and just do the CSS inlining as the final step in sending
each individual email.

This has several significant benefits:

* Removes a fiddly provisioning step that made the edit/refresh cycle
  for modifying email templates confusing; there's no longer a CSS
  inlining step that, if you forget to do it, results in your testing a
  stale variant of the email templates.
* Fixes internationalization problems related to translators working
  with pre-CSS-inlined emails, and then Django trying to apply the
  translators to the post-CSS-inlined version.
* Makes the send_custom_email pipeline simpler and easier to improve.

Signed-off-by: Daniil Fadeev <fadeevd@zulip.com>
2023-04-05 12:22:29 -07:00
Anders Kaseorg 52f7eb4463 dependencies: Upgrade JavaScript dependencies.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-04-04 10:54:01 -07:00
Josh Klar ef0c281070 integrations: Add documentation for Mastodon via public RSS feeds.
This uses the Mastodon logo SVG as pulled from
https://blog.joinmastodon.org/logo.svg.
2023-03-30 09:36:16 -07:00
David Rosa 2b9374875d templates: Update text on /accounts/find.
- Being more specific about what the user will get.
- Putting less emphasis on entering multiple emails, since most
  people probably just have one email they need to check.
- Using more intuitive wording and hint that deactivated or
  deleted accounts won't be included.

Fixes: #24890.
2023-03-30 09:06:14 -07:00
Aman Agrawal d564025d6a css: Integrate newly designed header. 2023-03-29 17:59:00 -07:00
Sahil Batra cf8d8db132 register: Update the user-registration form for realm creation.
In previous commits, we updated the realm creation flow to show
the realm name, type and subdomain fields in the first form
when asking for the email of the user. This commit updates the
user registration form to show the already filled realm details
as non-editable text and there is also a button to edit the
realm details before registration.

We also update the sub-heading for user registration form as
mentioned in the issue.

Fixes part of #24307.
2023-03-27 15:44:42 -07:00
Sahil Batra 80b00933b1 templates: Add realm information fields in create_realm.html.
We now show inputs for realm details like name, type and URL
in the create_realm.html template opened for "/new" url and
these information will be stored in PreregistrationRealm
objects in further commits.

We add a new class RealmDetailsForm in forms.py for this
such that it is used as a base class for RealmCreationForm
and we define RealmDetailsForm such that we can use it as
a subclass for RegistrationForm as well to avoid duplication.
2023-03-27 15:44:42 -07:00
Sahil Batra 1874491178 templates: Extract realm creation form html in new template file.
This commit extracts realm creation form html in a new file
realm_creation_form.html as we are reworking the organization
flow as per #24307 and this change would allow us to avoid
duplicating the code.
2023-03-27 15:44:42 -07:00
Sahil Batra 5eeef1483d templates: Rename ID for form element in create_realm.html.
This commit updates the ID for form element in create_realm.html
to "create_realm" as we would need to update the error handling
for this page in further commits and we do not want to break it
for other forms using "send_confirm" as ID.
2023-03-27 15:44:42 -07:00
Alex Vandiver 164d58bec9 web: Save a 301 redirect from /help to /help/. 2023-03-24 14:51:01 -07:00
Alex Vandiver 6f4d22762c web: Save a 301 redirect from /new to /new/. 2023-03-24 14:51:01 -07:00
Alex Vandiver 4b21852e72 web: Save a 301 redirect from /why-zulip to /why-zulip/. 2023-03-24 14:51:01 -07:00
Alex Vandiver 1d428af776 web: Save a 301 redirect from /privacy/ to /policies/privacy. 2023-03-24 14:51:01 -07:00
Alex Vandiver 822683249d web: Save a 301 redirect from /terms/ to /policies/terms. 2023-03-24 14:51:01 -07:00
Alex Vandiver ce847fd09c web: Save two 301 redirects from /terms to /terms/ to /policies/terms. 2023-03-24 14:51:01 -07:00
Alex Vandiver d9daeb13e0 web: Save a needless 301 redirect from /apps to /apps/. 2023-03-24 14:51:01 -07:00
Alex Vandiver a1570ff3dd web: Save a needless 301 redirect from /integrations to /integrations/. 2023-03-24 14:51:01 -07:00
Aman Agrawal 887cacd564 portico-header: Tag all links for translation. 2023-03-24 12:08:49 -07:00
Sahil Batra 627adf8465 create_realm: Tag import string for translation.
The string "Or import from Slack, Mattermost, Gitter, or
Rocket.Chat." in create_realm.html was not tagged for
translation before. This commit fixes it to tag the string
for translation.
2023-03-21 16:34:23 -07:00
Alya Abbott 6585cb0717 portico: Link to new End Point Dev case study. 2023-03-21 16:20:30 -07:00
Alex Vandiver fa6daee4e1 markdown: Fix use of pure_markdown for non-pure markdown rendering.
`render_markdown_path` renders Markdown, and also (since baff121115)
runs Jinja2 on the resulting HTML.

The `pure_markdown` flag was added in 0a99fa2fd6, and did two
things: retried the path directly in the filesystem if it wasn't found
by the Jinja2 resolver, and also skipped the subsequent Jinja2
templating step (regardless of where the content was found).  In this
context, the name `pure_markdown` made some sense.  The only two
callsites were the TOS and privacy policy renders, which might have
had user-supplied arbitrary paths, and we wished to handle absolute
paths in addition to ones inside `templates/`.

Unfortunately, the follow-up of 01bd55bbcb did not refactor the
logic -- it changed it, by making `pure_markdown` only do the former
of the two behaviors.  Passing `pure_markdown=True` after that commit
still caused it to always run Jinja2, but allowed it to look elsewhere
in the filesystem.

This set the stage for calls, such as the one introduced in
dedea23745, which passed both a context for Jinja2, as well as
`pure_markdown=True` implying that Jinja2 was not to be used.

Split the two previous behaviors of the `pure_markdown` flag, and use
pre-existing data to control them, rather than an explicit flag.  For
handling policy information which is stored at an absolute path
outside of the template root, we switch to using the template search
path if and only if the path is relative.  This also closes the
potential inconsistency based on CWD when `pure_markdown=True` was
passed and the path was relative, not absolute.

Decide whether to run Jinja2 based on if a context is passed in at
all.  This restores the behavior in the initial 0a99fa2fd6 where a
call to `rendar_markdown_path` could be made to just render markdown,
and not some other unmentioned and unrelated templating language as
well.
2023-03-17 08:46:25 -07:00
Prakhar Pratyush ae72777c77 user_settings: Automate 'Include realm name in message email subject'.
Currently, there is a checkbox setting for whether to
"Include realm name in subject of message notification emails".

This commit replaces the checkbox setting with a dropdown
having values: Automatic [default], Always, Never.

The Automatic option includes the realm name if, and only if,
there are multiple Zulip realms associated with the user's email.

Tests are added and(or) modified.

Fixes: #19905.
2023-03-14 17:48:57 -07:00
Aman Agrawal dbe930394f footer: Integrate newly designed footer.
This footer was designed and mostly written by @terpimost.

This adds a new design of the footer for both corporate and not
corporate enabled pages.
2023-03-10 17:34:15 -08:00
Lauryn Menard d9d17eb87e help: Add article for supported browsers.
Creates new help article for supported web browsers. Also updates
links in the `/apps` landing page as well as the unsupported-browser
template and the `set-up-your-account` article.

Fixes #14732.
2023-03-07 12:01:48 -08:00
Lauryn Menard 96aca49f9f integrations: Update Asana integration doc to point to Zapier.
Updates the Asana documentation, which was a detailed version
of the Zapier documentation with screenshots specifically for
Asana, to instead start with the basic incoming webhook steps
and then point to the general Zapier documentation to complete
the integration.

This will be easier to maintain moving forward in the short
term as ideally we'll migrate to a system that documents all
of the integrations with Zulip that are available via Zapier.

Also, updates the current Zapier documentation to mention
Asana as one of the apps that can be integrated with Zulip.
2023-03-02 13:51:34 -08:00
Sahil Batra 4e01449cfd register: Rename creating_new_team to creating_new_realm.
This commit renames creating_new_team variable to
creating_new_realm as "realm" seems better to explain
new realm creation than "team".
2023-03-01 12:17:11 -08:00
Anders Kaseorg 738667b39e templates: Convert config errors to HTML.
Markdown and Jinja don’t mix correctly, and templating is not an
appropriate use of Markdown.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-02-28 16:54:15 -08:00
Lauryn Menard 514e5b990e templates: Update `reset_done.html` page text and title.
Updates the text and title used when the password reset done page
to work for situations where the user is resetting a forgotten
password and for situation where the user is setting a password
for the first time (e.g. SSO login, demo organizations).
2023-02-28 11:45:01 -08:00
Lauryn Menard 8eaac945b2 integrations-docs: Fix indentation issues in existing documentation.
Fixes some integrations documentation so that code blocks and
images are rendered in the correct HTML list elements.
2023-02-28 11:31:12 -08:00
Lauryn Menard e39c689f36 email-notifications: Update email subjects with "PM" to "DM".
Updates email notification subjects with "PM" to use "DM" instead.

Also, updates `tools/lib/capitalization.py` to include both "DM"
and "DMs".
2023-02-24 11:47:26 -08:00
Sahil Batra 1ac6a9ac06 register: Allow user to change email_address_visibility during signup.
We now allow user to change email_address_visibility during user
signup and it overrides the realm-level default and also overrides
the setting if user import settings from existing account.
We do not show UI to set email_address_visibility during realm
creation.

Fixes #24310.
2023-02-24 09:23:34 -08:00
Anders Kaseorg ed069ebe0e docs: Remove spaces before commas.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-02-22 17:17:25 -08:00
Alex Vandiver ab9cab51de reset: Tag "forgot password" text for translation. 2023-02-21 09:16:22 -08:00
Alex Vandiver c24bd07b76 templates: Use static() helper to generate /static/ URLs. 2023-02-14 17:17:06 -05:00
Aman Agrawal 4dfe3d36e0 floating_recipient_bar: Replace with sticky header. 2023-02-07 16:25:39 -08:00
Aman Agrawal c3f0d5898a index: Remove `Loading...` text from the app loading overlay.
The new loading spinner animation conveys the message well
that the app is loading and this text is no longer required.
2023-02-03 10:51:39 -08:00
Brijmohan Siyag 6b0265a239
index: Load Zulip logo for loading indicator as inline svg.
Fetching an external SVG doesn't work, since the whole point of this
screen is to be displayed while we're waiting for external resources to load.
2023-02-03 10:48:00 -08:00
Lauryn Menard dbacc00f0f api-docs: Move markdown files to top level directory.
- Updates `.prettierignore` for the new directory.
- Updates any reference to the API documentation directory for
  markdown files to be `api_docs/` instead of `zerver/api/`.
- Removes a reference link from `docs/documentation/api.md` that
  hasn't referenced anything in the text since commit 0542c60.
- Update rendering of API documentation for new directory.
2023-02-02 17:25:40 -08:00
Alya Abbott 27b703f617
emails: Improve followup_day1 (registration confirmation) email.
- Clean up the language.
- Add a prominent "Go to organization" button.
- Link to guides for new users and admins.
- Fix duplication bug in text email version.

Co-authored-by: Mateusz Mandera <mateusz.mandera@zulip.com>
2023-02-02 17:16:43 -08:00
Aman Agrawal c64c00d916 portico_signin: Wrap long email names to next line.
Along with wrapping long emails to next line, set the max-width of
the email confirmation box to the alert box.
2023-02-01 13:14:08 -08:00
Sahil Batra af36e9f823 css: Add "bootstrap-focus-style" class to select elements.
This commit adds "bootstrap-focus-style" class to the select
elements such that we can add CSS rule for focusing a select
element at single place only using this class.
2023-01-26 12:36:31 -08:00
Sahil Batra e14b1f03fa register: Refactor template for new account registration.
This commit refactors the template code for source-realm
select element to have same structure as other inputs
and select element in the page. Thus this change also
makes the styling of source-realm select element consistent
with other select element in the page.
2023-01-26 12:36:31 -08:00
Lauryn Menard dedea23745
help-docs: Move help center documentation to top level directory.
These files are not Jinja2 templates, so there's no reason that they needed
to be inside `templates/zerver`. Moving them to the top level reflects their
importance and also makes it feel nicer to work on editing the help center content, 
without it being unnecessary buried deep in the codebase.
2023-01-25 14:08:29 -08:00
Alex Vandiver 6cf1d9fa20 css: Remove a hardcoded reference to chat.zulip.org. 2023-01-24 17:34:26 -05:00
Aman Agrawal a51bf96c70 accounts_send_confirm: Show email to which the link was sent.
This can be useful for the user in case user is worried if they
typed the correct email.
2023-01-24 11:29:50 -08:00
brijsiyag cb35e5c6fc css: Add spinning animation for pre-CSS app loading page.
Fixes #22265.
2023-01-24 11:05:36 -08:00
David Rosa 256e9651b6 help center: Add section links in "Using Zulip for a class".
Converts the bullets at the top of the page into section links.
2023-01-23 14:23:16 -08:00
David Rosa f1f381dc2c help center: Consistently use bold formatting for icon names.
Fixes formatting of icon names to follow current help center
documentation patterns.
2023-01-23 11:15:51 -08:00
Sahil Batra a05b0b8d23 portico: Remove form-horizontal class from some portico pages.
This commit removes form-horizontal class from password reset
pages (page in which user enters the email and the page where
user sets the new password) and user register page.

We can safely remove the form-horizontal class, since the
vertical-align property is already applied by other CSS
in bootstrap and margin is overridden by CSS in
portico_signin.css.

For checkbox type inputs, the display property is already set
to inline-block by browser for all input elements but it is
eventually computed to "block" since float property for this
element is set to left. So, setting display property is not
necessary for checkbox input.

For the help-inline elements, the display and margin properties
are overridden in portico_signin.css and vertical-align property
is handled by CSS for "help-inline" class in bootstrap.css.
2023-01-19 17:24:14 -08:00
Sahil Batra 3920a73b20 social_auth_select_email: Remove form-horizontal class.
This commit removes form-horizontal class from form elements
in social_auth_select_email.html. There is no visible input
element in the form element so the bootstrap CSS using
"form-horizontal" class does not apply to any of the elments
in the page, so removing this class does not have any affect.

The "form-horizontal" class is used in portico-signin.css for
adding hover behavior, so we add a new class "select-email-form"
and use it to add the hover behavior.
2023-01-19 17:24:14 -08:00
Sahil Batra 90dbc50c8c tos: Remove form-horizontal class from account_accept_terms template.
This commit removes form-horizontal class from account_accept_terms
template. We can safely remove this class because vertical-align
property is already handled for input element by other bootstrap CSS
and margin is overridden by CSS in portico.css. The display property
is already set to inline-block by browser for all input elements
but it is eventually computed to "block" since float property for
this element is set to left.

For the "p" element used to display errors, the display and margin
properties are overridden in portico_signin.css and vertical-align
property is handled by CSS for "help-inline" class in bootstrap.css.
2023-01-19 17:24:14 -08:00
Tim Abbott 38060e1c0a help: Fix broken link on updated SCIM page.
This was introduced in 0bd3f1dce2.
2023-01-19 11:43:14 -08:00
David Rosa f70b321773 help center: Document bot name in org settings link to bot's user card.
Documents link to the bot's user card from the bot's name in
Organization settings > Bots, and information in the bot's user card.

Fixes part of #23970.
2023-01-19 11:13:33 -08:00
David Rosa 0bd3f1dce2 help center: Update "SCIM provisioning" page.
Updates page to match help center documentation patterns,
and to use the newly added macros.

Fixes: #22890.
2023-01-19 11:09:15 -08:00
David Rosa e747fa893d help center: Update "Import from Gitter".
Updates the help center article to match the style and formatting
of "Import from Slack" and replaces existing content with its
corresponding Markdown macro.
2023-01-19 10:58:17 -08:00
Alya Abbott 039d0032a9 help center: Document Participants column in Recent conversations. 2023-01-18 16:06:07 -08:00
David Rosa 5fd4d3f053 help center: Update "Import from Rocket.Chat".
Updates the help center article to match the style and formatting
of "Import from Slack" and replaces existing content with its
corresponding Markdown macro.
2023-01-18 16:01:45 -08:00
Duncan e582055d2a help center: Add mobile instructions to "Mute a topic".
Fixes #22146.
2023-01-18 16:00:12 -08:00
Duncan 52d6cf1050 help center: Consolidate "Mute a topic" instructions into one list.
The message recipient bar instructions are now contained in a tip
block, as suggested in #22178.
Refines wording for unmuting topics on desktop/web.

This will allow adding mobile instructions to the article.
2023-01-18 16:00:12 -08:00
David Rosa 81a4b8c477 help center: Document quote-and-reply mobile feature.
Updates Quote and reply help center article to add instructions
for how to use this feature on mobile.

Fixes: #23752.
2023-01-18 15:53:27 -08:00
David Rosa e23ab721a6 help center: Document sizing for organization logo and profile picture.
Fixes part of #22121.
2023-01-18 15:43:54 -08:00
Lauryn Menard 2a60e4c1e6 portico-signin: Clean up CSS for buttons on dev login page.
Removes the `btn-direct` class in `portico.css` that was only
being used for dev login buttons.

Adds `dev-button` class for general CSS rules for buttons on the
dev login page. Adds `dev-login-button` and `dev-create-button`
classes for CSS rules specific to the two types of buttons on the
page.
2023-01-17 09:44:26 -08:00
Lauryn Menard a7fd994cbd docs: Link to management commands documentation in user facing docs.
Adds links to the documentation about management commands in the
API documentation for creating users, as well as the `/devtools`
documentation, the GDPR compliance article and the incoming
webhooks tutorial.
2023-01-10 08:50:00 -08:00
Lauryn Menard 79fb2c38fb api-docs: Add `missing.md` file specifically for API documentation.
Previously, `templates/zerver/api/missing.md` was a symlink to the
file in the help center documentation.

Prep commit for moving the help center documentation to a top level
directory.
2023-01-09 11:17:00 -08:00
Lauryn Menard d1714b0671 help-docs: Update articles for restricting email and avatar changes.
Updates the help center articles on restricting email and avatar
changes so that it is clear that administrators can always change
these settings for themselves.

Also, fixes a broken link and a few small text/formatting errors.
2023-01-06 16:41:11 -08:00
Mateusz Mandera f4024f6e9d help center: Remove deprecated mmctl flag from instructions.
--attachments is redundant and should not be used:
```
$ mmctl export create --attachments
Flag --attachments has been deprecated, the tool now includes attachments by default. The flag will be removed in a future version.
```
2023-01-06 16:36:01 -08:00
Alya Abbott dde92fd065 help center: Add a note about notifications for wildcard mentions. 2023-01-02 11:21:01 -08:00
David Rosa cc85acb953 help center: Add "All messages" icon for mobile.
Follow up to #23875.
2023-01-02 10:59:56 -08:00
Lauryn Menard b82b87adc4 demo-orgs: Show demo organization owner name on dev login button.
Prep commit for creating demo organizations in the development
environment with a blank email address for organization owners.

Changes the input element for organization owners into a button
element, so that text other than the input value can be displayed.
2022-12-30 21:26:42 -08:00
Lauryn Menard a00a1ab5ce dev-login: Rename `btn-admin` class to `btn-dev-login`.
Renames and cleans up some of the CSS rules for the `btn-admin`
class that is used in the dev login page for input elements.

Confirmed via git-grep that this class is only used on the dev
login page.
2022-12-30 21:26:42 -08:00
David Rosa b870d85634 help center: Update "Import from Mattermost".
Updates the help center article to match the style and formatting
of "Import from Slack" and replaces existing content with its
corresponding Markdown macro.
2022-12-30 18:06:44 -08:00
Alex Vandiver 0656d0d0bb help: Don't unnecessarily link to zulip.com/help instead of local /help. 2022-12-30 17:44:23 -08:00
Josh Klar c15d066bf5 email-notifs: Use bracketed prefix to indicate a resolved topic.
Some email clients (notably, Gmail Web) support automatically threading
emails together if recipients and subjects match[1]. Manual testing
indicated that prefixing a subject with "[bracketed content]" does not
break this threading behavior, but the added checkmark in a resolved
topic's title does. Before sending an email notification, determine
whether the topic is resolved, and pass this information to the Jinja
template to properly format a threadable email subject.

Fixes: #22538

[1]: https://support.google.com/mail/answer/5900
2022-12-15 23:56:48 -08:00
Josh Klar 69c042bff6 email-notifs: Concatenate topic subject lines only in Jinja.
Previously, stream names and topics (without consideration for their
resolution status) were concatenated in Python-land and passed through
to the template. To more cleanly separate concerns, and to prepare for
accounting for topic resolution status being a third, independent,
component of a subject line, instead pass stream and topic strings
independently to the Jinja template, which can format them as it sees
fit.
2022-12-15 23:56:48 -08:00
Alya Abbott ec32ee6964 help center: Create a dedicated page for All messages. 2022-12-14 14:42:15 -08:00
Sahil Batra cbdb4e98e5 message_edit: Topic editing permission should not depend on message sender.
This commit changes the topic edit permssions to not depend whether the user
editing the message had sent the message or it was sent by someone else.
We only do backend changes in this commit and frontend changes will be done
in further commits.

Previously, we always allowed topic edits when the user themseleves had
sent the message not considering the edit_topic_policy and the 3-day time
limit. But now we consider all messages as same and editing is allowed only
according to edit_topic_policy setting and the time limit of 3 days in
addition for users who are not admins or moderators.
2022-12-13 23:11:50 -08:00
Sahil Batra 815bf609fa message_edit: Topic and stream editing do not depend on allow_message_editing.
We change the topic and stream edit permssions to not depend on
allow_message_editing setting in the API and are allowed even
if allow_message_editing is set to False based on other settings
like edit_topic_policy and can_move_message_between_streams.

Fixes a part of #21739.
2022-12-13 23:11:50 -08:00
Sahil Batra ad9a7d2e06 message_edit: Add "Nobody" option for move_messages_between_streams_policy. 2022-12-13 23:11:50 -08:00
Sahil Batra 02eee3a04f message_edit: Add "Nobody" option for edit_topic_policy setting. 2022-12-13 23:11:50 -08:00
David Rosa 782947cfa0 help center: Rename "Format your messages" > "Message formatting".
Consolidates the article's name in the left sidebar and page title.
2022-12-09 17:18:24 -08:00
David Rosa 430383831a help center: Update "Manage your uploaded files".
Updates the page to add undocumented features and to follow our
current help center documentation patterns.

Cross-links related articles.

Fixes #22815.
2022-12-09 17:15:40 -08:00
David Rosa 4ad47fd550 docs: Rename "operators" to "filters".
Changes all the uses of the word "operators" to "filters" in
contributor docs, help center, and landing page to align with
the updated help center documentation.
2022-12-09 13:52:13 -08:00
David Rosa e31070c480 contributing docs: Update "Version Control" > "Commit discipline" links.
Updates `.html` links as a follow-up to #23750.
2022-12-09 13:28:49 -08:00
Sahil Batra f554af0d1c help: Update help docs for changing stream permission settings.
We changed the stream permission settings UI for setting widgets
to always be present in "General" section instead of a modal.
This commit updates the help center documentation to be consistent
with the new UI.

Fixes #19519.
2022-12-09 11:16:26 -08:00
Lauryn Menard 6759767b14 api-docs: Move include markdown macro files for API documentation.
Moves files in `templates/zerver/help/include` that are used
specifically for API documentation pages to be in a new directory:
`templates/zerver/api/include`.

Adds a boolean parameter to `render_markdown_path` to be used
for help center documentation articles.

Also moves the test file `empty.md` to the new directory since
this is the default directory for these special include macros
that are used in documentation pages.
2022-12-08 12:58:11 -08:00
Lauryn Menard 5f9dc76d54 integrations-docs: Move markdown macros include files.
Moves files in `templates/zerver/help/include` that are used
specifically for integrations documentation to be in a new
directory: `templates/zerver/integrations/include`.

Adds a boolean parameter to `render_markdown_path` to be used
for integrations documentation pages.
2022-12-08 12:58:11 -08:00
Lauryn Menard 53f705c7bd docs: Remove unused macros in `templates/zerver/help/include`. 2022-12-08 12:58:11 -08:00
Lauryn Menard 317c7c177e help-docs: Use `cloud-plus-only` macro in `saml-authentication`. 2022-12-08 12:58:11 -08:00
David Rosa c84bf16b2d help center: Improve documentation on the ? in-app reference.
Adds a sentence at the end of the intro section of each help center
page explaining that you can pull up a Keyboard shortcuts, Message
formatting, and Search filters reference from inside the app.

Adds/updates the in-app help section at the bottom of the page with
instructions for opening the reference.

Fixes #23758.
2022-12-08 12:05:05 -08:00
David Rosa e78ae9463d contributor docs: Rename "Version Control" to "Commit Discipline". 2022-12-07 10:19:07 -08:00
Anders Kaseorg 872f4b41c1 ci: Check that non-scripts aren’t marked executable.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-12-07 09:54:01 -08:00
Alya Abbott 35913a2297 help center: Make stream names bold on /help/setting-up-zulip-for-a-class. 2022-12-02 18:00:12 -08:00
Alya Abbott ec74416e5d help center: Rewrite /help/search-for-messages.
- Organize search terms into categories.
- To avoid technical-sounding jargon, use the term "filter" rather "operator".
- Be more specific and consistent in describing search queries.
- Change how user search is described, as we now show user name pills.
2022-12-02 18:00:12 -08:00
Prakhar Pratyush a59d6d6581 docs: Improve move messages to another stream instructions.
This commit adds a line to make it clear to the user that the
user may/mayn't have the permission to move messages between
streams.
2022-12-02 17:25:22 -08:00
Prakhar Pratyush 53da7c1928 docs: Rename "Move message" option to "Move messages".
This commit renames "Move message" option to "Move messages"
to make it more clear that the user can move multiple messages.
2022-12-02 17:25:22 -08:00
Prakhar Pratyush fd96d958a5 docs: Improve move a topic to another stream instructions.
This commit adds a line to make it clear to the user that the
user may/mayn't have the permission to use the "move topic" option.
2022-12-02 17:25:22 -08:00
Sahil Batra 00ad7e5aeb development: Add CSS file for emails page in dev server.
Previously, CSS rules were added inline for emails page in
dev server. This commit adds a new file which contains
CSS rules for the emails page in dev server. This will
also help us in adding focus for the radio buttons in
the page, which cannot be added inline to the elements,
when we remove the use of bootstrap for this page.
2022-11-30 17:35:22 -08:00
Lauryn Menard 704e39f1b4 integrations-docs: Update text in `create-bot-construct-url.md`.
Revises the text about including a stream and a topic incoming
webhook URLs in `create-bot-construct-url.md` for clarity and
consistency.
2022-11-29 16:24:48 -08:00
Lauryn Menard 3fe2f208ae integrations-docs: Remove images of bot type dropdown menus.
Removes images of the bot type dropdown menus for creating new
bots because they are no longer up-to-date and picking an option
from a dropdown does not seem like it would require a screenshot.
2022-11-29 11:03:28 -08:00
David Rosa caacfd0bd9 help center: Update "Message a stream by email" to reflect new UI.
Updates the documentation to reflect recent changes to the UI.

Fixes #23471.
2022-11-28 20:22:49 -08:00
Lauryn Menard 93e892af92 integrations-docs: Remove remaining instances of `settings_html`.
Removes the three remaining instances of `settings_html` links in
the integrations documentation. Use of `settings_html` was removed
from the general shared `create-an-incoming-webhook.md` and
`create-a-generic-bot.md` files in e9e2721.
2022-11-28 12:21:36 -08:00
Lauryn Menard c1d0ffe099 integrations-docs: Update Hello World for current macros and style.
Updates the Hello World integration documentation and the section
of the related tutorial on documenting the example integration
for the currently used shared macro `create-bot-construct-url.md`.

Also, updates them to use the numbered style currently used in
the majority of the integrations documentation pages.
2022-11-28 12:21:36 -08:00
Alya Abbott dfd97542b3 help center: Document message actions. 2022-11-28 12:07:57 -08:00
Anders Kaseorg 21f8d26040 dark_theme: Move color scheme classes from body to root element.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-11-27 13:18:52 -08:00
Alya Abbott 3a3cf496a3 help center: Document @everyone and @stream mentions. 2022-11-24 09:15:27 -08:00
Tim Abbott 2a3f708e9a gear_menu: Delete unused Bootstrap tabs code.
Before 2017, Zulip's manage streams and settings UIs were tab in the
same pane position as our current message feed and recent topics.

That original implementation was implemented using Bootstrap tabs;
while it hasn't been in use for years, we had a bunch of stale code
related to it leftover in this module.
2022-11-22 13:55:21 -08:00
Anders Kaseorg 73c4da7974 ruff: Fix N818 exception name should be named with an Error suffix.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-11-17 16:52:00 -08:00
Tim Abbott 88873138ac Update version following 6.0 release. 2022-11-17 16:42:36 -08:00
Tim Abbott f0e5f69c01 Release Zulip Server 6.0. 2022-11-17 11:44:45 -08:00
Aman Agrawal c876e12b86 unread_ops: Let server do the mark as unread for us.
Previous algorithm was not correct if we didn't have full data for
the current narrow loaded from the server. #23512 adds the support
to mark messages in a narrow unread after a give message_id.

Added a new alert banner to indicate loading and success states of
an ongoing request. This is useful when requests can take a long
time to complete.
2022-11-17 00:46:26 -08:00
Anders Kaseorg 842a5bb54b message_flags: Allow updating flags by narrows and anchors.
Fixes #22893.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-11-16 21:13:44 -08:00
Anders Kaseorg 5d0711df6d message_flags: Don’t send events for no-op flag updates.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-11-16 21:13:44 -08:00
Anders Kaseorg ee2cb855f0 message_fetch: Add include_anchor parameter.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-11-16 21:13:44 -08:00
Alya Abbott e215015e80 portico: Add links to /values to footer and /history. 2022-11-15 11:21:14 -08:00
David Rosa a3c5c97488 help center: Document "Mark messages as unread" on mobile.
Fixes #23560.
2022-11-15 10:27:22 -08:00
Alya Abbott 86d8a9c626 help center: Document user cards. 2022-11-14 16:03:37 -08:00
Alya Abbott 3e6d7c11b0 help center: Add use cases to /help/marking-messages-as-unread. 2022-11-14 13:07:35 -08:00
Lauryn Menard 32d35bcec8 help-docs: Update mobile instructions for invisible mode. 2022-11-14 13:06:54 -08:00
Aman Agrawal fbe9a9e539 left_side_userlist: Remove feature from frontend.
Fixes #23517.

While this feature was added to Zulip very early, it has been troubled
for most of that time; it never looked great visually, had a lot of
implementation complexity around resize.js, and has a weird model (a
setting that changes the UI only in certain window sizes).

This option is not commonly used; while a significant portion of users
have it enabled, many of them just don't use window sizes where it
actually has an effect. So it's not clear that it will be missed if
removed; we got very few bug reports when it was completely broken for
a few days after we first integrated the new left sidebar private
messages design.

Even with it no longer being broken, it does not work very well with
the addition of the new PMs section in the left sidebar. (Having two
scrollbars in the sidebar looks quite awkward.) The new private
messages section in the left sidebar also addresses some of the use
cases for always keeping the Users list always visible, even in narrow
windows.

This option is only removed from frontend for now. To make this
decision easily reversible, the backend code of this feature
is still kept.
2022-11-14 12:23:55 -08:00
Lauryn Menard de12500f68 popovers: Rename "full profile" to "profile".
Now that we now longer have another thing called a "user profile", we
can simplify the name for this part of the UI.

Fixes #23530.
2022-11-14 12:16:22 -08:00
Lauryn Menard 9aacb15530 tabbed-sections: Update "via-user-profile" to be "via-user-card". 2022-11-14 12:16:22 -08:00
Lauryn Menard 48e2482bbd popovers: Rename "profile summary" to "user card".
This is a briefer and more intuitive name for this frequently accessed
part of the Zulip UI.
2022-11-14 12:15:54 -08:00
Alya Abbott 52a04b53ad help center: Clean up "Deactivate or reactivate a user" help page.
Also, removes now unused image in `/static/images/help`:
`deactivate-user-email.png`.

Fixes #23503.
2022-11-10 12:00:25 -08:00
Alya Abbott 343bd395ca help center: Make minor tweaks to Change a user's {role}/{name} pages.
- Factor out instructions for navigating to the "Manage this user" tab.
- Add links to related articles.
2022-11-10 12:00:25 -08:00
David Rosa 59df44f5ce help center: Migrate reusable content in "Import from Slack".
Moves reusable content to multiple Markdown macros.
2022-11-10 11:56:55 -08:00
David Rosa ba44f308dc help center: Tweak "Import from Slack" page for reusability.
We can reuse the content from multiple sections of the Slack article
to update "Import from Mattermost/Gitter/Rocket.Chat" by making small
wording tweaks.
2022-11-10 11:55:41 -08:00
David Rosa 8e21b6bf95 help center: Improve "analytics" article.
- Renames the page to "Usage statistics" (title & left sidebar).
- Adds an intro section that outlines the types of information
that can be found on the stats page.

Fixes #23449.
2022-11-10 11:27:42 -08:00
David Rosa 47a8eb0b66 help center: Document viewing @-mentions.
Adds "View your mentions" page to document how to access @-mentions
and the @ indicator for unread @-mentions on desktop/web and mobile.

Fixes #23422.

Co-authored-by: Alya Abbott <alya@zulip.com>
2022-11-09 15:51:44 -08:00
Alex Vandiver 0fa7b8e1ae api: Link to new rate-limiting configuration documentation. 2022-11-09 09:56:16 -08:00
David Rosa a9f2ec27d6 help center: Document notification triggers.
Documents the top checkboxes section for controlling mobile, desktop,
and email notifications.

Fixes #23371.
2022-11-08 17:45:04 -08:00
Alya Abbott 9937b8112d help center: Update documentation on reading private messages.
- Describe the new PMs section in the left sidebar.
- Mention Recent conversations.

Fixes #23420.
2022-11-08 17:44:46 -08:00
Lauryn Menard c4d407e992 api-docs: Update 'construct-narrow' article.
Fixes small error in the example at the top of the article, and
adds a short statement about narrows searching the current user's
personal message history with a link to the help center article.

Gives the final section a subheader and adds the two other narrow
operators that take an ID.
2022-11-08 11:07:00 -08:00
David Rosa 81f3307da0 help center: Mention stream section labels.
Updates the relevant help center articles to reflect that the
sections for Pinned and Inactive streams in the left sidebar
now have labels.

Fixes #23423.
2022-11-08 10:44:57 -08:00
David Rosa 2eaff50a59 help center: Document viewing read receipts on mobile.
Adds instructions for viewing read receipts in the mobile app.

Fixes #23479.
2022-11-08 10:43:50 -08:00
Alya Abbott 04dcca370b help center: Drop extraneous Desktop/Web tab from /help/emoji-reactions.
It is better not to use a tab in the instructions for how to
"Toggle whether names of reacting users are displayed", as this setting
applies to both web/desktop and mobile apps.

The instructions themselves still indicate that the setting is controlled
via the web/desktop app.
2022-11-08 08:09:04 -08:00
Lauryn Menard 2dd3f29c32 api-docs: Update example response header for potential plural.
The documentation for various API endpoints gives multiple response
examples. Update the headers to reflect this fact.
2022-11-07 12:31:55 -08:00
David Rosa 69bf8193a0 help center: Mention "Scroll to bottom" to mark Topics and PMs as read.
Updates "Reading Topics" and "Reading PMs" where only the keyboard
shortcut for this action is mentioned.

Fixes #23425.
2022-11-07 10:49:55 -08:00
Tim Abbott b3e1f546f3 Revert "help-docs: Revise the article on searching for messages."
This reverts commit 8410990c42.

We'd like to rework this article more substantially.
2022-11-07 10:40:28 -08:00
Alya Abbott 4316f47f8d help center: Update list of fields in full profile.
Also add documentation on what fields are shown in the mobile app.
2022-11-04 14:41:09 -07:00
Lauryn Menard 8410990c42 help-docs: Revise the article on searching for messages.
Updates the first part of the article to discuss the basics of
the search feature. Adds sub-headers / sections to the list of
search operators. Makes the exluding messages a section header
instead of a sub-section of the list.
2022-11-03 12:17:37 -07:00
Lauryn Menard 6f1d9ce466 help-docs: Fix "group-pm-with" format in search for messages article.
Updates the help center article on searching for messages to have
the correct format for the "group-pm-with" operator.

Also, reorders the list so that the private message searches are
all together, and the `streams:public` operator is last so that
it stands out a bit more.
2022-11-03 12:17:37 -07:00
Alya Abbott d9dde2b4d9 help center: Add a detail to /help/mute-a-stream.
Indicate that muted streams are sorted to the bottom of their section.
2022-11-02 17:05:28 -07:00
Mateusz Mandera 6e336ef6f6 delete_topic: Use the same timeout pattern as /mark_all_as_read.
We don't want to use the nginx 502 timeout as an API pattern. In
/mark_all_as_read we've already figured out how we want to handle this
instead.
2022-11-02 16:50:06 -04:00
Mateusz Mandera 582d5b0aa3 realm_creation: Rework error pages.
The previous error page was inadequate for serving the two different
scenarios where we show errors in realm_creations, in particular
containing a misleading sentence about realm creation being disabled
(even in the case where it was actually enabled and the user simply had
an expired link).
2022-10-31 17:35:06 -07:00
Alya Abbott b33245902a help-center: Add tip about how to add a link to a stream description.
Fixes part of #16701.
2022-10-31 14:41:44 -07:00
Alya Abbott 7d95f5caea help center: Clearly refer to mobile apps on /help/mobile-notifications.
Addresses user confusion about whether "mobile notifications" might refer
to text messages.
2022-10-28 11:41:11 -07:00
Mateusz Mandera a410f6b241 do_mark_all_as_read: Split up the work into batches.
Fixes #15403.
2022-10-27 16:59:54 -07:00
Alya Abbott 6c88ca91b1 help center: Update emoji reactions documentation.
- Document new option for toggling whether names are displayed.
- Add mobile instructions.
- Other organization and wording improvements.
2022-10-27 12:56:19 -07:00
Tim Abbott 6f8476ced9 templates: Improve unsupported DevAuthBackend error page.
Previously, we didn't mention the possibility that this could have
been disabled by an organization administrator.
2022-10-26 21:16:31 -07:00
David Rosa 53b18f819a help: Add "View messages sent by user" page.
Some options in the profile menu are not documented in the help center.

Documents "View messages sent".
Documents "View messages with yourself".
Links `sender:me` search operator to the relevant section on this page.

Fixes: #23203.
2022-10-26 13:16:57 -07:00
Alya Abbott 8f6cf65f28 help center: Reorganize and extend the "Logging in" help page.
Also move some instructions from related pages into shared /include files,
with minor tweaks.
2022-10-26 12:28:29 -07:00
Alya Abbott 16d5f15fad help center: Make URLs non-relative where appropriate.
Change URLs on "Choosing between Zulip Cloud and self-hosting" page
to be non-relative when pointing to the Zulip landing page or `/new`
for creating a new Zulip Cloud organization.
2022-10-26 12:28:29 -07:00
Rishant Rokaha a9893fb654
settings: Add confirmation modal for reactivating a bot in personal settings.
There's already a similar modal in organization settings, so this improves 
the consistency of the UI.

Fixes #23281.
2022-10-25 10:39:16 -07:00
Lauryn Menard c9044f7acd recent-topics: Rename to "Recent conversations" in web-app and docs.
Replaces instances of "recent topics" in the web-app and documentation
to be "recent conversations".

Renames both `recent-topics.md` files in the help center to be
`recent-conversations.md` and updates/redirects links to new URL.

Does not update instances of "recent topics" in frontend code comments
and does not update the main overview changelog, for now.

Does not change case study text where "recent topics" was referenced
in a quote, but does change generic text references to be "recent
conversations".
2022-10-21 10:28:19 -07:00
Alya Abbott 132ac6cc48 help center: Update "Communities directory" help page.
This update reflects the fact that the page is now live.
2022-10-20 15:52:18 -07:00
Alya Abbott 0c6fb6811e portico: Add navigation links for Open communities directory. 2022-10-20 15:52:18 -07:00
Aman Agrawal ed2ea4c8cc integrations: Increase font size of logo disclaimer.
Increased font size from 11px to 13px. This text was unreadable
on mobile as per Google report at 11px font size.
2022-10-19 12:03:16 -07:00
Sahil Batra eed728fb59 hotkey: Use "m" hotkey for moving messages.
Fixes #23113.
2022-10-19 12:02:22 -07:00
David Rosa 84ce917e9f help: Add "Edit a custom profile field" section.
Adds a section on editing to the Custom profile fields help article.

Fixes part of #23170.
2022-10-19 11:58:00 -07:00
David Rosa 64c31b7cb9 help: Rename "Add custom profile fields" -> "Custom profile fields".
Renames the help article on custom profile fields to reflect that
its content is not just about adding fields.

Adds a redirect from the old URL to the new URL and updates internal
links, linking to #add-a-custom-profile-field where appropriate.

Fixes #23170.
2022-10-19 11:58:00 -07:00
Alya Abbott abccc483f4 help center: Clean up documentation on sending messages.
- Consolidate /help/starting-a-new-private-thread and /help/private-messages.
- Tweak the wording on compose-and-send-message.md.
- Use compose-and-send-message.md where appropriate (and not otherwise).
2022-10-18 22:20:45 -07:00
David Rosa c0f534ff79 help: Fix "Reply mentioning user" documentation.
Corrects "Reply mentioning user" option which is available in the
user menu if accessed from a message.

Documents "Copy mention syntax" option which is available from the
right sidebar.

Fixes: #23202.
2022-10-18 22:18:47 -07:00
David Rosa d9dd272a78 help: Update documentation on bots.
Adds new tab to `zerver/lib/markdown/tabbed_sections.py` to document
managing bots from both personal settings and organization settings.

Documents adding bots from the organization settings Bots panel.

Separates instructions for deactivating and reactivating a bot from
both personal settings and organization settings.

Fixes a few formatting issues such as missing bold formatting and
heading level.

Fixes: #23066.
2022-10-18 10:16:42 -07:00
David Rosa a94b13cfb0 help: Fix "Click on the ellipsis" formatting and use of macros.
Adds bold formatting to **ellipsis** for consistency and replaces
duplicate instructions with the appropriate macro across help
center docs.
2022-10-18 08:23:59 -07:00
David Rosa 7af9d43d6a help: Update documentation for "Mute this user" and "Manage this user".
This documents how to access the options from the three-dot menu in a
user's profile summary.

Refactors and updates the steps for muting a user into a single set of
instructions. Updates instructions for the "Manage this user" option.

Fixes #23204.
2022-10-18 08:23:59 -07:00
David Rosa fc85f88529 help: Add macros to document access to three-dot menu in profile summary.
Fixes part of #23204.
2022-10-18 08:23:59 -07:00
David Rosa ebd4181ae0 help: Update message menu documentation.
Updates all help center documentation according to the latest changes to
the three-dot message menu and the UI for moving and editing messages.

Fixes #23217.
2022-10-17 11:37:03 -07:00
Mateusz Mandera 61de767967 login page: Show form-independent errors even if email auth disabled.
These used to only be shown conditional on the
{% if password_auth_enabled %} in the template. Meaning that if you had
an org with email auth disabled and a deactivated user tried to log in,
they wouldn't see the error shown and get confused.

This switches the position of where these error will be shown (above the
login+password form instead of below it), but it looks fine.
2022-10-14 13:07:58 -07:00
Alya Abbott faabc0f6ad help center: Document "Marking messages as unread" feature.
Fixes #23052.
2022-10-13 10:14:24 -07:00
David Rosa fc251dba2c help: Cross-link Related articles in "Marking messages as unread".
Cross-links with Reading strategies, Marking messages as read, Star a
message, and Read receipts.
2022-10-13 10:14:24 -07:00
David Rosa cad6ec2456 help: Document "Marking messages as unread" feature.
Documents the new "Mark as unread from here" option in the three-dot
message menu.

Adds new page "Marking messages as unread", just below "Marking
messages as read" in the sidebar index.

Fixes: #23052.
2022-10-13 10:14:24 -07:00
Sahil Batra 6423bbe26f docs: Add commas to list of event types supported by integrations.
Fixes #23219.
2022-10-13 10:09:11 -07:00
Sahil Batra dd939bbbb8 message: Rename "Un-collapse" option to "Expand message".
This commit also update the collapse message help page.
2022-10-12 10:50:05 -07:00
Sahil Batra cdc7183a01 hotkey: Update description for "e" shortcut.
This commit updates description for "e" shortcut to
"Edit selected message or view message source" in
shortcuts menu and to "Edit message or view message source"
in help docs.
2022-10-12 10:50:05 -07:00
Julia Bichler 4bb381fc80 message_edit: Support sending notifications with topic changes.
Previously we did not send notification for topic-only edits.
Now, we add backend support for sending notification to topic-only
edits as well.

We would add support for this in webapp in further commits since
message edit UI will be updated as well. We just make sure that no
notifications are sent when editing topic using pencil icon in
message header.

We also change the API default for moving a topic to only notify the
new location, not the old one; this matches the current defaults in
the web UI.

Includes many tests.

We also update the puppeteer tests to test only content edit as
we are going to change the UI to not allow topic editing from
message edit UI. Also fixing the existing tests to pass while
doing topic edits is somewhat complex as notification message
is also sent to new topic by default.

Fixes #21712.

Co-authored-by: Aman Agrawal <amanagr@zulip.com>
Co-authored-by: Tim Abbott <tabbott@zulip.com>
2022-10-11 11:35:41 -07:00
Alya Abbott 73219dd49b help center: Document new "Pronouns" custom profile field type. 2022-10-07 16:48:04 -07:00
David Rosa 79084d0b47 help: Document option to display custom profile fields in profile summary.
Adds a section explaining what this option is and how to manage it
via the settings table.

Fixes: #23018.
2022-10-07 14:27:10 -07:00
David Rosa 0c80eeffd4 help: Update instructions for adding a new custom profile field.
Fixes part of #23018.
2022-10-07 14:27:10 -07:00
Sahil Batra 2bf70fe4db custom_profile_field: Add "Pronouns" custom field type.
This commit adds "Pronouns" custom profile field type. We also
add "Pronouns" type field in the development environment
2022-10-06 17:56:26 -07:00
evykassirer 5565a5055e help: Document Google blob emoji deprecation.
Part of fixing #19371.
2022-10-04 12:29:35 -07:00
Zixuan James Li 44df15e19b docs: Remove legacy references to "topic" as "subject".
Signed-off-by: Zixuan James Li <p359101898@gmail.com>
2022-10-04 11:59:23 -07:00
Sahil Batra 1dd89b8f9b popovers: Show "Move message" menu always when moving message is allowed.
Previously "Move message" option was not shown when content editing
was also allowed and also when only moving messaages between streams
was allowed but not topic edits.

Now we show "Move message" option when editing topics or moving
messages between streams is allowed irrespective of whether content
editing is allowed or not.
2022-10-03 11:43:25 -07:00
Akarsh Jain 67d7efefdc message_actions: Split the View source / Move message option into two menu options.
Split the View source / Move message option into two menu options that
take you to the same UI: Move message and View message source.
Previously, it was confusing to have this double option,
and hard to parse it at a glance.

-View message source uses the current icon.

-Move message uses the arrows icon from the Move topic menu option.

-New option order: (1) Move message, (2) Quote and reply or forward,
 (3) View message source.

Also remove the "Topic editing only" and "View source" text on the
bottom right of the message edit UI along with the tooltips. Only
the timer text is shown (along with tooltip) when content editing
is allowed.
2022-10-03 11:43:25 -07:00
Lauryn Menard 9bac655cd2 help-docs: Add read receipts to related articles in marking messages read. 2022-10-03 11:37:37 -07:00
Lauryn Menard c8e63cf061 help-docs: Add a note about read receipts to 'Mute a user' article.
Adds a bullet point about muted users being excluded from read
receipts for all messages, and that the read receipts feature
doesn't share if the user has read messages for their muted users.
2022-10-03 11:37:37 -07:00
Alya Abbott 5465e2d4d4 help center: Edit "Create your organization profile" info.
- Remove unnecessary screenshot with old Zulip branding.
- In the intro, clarify how the organization profile picture is used.
- Extract org profile intro into an included file.
- Describe the Preview organization profile button.
2022-10-03 11:33:30 -07:00
khanhdq ee2141b0f1 email_notifications: Change missed message for wildcard mention.
Add #stream_name to wildcard mention because it is important
information for interpreting the wildcard mention (larger streams may
mean something very different to you than small ones).

Fixes #22885.
2022-09-29 15:55:14 -07:00
khanhdq bb8365ab36 email_notifications: Add ``realm_name`` to email notifications.
Add {{ realm_name }} to the "Reply to this email directly ..." line.

This ensures the realm name is always present in the email
notification footer area, in a consistent location.
2022-09-29 15:54:35 -07:00
khanhdq 59d0f9b301 email_notifications: Highlight personal mentions in explanations.
Change the explanations for why notifications were received, with
different text for personal and wildcard mentions.
2022-09-29 15:54:21 -07:00
Akarsh Jain 72cc5d6bd2 message_actions: Rename Edit to Edit message and Collapse to Collapse message.
This commit renames Edit to Edit message and Collapse to Collapse message
for better readability and to match the Delete message and
Copy link to message options.
2022-09-29 10:29:51 -07:00
Sahil Batra 04693b6ac1 message_edit: Send only changed settings in event data and api response.
Previously, we included all three message edit related settings
("allow_message_editing", "message_content_edit_limit_seconds" and
"edit_topic_policy") in the event data and api response irrespective
of which of these settings were changed. Now, we only include changed
settings and separate events are sent for each setting if more than
one of them is changed.

Note that the previous typed in event_schema.py for
`message_content_edit_limit_seconds` incorrectly did not allow `None`
as a value, which is used to encode no limit.
2022-09-28 11:47:40 -07:00
Aman Agrawal b84722de01 events: Clean up logic for spectator events_register parameters.
Unfortunately, doing so requires forking common API documentation
text, since we're not making any changes to other endpoints that don't
allow unauthenticated requests at all.

Follow-up on #21995.
2022-09-27 16:12:59 -07:00
Lauryn Menard 569863ffa6 templates: Improve footer content on documentation pages.
Makes the footer content on doc pages more contextually appropriate
for self-hosted organizations, when `settings.CORPORATE_ENABLED` is
false.

When `settings.CORPORATE_ENABLED` is true, there is specific footer
content for the policy documentation pages, and for the help center
and API documentation pages.

Fixes #23068.
2022-09-27 11:13:55 -07:00
Alya Abbott 403e59622b help center: Link to /help/contact-support from Zulip Cloud billing help. 2022-09-27 10:39:40 -07:00
Alya Abbott 40a867fda7 help center: Rewrite "Contact support" page.
- Structure page as use case -> recommended channel.
- Include expected SLAs for all channels.
2022-09-27 10:39:40 -07:00
Steve Howell 8fc811dfa9 unread: Add UI support for marking messages as unread.
Fixes #2676.

Co-authored-by: Aman Agrawal <amanagr@zulip.com>
Co-authored-by: Tim Abbott <tabbott@zulip.com>
2022-09-23 16:45:43 -07:00
Lauryn Menard 75ee221913 help-docs: Update status and availability for invisible mode feature.
Updates the help center article on 'Status and availability' to
describe invisible mode as a feature and removes all mentions of
the unavailable feature.

Fixes #21178.
2022-09-23 12:27:54 -07:00
Lauryn Menard b2e0b5187d api-docs: Document `away` as deprecated way to access presence_enabled.
Updates API documentation and changelog for user status `away`
now being a deprecated way to access a user's `presence_enabled`
setting for clients supporting older servers.

Final step in making user status `away` a deprecated way to access
`presence_enabled` for clients supporting older servers.

Part of transitioning from 'unavailable' user status feature to
'invisible mode' user presence feature.
2022-09-23 12:27:54 -07:00
David Rosa c6abb7bedf help: Restructure "Mastering the compose box" article.
This help center article should include more features rather than just
focusing on the "go to conversation" button. We should broaden and
restructure this page to cover other advanced features.

Refactors the "Go to conversation" section as step-by-step instructions,
and adds a `keyboard_tip`.

Adds new section "Toggle between Ctrl+Enter and Enter".
Deletes the "Enable Enter to send" help center article, and adds its
content as a new subheading in this section.
Updates existing links accordingly and adds a URL redirect.
Documents "Enable Control + Enter to send".
Tweaks intro paragraph of "Mastering the compose box".

Fixes: #22817.
2022-09-22 15:20:37 -07:00
David Rosa 2a5e4e2820 help: Fix "Related articles" in the bots section.
Adds or extends "Related articles" lists that are either missing
or incomplete.
2022-09-22 15:18:59 -07:00
Mateusz Mandera 940830055b delete_in_topic: Split up the deletion into batches.
Fixes #22821.

As explained in the comment in the code:

Topics can be large enough that this request will inevitably time out.
In such a case, it's good for some progress to be accomplished, so that
full deletion can be achieved by repeating the request. For that purpose,
we delete messages in atomic batches, committing after each batch.

The additional perk is that the ordering of messages should prevent some
hypothetical deadlocks - ref #19054
2022-09-22 15:01:43 -07:00
Alya Abbott 6f1e96a7a7 help center: Revision pass on "Marking messages as read" page. 2022-09-22 11:50:20 -07:00
David Rosa 4549529714 help: Document "Mark messages as read on scroll" mobile app feature.
Adds section on how to configure whether messages are automatically
marked as read.
Adds instructions to manually mark all messages as read, or mark all
messages in a stream or topic as read.
Adds the all messages tab image icon.

Fixes: #22915.
2022-09-22 10:36:41 -07:00
David Rosa 18bbd7136f help: Refactor "Marking messages as read".
This help center article needs to be restructured before adding
documentation for mobile app users.

Splits the article into three sections so that we can document how
to mark messages as read on scroll or manually mark all messages
as read.

Adds "Related articles" section with cross-links.
2022-09-22 10:36:41 -07:00
David Rosa 887ea7381d help: Document how to edit bots.
Adds a new help center article to document the ability to edit bots,
both in personal and organization settings.

Adds a note about bot editing to "View all bots in your organization".

Fixes #21641.

Co-authored-by: Alya Abbott <alya@zulip.com>
2022-09-22 10:33:30 -07:00
tjefferson401 3788242049
tooling: Use sentence case in development environment login screen.
Fixes #23009.
2022-09-20 21:35:09 -07:00
yogesh sirsat 543f36b7da custom_profile_fields: Add "display_in_profile_summary" field in model.
To allow `custom_profile_field` to display in user profile popover,
added new boolean field "display_in_profile_summary" in its model class.

In `custom_profile_fields.py`, functions are edited as per conditions,
like currently we can display max 2 `custom_profile_fields` except
`LONG_TEXT` and `USER` type fields.

Default external account custom profile fields made updatable for only
this new field, as previous they were not updatable.

Fixes part of: #21215
2022-09-20 17:03:57 -07:00
Lauryn Menard 34f5218cc8 templates: Replace default HTML title and meta-description elements.
Removes the default title element of "Zulip" from `base.html` and
the default meta-description sentence from `meta_tags.html`. Also
removes default open graph metadata.

For portico templates that would would fail tests, set both
`PAGE_TITLE` and `PAGE_DESCRIPTION` variables with appropriate
content.

Co-authored-by: Alya Abbott <alya@zulip.com>
2022-09-19 20:17:17 -07:00
Lauryn Menard 7a0d659f14 templates: Add HTML title element to templates that extend base/portico.
Adds HTML title elements to templates that extend either `base.html`,
`portico.html` or `portico_signup.html`, and that are not website
portico landing pages that will use the `PAGE_TITLE` variable to set
the HTML title element (see following commit in series).

Also, updates some templates for missing translation tags.

As a general rule, we want the title element (and page content)
translated. Exceptions that are updated in this commit are templates
used in the development environment, analytics templates that are used
by staff and templates related to Zephyr.
2022-09-19 20:17:17 -07:00
Ganesh Pawar 3646ad28d9 emoji: Change `Delete emoji` to `Deactivate emoji` in the help center. 2022-09-17 11:55:33 -07:00
yogesh sirsat 180a9cbdcb stream_bots: Allow bot owners to unsubscribe their bots from streams.
Users who owns bots can unsubscribe their bots from streams.

Fixes part of: #21402
2022-09-16 17:51:34 -07:00
Lauryn Menard eb377a8872 read_receipts: Exclude muted users from read receipts.
Removes IDs of users who have muted or been muted by the current
user from the list of user IDs returned by the read receipts
endpoint.

Fixes #22909.
2022-09-16 16:19:54 -07:00
Sahil Batra 13ffb36834 help: Update the help pages according to permissions change.
We allow only owners to change "Joining the organization"
settings and this commit updates the help pages to mention
this restriction.
2022-09-16 15:27:52 -07:00
Tim Abbott d5d2647c1b openapi: Update API feature level permission changes. 2022-09-16 15:27:52 -07:00
Anders Kaseorg e38f9f038a landing_nav: Add tabnabbing protection to external target="_blank" link.
This has no impact because zulip.com is not attacker-controlled, but
we should be consistent in protecting external target="_blank" links.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-09-15 17:14:10 -07:00
David Rosa b00c030791 help: Document "Import your settings" feature.
Adds a new page titled "Import your settings" in the "Account basics"
section to document how to import user settings from an existing Zulip
account to a new Zulip account, and which settings will be imported.

Adds a question mark (?) icon linking to this help page from the
registration form when the import settings option is available.

Adds cross-links on related articles.

Fixes: #20918.
2022-09-15 16:05:49 -07:00
Sahil Batra b9248c75f4 stream: Add do_change_can_remove_subscribers_group and field to objects.
This commit adds do_change_can_remove_subscriber_group function for
changing can_remove_subscribers_group field of a stream. We also add
can_remove_subscribers_group_id field to stream and subscription
objects.

This function will be helpful for writing tests in next commit.
We would add API and UI support to change this setting in further
commits.
2022-09-14 16:03:11 -07:00
Mateusz Mandera 2d31c08887 help center: Tweak punctuation in saml-login-button.md. 2022-09-14 09:40:04 -07:00
Mateusz Mandera 1bb15fd731 help center: Small update to Okta SAML set up instructions.
The UI seems slightly different than before, making the metadata harder
to find - this additional description of how to get to it should be
helpful.
2022-09-14 09:40:04 -07:00
Lauryn Menard fe7d7b48db help-docs: Use `<kbd>` HTML elements for references to keyboard keys.
Updates references to keyboard keys in the help center docs to use
`<kbd>` HTML elements, which also means updating them to be as the
key would appear on a keyboard.

Previously, uppercase and lowercase letters were used to indicate
when/if the `Shift` key was being used, and even that was not
consistent throughout the documentation.

For CSS styling, adds a similar rule for `<kbd>` elements that is
used in `/static/styles/app_components.css`. And updates the CSS
class used in `/static/js/portico/help.js` for `adjust_mac_shortcuts`
accordingly.

Also, takes advantage of revising these pages for making small
updates for current help center documentation practices.
2022-09-13 11:16:14 -07:00
Anders Kaseorg bd9a1dc971 tests: Consistently JSON-encode ‘to’ parameter
Although our POST /messages handler accepts the ‘to’ parameter with or
without JSON encoding, there are two problems with passing it as an
unencoded string.

Firstly, you’d fail to send a message to a stream named ‘true’ or
‘false’ or ‘null’ or ‘2022’, as the JSON interpretation is prioritized
over the plain string interpretation.

Secondly, and more importantly for our tests, it violates our OpenAPI
schema, which requires the parameter to be JSON-encoded.  This is
because OpenAPI has no concept of a parameter that’s “optionally
JSON-encoded”, nor should it: such a parameter cannot be unambiguously
decoded for the reason above.

Our version of openapi-core doesn’t currently detect this schema
violation, but after the next upgrade it will.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-09-13 11:05:37 -07:00
Mateusz Mandera 011330194e help center: Fix indendation in saml-authentication.md azuread part. 2022-09-13 10:43:30 -07:00
Lauryn Menard 899f535b39 forms: Update create organization part of registration form.
Adds a legend to the "org-registration" fieldset where the user
inputs info about the new organization. Previously, there was only
a legend for the "user-registration" fieldset. Also, increases
the opacity of CSS rule for the legend color so that they are
more visible.

Removes the hint text about what the organization URL value is
used for since it is pretty clear from the field's name.
2022-09-13 10:41:03 -07:00
Anders Kaseorg e23eeb798a templates: Fix curly-quoted HTML attributes.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-09-12 14:18:07 -07:00
Lauryn Menard 64bbfd7756 templates: Remove prefilled support email content from error pages.
Removes the prefilled support email content in `500.html` and
`unsubscribe_link_error.html` templates since both cases are rather
rare and the prefilled content is not useful for organizations that
do not use English as their main communication language.
2022-09-12 14:17:26 -07:00
sayamsamal c8f346b5e5 icons: Change mute icon from bell to speaker.
This icon is more standard, and lets us use a speaker icon for other
applications.

Fixes #21751
2022-09-09 17:32:19 -07:00
David Rosa 33a618d169 integrations: Add generic bot macro to relevant docs.
There are a handful of integration docs that instruct users to create
a bot and select the "Generic bot" type without using a helper macro.

Adds a new macro to replace these instructions, including a screenshot
of the latest UI for selecting a bot type.
2022-09-09 16:31:33 -07:00
David Rosa 620854d437 integrations: Add incoming webhook macro to relevant docs.
Several integration docs instruct the user to create a bot, but don't
specify that the type of bot should be "Incoming webhook".

Renames create-a-bot.md -> create-an-incoming-webhook.md for clarity,
and replaces all incomplete instructions with this macro.
Renames bot_types.png -> bot_types_incoming_webhook.png and updates
the image with a screenshot of the latest UI.
2022-09-09 16:31:33 -07:00
Raghav Luthra 4dad9fa158 user_settings: Add user setting to control the user list style.
Added a user_list_style personal user setting to the bottom of
Settings > Display settings > Theme section which controls the look
of the right sidebar user list.

The radio button UI includes a preview of what the styles look like.

The setting is intended to eventually have 3 possible values: COMPACT,
WITH_STATUS and WITH_AVATAR; the final value is not yet implemented.

Co-authored-by: Tim Abbott <tabbott@zulip.com>
2022-09-09 16:30:54 -07:00
Mateusz Mandera 95bc77ae4f help center: Update "SAML authentication" to follow help center guidelines.
Co-authored-by: Alya Abbott <alya@zulip.com>
2022-09-09 10:30:05 -07:00
Anders Kaseorg 7d485aa58f docs: Correct more “webapp” to “web app”.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2022-09-08 20:23:28 -07:00
Zixuan James Li 6b527dfa61 integrations: Add documentation for the event filtering system.
We create "event-filter-instruction.md" and add it to
"create-bot-construct-url.md". This allows the user to keep track of the
supported event types for most of the integrations that implement this
feature. Note that not all integrations use "create-bot-construct-url.md".

We also need to rename "function" to "view_function" to make this change
type-check.

This is relevant to #18392.

Signed-off-by: Zixuan James Li <p359101898@gmail.com>
2022-09-08 13:37:35 -07:00
Lauryn Menard 7f738803f0 help-docs: Rename organization language help center file.
Renames article about organization language used for automated
messages and invitation emails. Creates URL redirect and updates
links in repository (web app, help center and api documentation).

Prior to this change, the article was named:
'change-the-default-language-for-your-organization'.

Fixes #21949.
2022-09-07 09:45:37 -07:00
Lauryn Menard 049302fe61 templates: Rename `OPEN_GRAPH` variables to `PAGE` or `PAGE_METADATA`.
Renames existing template variables starting with `OPEN_GRAPH` to be
either `PAGE` or `PAGE_METADATA` since these variables are used for
adding both open graph metdata and page titles/descriptions for SEO.
2022-09-06 14:57:06 -07:00
Alya Abbott 5d4c5686eb help center: Add question about Free plan to Zulip Cloud Billing page. 2022-09-02 15:50:31 -07:00
Alya Abbott 9c2820b59e help center: Add warnings/advice to "Import from Slack" page.
- Add a reminder to ensure users send the correct export token
- Ask administrators to inform users about their new Zulip account
  prior to doing an automated password reset.
2022-09-02 11:44:55 -07:00
Danish fa02eb6c93 README: Tweak grammar and minor language details.
With some additional edits by tabbott.
2022-09-01 11:57:32 -07:00
Khushiyant 8609c441ff images: Move Giphy images into proper subdirectories.
The logo were only used in the integration documentation and belong in
static/images/integrations/giphy/; the in-app image is given its own
directory.

Fixes #22464.
2022-08-30 22:40:59 -07:00
Khushiyant bfd38b3297 images: Move error/loading images into subdirectories.
Fixes part of #22464.
2022-08-30 22:40:59 -07:00
Alya Abbott 6e2f1dc0a7 help center: Create documentation for read receipts. 2022-08-30 16:02:17 -07:00