Commit Graph

3047 Commits

Author SHA1 Message Date
Aditya Bansal ae398dc48b csp_nonce: Add nonce to script tags loading minified JS. 2018-04-24 06:13:21 +05:30
Aditya Bansal 8c0a5c69f3 csp: Dynamically generate and add nonce to script tags. 2018-04-24 06:13:21 +05:30
Vishnu Ks 7533796ea9 popover: Add an option to show user profile.
Fixes #8880
2018-04-23 16:56:24 -07:00
Tim Abbott 1703e23980 templates: Move all core app templates into a subdirectory.
This should make it easier to find the templates that are actually
part of the core webapp, instead of having them all mixed together
with the portico pages.
2018-04-23 16:46:37 -07:00
Eeshan Garg 3df759337d integrations/capistrano: Update docs to conform to style guide.
Thanks to Wes of TurboVote for submitting this integration!
https://gist.github.com/cap10morgan/5100822
2018-04-23 11:43:15 -07:00
Vishnu Ks c9e932a7ce settings: Add support for Hangouts as the video chat provider.
The only thing that's annoying about this feature is that you need to
be a paying G Suite customer to use it.
2018-04-23 09:39:47 -07:00
Tim Abbott c88163eea8 auth: Make "Continue to registration" actually register you.
The main change here is to send a proper confirmation link to the
frontend in the `confirm_continue_registration` code path even if the
user didn't request signup, so that we don't need to re-authenticate
the user's control over their email address in that flow.

This also lets us delete some now-unnecessary code: The
`invalid_email` case is now handled by HomepageForm.is_valid(), which
has nice error handling, so we no longer need logic in the context
computation or template for `confirm_continue_registration` for the
corner case where the user somehow has an invalid email address
authenticated.

We split one GitHub auth backend test to now cover both corner cases
(invalid email for realm, and valid email for realm), and rewrite the
Google auth test for this code path as well.

Fixes #5895.
2018-04-22 19:55:05 -07:00
Tim Abbott b91de0e283 i18n: Pass the name of the single-sign on system into strings.
This should avoid us needing to add a new set of translated strings
every time we add a new authentication method.
2018-04-22 13:34:37 -07:00
Shubham Dhama 26d2ffa821 populate_db: Add new user of "guest" type.
The purpose of this user is to act as a guest.
(This is a preliminary step in adding the guest type of user
and is a part of #8385.)
2018-04-20 16:20:00 -07:00
Rishi Gupta 6c8a266119 portico: Update meta tags. 2018-04-20 12:13:50 -07:00
Tim Abbott 7ef23a0139 slack import: Document how to send password resets to all users.
This is likely to be an important follow-up step after one finishes
the Slack import.
2018-04-20 10:56:06 -07:00
Cynthia Lin f1db3a681a compose: Refactor compose box from `<table>` to `<div>` structure.
`<td>` elements are fixed-width, so we refactor the entire
`<table>` structure for responsive design.

This fixes a bug with how the `To:` block looks in other languages.

Fixes #9152.
2018-04-19 22:51:13 -07:00
Akash Nimare 1a124ad865 portico: Add open graph and twitter meta tags to all pages.
This PR adds few basic meta tags which are required for a better SEO.

Fixes: #8255.
2018-04-19 22:10:27 -07:00
Preston Hansen e168f9938c tests: Refactor use of test and webhook data fixtures. 2018-04-19 21:50:29 -07:00
Preston Hansen 76d6c71595 tests: Move zerver/fixtures to zerver/tests/fixtures for clarity.
Fixes #9153.
2018-04-19 21:50:17 -07:00
Rishi Gupta 3f94a62309 portico: Add contact info to FAQ. 2018-04-19 12:48:27 -07:00
Eeshan Garg 19177a4aff webhooks: Move github_webhook/ to github/. 2018-04-19 11:00:55 -07:00
Tim Abbott 2cc3fb7564 slack import: Fix documentation on path to run manage.py. 2018-04-19 10:32:58 -07:00
Rishi Gupta cf40aa4763 portico: Add export advertisement to FAQ. 2018-04-19 09:40:11 -07:00
Akash Nimare 9d9d84ffd2 portico: Minor UI fix in plans page.
Renamed zulip-cloud class to responsive-title so that
we can re-use this class in other sections also.

Fixes: #9133.
2018-04-19 03:05:57 +05:30
Tim Abbott bad04c761f docs: Recommend upgrading when doing Slack import. 2018-04-18 12:28:52 -07:00
Shubham Dhama 03a2a9c792 activity: Add realm stats link to "realm activtiy table". 2018-04-18 11:07:00 -07:00
Shubham Dhama b26c38bc47 analytics: Make stats of all realms accessible to server admins.
In this commit:
Two new URLs are added, to make all realms accessible for server
admins. One is for the stats page itself and another for getting
chart data i.e. chart data API requests.
For the above two new URLs corresponding two view functions are
added.
2018-04-18 11:06:50 -07:00
Tim Abbott 3e117fba21 footer: Add a link to the blog.
This doesn't look amazing, but it's better than not linking to the
blog, and adding a 6th line both makes the footer excessive and also
breaks some styling in pages like /login that assume a fixed footer
height.
2018-04-18 10:44:18 -07:00
Tim Abbott 63ca175991 hello: Fix link to legacy GitHub integration. 2018-04-18 10:40:35 -07:00
Tim Abbott a03fbea25b website: Fix a few out-of-date numbers. 2018-04-17 17:17:54 -07:00
Tim Abbott 1ec276b3a8 release: Update version strings following 1.8.0 release. 2018-04-17 17:12:20 -07:00
Tim Abbott d340c8d46d docs: Fix broken link in /for/companies.
I guess these pages are not covered by tools/test-documentation.
2018-04-17 13:36:35 -07:00
Tim Abbott c224114287 /api: Clean up the API documentation homepage. 2018-04-16 15:54:39 -07:00
Tim Abbott d09071bbc9 /api: Add an overview doc for the REST API. 2018-04-16 15:51:13 -07:00
Tim Abbott 89704df167 /api: Move list of REST endpoints to a template. 2018-04-16 15:50:53 -07:00
Tim Abbott ea266f1b80 /api: Expand "common errors" page to more generally cover error handling. 2018-04-16 15:50:52 -07:00
Cynthia Lin 7cbc9f40bf compose: Change styling of upload progress bar.
Related to #9095.
2018-04-16 09:46:35 -07:00
Aditya Bansal 113c1a81ea index.html: Refactor 'javascript:' URI to be written as JavaScript block.
This is important because we intent to start using CSP in our main
app which means dropping of any inline event handlers
(onclick="...", onerror="...") and <a href="javascript:...">
links that can be used to run scripts.
2018-04-13 11:10:06 -07:00
Lyla Fischer 390eeaab5b help: Remove follow-steps doc macro. 2018-04-11 16:44:08 -07:00
Lyla Fischer 00255ad7c0 help: Remove the go-to-the macro. 2018-04-11 16:44:08 -07:00
Tim Abbott e6833b6427 cleanup: Remove the legacy Dropbox file upload integration.
This has been hard-disabled for years, we have no plans to re-enable
it, and it has some hacky code in it.
2018-04-11 11:39:48 -07:00
Tim Abbott c3df378ca1 slack import: Document that this is a new feature in 1.8. 2018-04-08 07:11:07 -07:00
Aditya Bansal b9f1acb300 linter: Enforce 2 space indents on tags spread over multiple lines.
We make some specific cases of tags use 2 space indents.
The case description:
* A tag with opening tag spread over multiple lines and closing tag
on the same line as of the closing angle bracket of the opening tag.
* A tag with opening tag spread over multiple lines and closing tag
not on the same line as of the closing angle bracket of the opening
tag.

Example:
Case 1:

Not linted:
<button type="button"
class="btn btn-primary btn-small">{{t "Yes" }}</button>

After linting:
<button type="button"
  class="btn btn-primary btn-small">{{t "Yes" }}</button>

Case 2:

Before linting:
<div class = "foo"
     id = "bar"
     role = "whatever">
     {{ bla }}
</div>

After linting:
<div class = "foo"
  id = "bar"
  role = "whatever">
    {{ bla }}
</div>
2018-04-07 20:08:44 -07:00
Aditya Bansal 2fe012ffff linter: Make html singleton tags use 2 space indentation. 2018-04-07 20:08:31 -07:00
Vishnu Ks e92838a31f registration: Catch email validation error and show error message. 2018-04-06 15:18:32 -07:00
Rhea Parekh 2baa9bc16e Import: Add subdomain in the import script.
Also remove user input of subdomain in the slack data
conversion script.
2018-04-06 09:12:56 -07:00
Balaji2198 605916f6d7 compose: Add subscribe button to the not subscribed stream error message.
Before that, we needed to go the stream settings to subscribe to a
particular stream.

Fixes #3877.
2018-04-05 17:15:18 -07:00
Cynthia Lin c5d5efa9be portico-signin: Remove fixed-width styling for OR lines.
Fixes #8977.
2018-04-05 15:25:36 -07:00
Eeshan Garg 42fb91de33 macros: Update link to installation instructions for API bindings.
This changed a while ago when we restructured our API docs.
2018-04-05 14:48:37 -07:00
Rishi Gupta a29b1c1569 help: Update change-your-name. 2018-04-05 14:46:32 -07:00
Rishi Gupta f4737e77b0 help: Update view-an-image-at-full-size. 2018-04-05 14:46:32 -07:00
Rishi Gupta efecad2355 help: Update view-and-edit-your-message-drafts. 2018-04-05 14:46:32 -07:00
Tim Abbott 57ca19392e help: Make API context available to sidebars.
I am not a fan of this API (where we need to pass context into
`render_markdown_path` directly), but it seems more robust to pass
this in directly.
2018-04-05 12:22:41 -07:00
Tim Abbott f1ece37455 help: Fix context not being passed properly to rendering.
This contributed to settings_html, subscriptions_html and friends not
being rendered properly in the /help/ views.
2018-04-05 11:43:48 -07:00
Rishi Gupta 5740af27d6 help: Update import-data-from-slack. 2018-04-05 08:49:40 -07:00
Tim Abbott ecec489e7e docs: Further update the Slack import instructions.
* Removes the confusing notes about supporting only the Slack standard
  plan.
* Removes the confusing notes about importing users from a
  different organization.
* Clarifies a few sections, improves formatting, etc.
2018-04-04 10:38:29 -07:00
Rhea Parekh 48e219e880 docs: Update import data from slack doc. 2018-04-04 10:18:59 -07:00
Tim Abbott 938c4cee08 settings: Add option to control Jitsi video chat integration.
Fixes #8922.
2018-04-02 16:55:16 -07:00
Anurag Sharma 1227857de6 hotkeys: Replace C with x for composing PM.
Pressing the 'x' key can now be used to compose a PM.
Pressing the 'C' key displays a modal that shows a deprecation notice.

Fixes #6548.
2018-04-01 16:13:05 -07:00
Rishi Gupta 96845147c9 help: Fix a few errors in edit-or-delete-a-message.md.
Still some errors (e.g. "Hover over a message to replace the message's
timestamp with its message actions" is no longer correct), and a lot of
other improvements to be made, but just doing a quick fix of a few things I
noticed.
2018-03-30 10:55:23 -07:00
Umair Khan c14cefc24c settings: Add support for adding/removing custom profile fields.
Now that we have support for displaying custom profile fields, this
adds administrator-level support for creating them.

Tweaked by tabbott to fix a few small bugs and clean up the commit message.

Fixes #1760.
2018-03-29 13:59:16 -07:00
Yago González 044fb0a42b i18n: Fix handling of OR on login/register pages.
Closes #8860
2018-03-29 11:13:59 -07:00
Eeshan Garg ee895fa182 integrations/rss: Recommend integrating RSS via Zapier.
An integration with RSS can be much easier to set up with Zapier.
Since the current RSS integration predates Zapier, we should at
least mention that there is an easier way to set it up via
Zapier!
2018-03-25 08:58:08 -07:00
Eeshan Garg 538746fc65 webhooks: Stop raising an exception if stream does not exist.
webhook-errors.log file is cluttered with Stream.DoesNotExist
errors, which hides the errors that we actually need to see. So,
since check_message already sends the bot_owner a PM if the webhook
bot tries to send a message to a non-existent stream, we can ignore
such exceptions.
2018-03-24 13:50:17 -07:00
sinwar 675e844e6b team page: Add contributors of zulip-terminal.
It adds zulip terminal contributions to
team page using github apis.
2018-03-22 21:06:18 -07:00
sinwar 1ea6bee263 team page: Clean up navbar.
It replace Zulip server with Server and
Javascript API with JS API in navbar.
2018-03-22 21:06:18 -07:00
Anupam-dagar 865480ec42 portico: Fix positioning of "disposable email address" errors.
Modified by tabbott to prevent losing the frontend errors, and make it
more clear which errors are from the frontend vs. backend.

Fixes: #8784.
2018-03-22 14:38:57 -07:00
Aditya Bansal 2a2df0ef5e auth: Make redirects to next work for REMOTE_USER based Apache SSO.
It's possible that this won't work with some versions of the
third-party backend, but tabbott has tested carefully that it does
work correctly with the Apache basic auth backend in our test
environment.
2018-03-21 14:01:05 -07:00
Aditya Bansal b62bdde303 login_redirects: Make redirects to narrows from login page work. 2018-03-21 13:35:44 -07:00
Aditya Bansal 1e48dac8f3 auth.py: Make redirects to 'next' url work for google and github.
In this commit we start to support redirects to urls supplied as a
'next' param for the following two backends:
* GoogleOAuth2 based backend.
* GitHubAuthBackend.
2018-03-21 13:35:44 -07:00
Aditya Bansal 9a100b1f55 auth.py: Make redirects to 'next' url work for dev environment.
This makes these redirects work for the local authentication
backend.
2018-03-21 13:35:44 -07:00
Shivam Gera a3bb819e4c docs: Fix broken link in features advertisement.
This adds a missing /keyboard-shorcuts to the /help/ link in the
Keyboard shorcuts section.
2018-03-20 22:05:48 -07:00
Tim Abbott 500fa9d2c1 webhooks: Improve explanation of setting specific topics. 2018-03-18 10:53:45 -07:00
Eeshan Garg 8fbd8c68f4 webhooks: Update macros to specify custom topics and default PMs.
These changes are the result of migrating to
check_send_webhook_message.
2018-03-18 10:53:45 -07:00
Eeshan Garg af56df7723 webhooks: Enable custom topics and default PM notifications.
This commit adds a generic function called check_send_webhook_message
that does the following:
* If a stream is specified in the webhook URL, it sends a stream
  message, otherwise sends a PM to the owner of the bot.
* In the case of a stream message, if a custom topic is specified
  in the webhook URL, it uses that topic as the subject of the
  stream message.

Also, note that we need not test this anywhere except for the
helloworld webhook. Since helloworld is our default example for
webhooks, it is here to stay and it made sense that tests for a
generic function such as check_send_webhook_message be tested
with an actual generic webhook!

Fixes #8607.
2018-03-16 11:34:20 -07:00
amanagr 301a28e58e docs: Add user guide for `Zulip in a Terminal`.
Text tweaked by tabbott.

Fixes #3361.
2018-03-15 15:13:05 -07:00
Lyla Fischer 7ce139a798 user docs: Remove view-messages-containing-files-or-links. 2018-03-12 20:07:17 -07:00
Lyla Fischer a94325de53 user docs: Move private message information to view-your-pms-and-group-pms. 2018-03-12 20:06:12 -07:00
Lyla Fischer ffa629bee5 user docs: Merge view-messages-from-a-stream and view-messages-from-a-topic. 2018-03-12 20:06:04 -07:00
Lyla Fischer e53f334fd6 user docs: Merge add and remove someone from a stream. 2018-03-12 18:14:17 -07:00
Lyla Fischer 835ac3dd85 user docs: Split label for change-the-privacy-of-a-stream. 2018-03-12 18:14:17 -07:00
Lyla Fischer 7912a118bf user docs: Add 'or archive' to label of delete-a-stream. 2018-03-12 18:14:17 -07:00
Lyla Fischer 502264f208 user docs: Merge user restrictions on email address and name. 2018-03-12 18:14:17 -07:00
Lyla Fischer e396897a06 user docs: Merge docs for organization name, avatar, and description. 2018-03-12 16:53:59 -07:00
Lyla Fischer 9b30fc9bf1 user docs: Add reference to notify-everyone-on-a-stream to notifications. 2018-03-12 16:53:54 -07:00
Lyla Fischer d85a5562fb user docs: Marge audible-notifications into desktop-notifications. 2018-03-12 16:53:45 -07:00
Vishnu Ks a44255eedb emails: Add backend for disallowing disposable email addresses. 2018-03-11 22:05:58 -07:00
Tim Abbott dfbe1e4914 notifications: Improve "why you were away" content lines.
We now include whether the message was a private or group private
message; this is particularly important with the new setting to
disable including any message content in these emails (since in that
case, one doesn't know anything about the message types).
2018-03-09 21:16:02 -08:00
YJDave c94b21e9ac settings: Add setting to disable message content in missed message emails.
Fixes #6938.
2018-03-09 21:16:02 -08:00
Vishnu Ks e5fb0961f5 help: Rename signing-out.md to logging-out.md. 2018-03-09 13:31:36 -08:00
Vishnu Ks cbadecb466 emails: Replace signing in with logging in.
Fixes #7884
2018-03-09 13:31:36 -08:00
Vishnu Ks e7005cfd0e help: Replace signin with login in zulip-on-android.md. 2018-03-09 13:31:36 -08:00
Vishnu Ks ff3a8f27c7 help: Rename signing-in.md to logging-in.md. 2018-03-09 13:31:36 -08:00
Vishnu Ks 8da2820024 help: Replace signin with login in signing-in.md. 2018-03-09 13:31:36 -08:00
Vishnu Ks 0d313aacb4 templates: Replace sign in with log in in register and login page. 2018-03-09 13:31:36 -08:00
Tim Abbott c0f5ac801d team: Fix ugly line-wrapping when showing total.
Eventually, we'll want a slightly different design for this section of
the page, for for now, "Total" is both clearer and fits better.
2018-03-07 17:25:42 -08:00
Tim Abbott 798fbb687c i18n: Rename 'Closed Realm' to 'Private organization'.
This is a clearer explanation for what the organization is like, anyway.
2018-03-07 17:15:29 -08:00
Steve Howell 3a1bf04a56 compose: Add pills for typing in PM recipients.
@brockwhittaker wrote the original prototype for having
pills in the recipient box when users compose PMs (either
1:1 or huddle).  The prototype was test deloyed on our
main realm for several weeks.

This commit includes all the original CSS and HTML from
the prototype.

After some things changed with the codebase after the initial
test deployment, I made the following changes:

    * In prior commits I refactored out a module called
      `user_pill.js` that implemented some common functions
      against a more streamlined version of `input_pill.js`,
      and this commit largely integrates with that.

    * I made changes in a prior commit to handle Zephyr
      semantics (emails don't get validated) and tested
      this commit with zephyr.

    * I fixed a reload bug by extracting code out to
      `compose_pm_pill.js` and re-ordering some
      calls to `initialize`.

There are still two flaws related to un-pill-ified text in the
input:

    * We could be more aggressive about trying to pill-ify
      emails when you blur or tab away.

    * We only look at the pills when you send the message,
      instead of complaining about the un-pill-ified text.
      (Some folks may consider that a feature, but it's
      probably surprising to others.)
2018-03-07 15:53:11 -08:00
Lyla Fischer 96c5bf5dcc user docs: Move make-an-announcement to notify-everyone-on-a-stream. 2018-03-06 17:11:20 -08:00
Lyla Fischer 05e18ef60b user docs: Merge two private message docs and mention shortcut. 2018-03-06 17:11:20 -08:00
synicalsyntax a615b21bde signup: Wrap hostname overflow with scrolling in realm creation form.
Tweaked by tabbott to adjust the widths a bit.

Fixes #8488.
2018-03-05 09:47:35 -08:00
amanagr 4d2c6efa09 help: Correct broken link and clarify email gateway integration.
This helps make it clear that this feature isn't supported on all
Zulip installations.
2018-03-05 09:26:10 -08:00
Yago González bb83486509 i18n: Keep URLs from being translated. 2018-03-04 15:44:12 -08:00
Marco Burstein bdb86f1b5e emoji: Add support for translating emoticons.
Add `translate_emoticons` to `prop_types` and `expected_keys`.
Furthermore, create a emoji-translating Markdown inline pattern.

Also use a JavaScript version of `translate_emoticons` and then use
this function during Markdown previews and as a preprocessor. This
is only needed for previews, because usually emoticon translation
happens on the backend after sending.

Add tests for emoticon translation, a settings UI, and a /help/ page
as well.

Tweaked by tabbott to fix various test failurse as well as how this
handles whitespace, requiring emoticons to not have adjacent
characters.

Fixes #1768.
2018-03-04 15:37:24 -08:00