Commit Graph

8122 Commits

Author SHA1 Message Date
Vaibhav 9096affe77 css: Move stylesheets not included in the app to another directory.
This moves all the stylesheets like stats, billing etc. to another
directory called `static/styles/portico/`, matching the directory
structure of our JavaScript.
2019-06-12 16:59:52 -07:00
Yashashvi Dave ee072da47a static/js/settings_notifications: Deduplicate code. 2019-06-12 16:24:51 -07:00
Yashashvi Dave 8e269b4651 models: Rename notification to `enable_stream_audible_notifications`.
Rename notification property `enable_stream_sounds` to
`enable_stream_audible_notifications` to match with other
notification property patterns.

Fixes part of #12304
2019-06-12 16:24:51 -07:00
Alexandra Ciobica 8f9fa151a6 css: Center left sidebar `Add streams icon`.
The `+` from the add streams button was not on the same line as the
`#`s and the text was not aligned with streams name.  These changes
fix that.
2019-06-12 16:22:51 -07:00
Alexandra Ciobica 7544d0eb11 css: Add space below `Add streams button`.
This ensures the browser's showing the link feature doesn't occlude
this button.

Fixes: #12519.
2019-06-12 16:22:02 -07:00
Seth Nickell 93696729c6 notifications: Disable default permission pop up.
Prior to this commit, we'd put up the green "Enable desktop
notifications" bar on page load AND the first time a desktop
notification worthy message was received, it would attempt to notify,
automatically triggering a browser permission popup (the same one as
clicking the green bar results in).

Now, desktop notifications are not attempted at all until the green
bar is clicked. Additionally Firefox and Webkit browser-specific
checks are made more uniform and done at the same point.

Tested written by YashRE42.

Fixes #11504.
2019-06-12 16:12:13 -07:00
Alexandra Ciobica 161d196759 css: Add nightmode variant for fetching more messages loading indicator
Fixes: #12522.
2019-06-07 10:45:29 -07:00
Yashashvi Dave ac0d60f577 settings_profile_fields: Extract func `set_up_choices_field_edit_form`. 2019-06-06 22:36:16 -07:00
Yashashvi Dave 1fef813914 static/js/settings_account: Clean function `append_custom_profile_fields`. 2019-06-06 22:36:16 -07:00
Rishi Gupta 799a5e73c0 settings: Remove spurious colons after label text. 2019-06-06 22:17:04 -07:00
Rishi Gupta 49f8b9abbe help: Add manage-inactive-streams. 2019-06-06 22:17:03 -07:00
Priyank Patel b70bd6be30 tests: Add tests for the logic of typing_status.handle_text_input.
This tests was added to make sure we catch subtle bug related to
comparing new_recipient and current_recipient. When we changed the
recipient to use arrays instead of string to use new user IDs based
api we encoured this bug and out testing suite couldn't detect this.
2019-06-06 19:56:24 -07:00
Priyank Patel b8250fc61e typing: Use user IDs instead of user ids string. 2019-06-06 19:56:24 -07:00
Priyank Patel 5228403eb5 people: Refactor out user id string to array function. 2019-06-06 19:56:24 -07:00
Tim Abbott 3b502fa235 settings: Fix getting API key when using social auth.
Long-term, we want this flow to do a full re-authentication, but this
makes the frontend consistent with the backend and fixes a confusing
bug where submitting the form ended up adding a weird `?password=`
thing to the URL, in addition to not working.

Fixes #12200.
2019-06-06 17:05:34 -07:00
Thomas Ip 5b94e1dfad jQuery: Remove unnecessary :first selectors.
See example here: https://jsbin.com/relewizita/edit?html,js,output
Basically the original statement get the first of each input, button
and select element, and then select the first of these in the next
line. We can simply query the first one in one step. The settings
menu have at most 20 of these input elements so performance should
have no impact.
2019-06-06 15:21:26 -07:00
Thomas Ip b72f30bd06 jQuery: Replace positional selectors at the end of multiple selectors.
A selector like `$('.elem1 .elem2:first')` selects the first descendant
with class name `.elem2` under `.elem1`. This is the same as saying
`$('.elem1 .elem2').first()`. See example here:
https://jsbin.com/bohehesari/edit?html,js,output
2019-06-06 15:21:26 -07:00
Thomas Ip 6cad1988a9 jQuery: Use positional methods on single selectors.
For selectors like `$('.element:first')`, we can simply write
`$('.element').first()`.
2019-06-06 15:21:26 -07:00
YashRE42 869aaba6a7 overlays: Fix stream edit click-through bug.
Fixes #12369.
2019-06-06 14:57:16 -07:00
Vaibhav 90a67a6b4f css: Use SCSS nesting in alerts.scss for `.alert`. 2019-06-06 11:41:35 -07:00
Vaibhav 4b315a63cc css: Cleanup alerts.scss combing rules under same selector `.alert`. 2019-06-06 11:41:35 -07:00
Vaibhav 7c51e59a35 css: Use SCSS nesting in alerts.scss for `.alert-box`. 2019-06-06 11:41:35 -07:00
Vaibhav b04e1c918a css: Reorder alerts.scss so `.alert-box .alert` are in same place. 2019-06-06 11:41:35 -07:00
Vaibhav 9f5b1f19e9 css: Use SCSS nesting in alerts.scss for `.alert`. 2019-06-06 11:41:35 -07:00
Vaibhav af5d3769a7 css: Nest `.hotspot-popover` arrows inside `.hotspot.overlay`.
No changes were required in night mode since the night-mode css
already includes the same level of nesting.
Tested visually as well.
2019-06-05 17:08:59 -07:00
Vaibhav 4c41bc1324 css: Use SCSS nesting in hotspots.scss for `.hotspot-popover`. 2019-06-05 17:08:59 -07:00
Vaibhav d43548c7ca css: Use SCSS nesting in hotspots.scss for `.hotspot-popover.arrow-*`. 2019-06-05 17:08:59 -07:00
Vaibhav 209b16e667 css: Use SCSS nesting for in hotspots.scss for `.hotspot-confirm`. 2019-06-05 17:08:59 -07:00
Vaibhav 2b6acbfe03 css: Nest hotspot inline elems inside `.hotspot-inline`.
No changes required here for night-mode.
2019-06-05 17:08:59 -07:00
Vaibhav ce34fe51cd css: Use SCSS nesting in hotspots.scss for `.hotspot-inline`. 2019-06-05 17:08:59 -07:00
Vaibhav 9db1a5458d css: Reorder hotspots.scss so `.hotspot-inline` are in same line. 2019-06-05 17:08:59 -07:00
Vaibhav 74e6b5c926 css: Use SCSS nesting in hotspots.scss for `.hotspot.overlay`. 2019-06-05 17:08:59 -07:00
Vaibhav 5f18cc16b7 css: Reorder hotspots.scss so `.hotspots.overlay` are in same place. 2019-06-05 17:08:59 -07:00
Vaibhav 25db1d953d css: Use SCSS nesting in hotspots.scss for `.hotspot-icon`. 2019-06-05 17:08:59 -07:00
Vaibhav e664eb736a css: Reorder hotspots.scss so `.hotspot-icon` are in same place. 2019-06-05 17:08:59 -07:00
Vaibhav a52c157dd3 css: Add similar nesting to night-mode emoji elements as in reactions.scss.
Due to additional nesting added in reactions.scss, night-mode styles
were prioritized lower than the original rules defined.

Fixes regressions introduced by changes in PR #12473
2019-06-05 12:36:53 -07:00
Vaibhav 25b063ad95 css: Setup `.tab-switcher.allow-overflow` for informational overlays.
This changes the information-overlay tab-switcher to have the class
`.allow-overflow` too.

Fixes a regression introduced in 30da8bdf9b.
2019-06-04 00:43:51 -07:00
sahil839 5a130097bf settings: Add display setting for demoting inactive streams.
This adds a setting to control Zulip's default behavior of sorting to
bottom and graying out inactive streams.  The previous logic is still
the default "automatic", but this gives users more control.  See the
models.py comment for details.

Fixes #11524.
2019-06-03 23:07:56 -07:00
YashRE42 1ab4eaf819 stream_list: Pinned streams are never grayed out as inactive.
We have had a longtime bug where the state of pinned streams would not
update properly from the greyed out/inactive state to the active state
when a first message arrived to them.

After some discussion, we determined that likely the right fix for
this is to simply configure pinned streams to never be marked as
inactive; that's more in line with the intended user experience.

Fixes #8201.
2019-06-03 17:23:01 -07:00
Vaibhav 3444691fc1 css: Nest elems inside `.emoji-info-popover`.
These include:
* `.emoji-showcase-container`
* `.emoji-popover`
2019-06-03 15:30:51 -07:00
Vaibhav c6071c0d7a css: Reorder so that elems inside emoji info popover are together. 2019-06-03 15:30:51 -07:00
Vaibhav 14a850dcb4 css: Nest elements inside `.emoji-popover`.
These include:
* `.emoji-popover-top`
* `.emoji-popover-category-tabs`
* `.emoji-popover-emoji-map`
* `.emoji-search-results-container`
* `.emoji-popover-emoji`
2019-06-03 15:30:51 -07:00
Vaibhav 3d21cb4bea css: Reorder reactions.scss so elems inside emoji popover are together. 2019-06-03 15:30:51 -07:00
Vaibhav e33f8f0730 css: Nest popover subheading inside emoji map. 2019-06-03 15:30:51 -07:00
Vaibhav 7189de9722 css: Seperate height of emoji map from results container.
The only difference between emoji popover map and results container
is their height. For the results container the height is overridden
in the next rule. Seperating just makes it clearer that both of them
have the same styles except for the height. This also makes it easier
to nest the sub-heading inside the map in the following commit.
2019-06-03 15:30:51 -07:00
Tim Abbott ddb9d41288 i18n: Update translation data from Transifex. 2019-06-03 15:29:56 -07:00
vinitS101 59c38a3598 settings: Show message in empty linkifier and custom emoji tables.
Show placeholder messages to the user if the Linkifier and Custom emoji
tables are empty.
The linkifier page does not show the message to the admin as there are
other UI elements in the table.

Resolves #12453.
2019-06-03 13:03:07 -07:00
Yashashvi Dave 516d189cf6 org settings: Fix missing <th> element in deactivated-user setting. 2019-06-03 12:51:56 -07:00
Vaibhav 62b1ccee26 css: Nest emoji results heading inside results container. 2019-06-03 12:36:32 -07:00
Vaibhav 1f425d8e58 css: Nest emoji preview and canonical name inside showcase container. 2019-06-03 12:36:32 -07:00
Vaibhav a418984bf2 css: Nest `.message_reaction .emoji` inside `.message_reactions`. 2019-06-03 12:36:32 -07:00
Thomas Ip 537014ee47 dependencies: Upgrade typescript to 3.5.1. 2019-06-03 12:24:00 -07:00
Thomas Ip 1268616ca2 dependencies: Upgrade @typescript-eslint/eslint-plugin to 1.9.0.
Updated .eslintrc with new rules.
2019-06-03 12:24:00 -07:00
Vaibhav 30da8bdf9b css: Rename info-overlay tab-switcher to `.tab-switcher.allow-overflow`.
This apparently is no longer used in any place hence there were no
changes required in the templates.
2019-06-03 12:16:16 -07:00
Vaibhav 56e97d5c37 css: Use SCSS nesting in app_components.scss for `.new-style`. 2019-06-03 12:16:16 -07:00
Vaibhav c6b50fbba6 css: Add `:focus` rule for `.new-style .button.btn-warning`.
Same as the `:hover` rule similar to other buttons.
2019-06-03 12:16:16 -07:00
Vaibhav 09791b9c29 css: Use SCSS nesting in app_components.scss for `.button`. 2019-06-03 12:16:16 -07:00
Vaibhav 331f1fc4b7 css: Reorder app_components.scss so `.button` are in same place. 2019-06-03 12:16:16 -07:00
Vaibhav 6d588b683c css: Use SCSS nesting in app_components.scss for `.tab-switcher`. 2019-06-03 12:16:16 -07:00
Vaibhav 8ebc8602a5 css: Reorder app_components.scss so `.tab-switcher .ind-tab` are together. 2019-06-03 12:16:16 -07:00
Vaibhav 5460c4fce5 css: Use SCSS nesting in app_components.scss for `.informational-overlays`. 2019-06-03 12:16:16 -07:00
Vaibhav a3ec301218 css: Reorder app_components.scss so `.informational-overlays` are seperate.
Two rules corresponding to `.informational-overlays` were placed among the
`.new-style` rules. The file is reordered to seperate them.
2019-06-03 12:16:16 -07:00
Vaibhav 082e0bc6f6 css: Use SCSS nesting in app_components.scss for `.overlay`. 2019-06-03 12:16:16 -07:00
Vaibhav 6abd05f77b css: Reorder app_components.scss so that `.overlay.show` are in one place. 2019-06-03 12:16:16 -07:00
Vaibhav ff7aedd78a css: Use SCSS nesting in app_components.scss for `.clear_search_button`. 2019-06-03 12:16:16 -07:00
Rishi Gupta 849bc382f9 portico: Remove core-team profiles from /team.
This makes the Zulip team look smaller than we are.
2019-06-03 12:14:40 -07:00
vinitS101 ed3e9be142 org_settings: Add collapse/show settings button for users and guests.
For non-admins some organisation settings tabs are 'collapsed' by default.
A button at the bottom of these settings can be used to toggle
show/collapse for these settings tabs.

Resolves #12313.
2019-05-31 22:42:02 -07:00
Puneeth Chaganti 9aa5a2b369 url preview: Use oEmbed html for videos.
Ensure that the html is safe, before using it. The html is considered if it is
in an iframe with a http/https src, based on the recommendations here:
https://oembed.com/#section3

We directly embed the `iframe` html into the lightbox overlay.
2019-05-31 15:59:03 -07:00
Kleidi Eski 4d8ee17a98 images: Add header design for Zulip Twitter account. 2019-05-31 15:24:56 -07:00
Yashashvi Dave 7d75cdef7f subs: Rename `in_home_view` checkbox-setting template element. 2019-05-30 21:39:06 -07:00
Yashashvi Dave 2a943d3b40 static/js/stream_muting: Rename `update_in_home_view` function. 2019-05-30 21:39:06 -07:00
Yashashvi Dave 784d02bf60 static/js/stream_data: Rename `in_home_view` functions. 2019-05-30 21:39:06 -07:00
Yashashvi Dave 40f550038d subs: Replace all `in_home_view` uses with `is_muted` property.
Replace all uses of `in_home_view` subscription property
with `is_muted` property in frontend.

Fixes #12322
2019-05-30 21:39:06 -07:00
Pragati Agrawal 69ec96b63e search suggestion: Hide email under hidden email-address-visibility cases.
This commit hides the email address from the search bar for the email
hidden cases.
2019-05-30 16:22:54 -07:00
Shubham Dhama 03d188b5bd settings_org: Fix show_email function when email visibility is admin only.
`show_email` function should return false when email visibility is set
anything other than `everyone` (, for now, irrespective of privileges).
2019-05-30 16:22:54 -07:00
Shubham Dhama c691ed433b settings_org: Fix the typo in `settings_org.show_email()` function. 2019-05-30 16:22:54 -07:00
YashRE42 5ff27c130a info-overlay: Fix "message formating" styling.
This reverts the temporary solution from 04d9d1d and introduces a
better, more permanent solution for the same bug.
2019-05-30 16:18:54 -07:00
YashRE42 43bc1d4d5a info-overlay: Increase size of arrow icons. 2019-05-30 16:18:54 -07:00
YashRE42 5f1a32a9ee arrow-icons: Replace ⇽ , ⇾ with ← , → everywhere.
We were using these hollowed out arrows characters (⇽ , ⇾) in a few
places, these were inconsistent with the solid up and down arrow
characters (↑ , ↓) we use otherwise. This commit replaces them
everywhere in the codebase.
2019-05-30 16:18:54 -07:00
Vaibhav f366c50913 user_info: Add bot owner to the user info popover.
This includes all the changes on the frontend side to include the
bot owner in the popover. Includes the bot owner name as a link which
opens the full profile of the bot owner.

For bots without any owner (such as Notification Bot or Welcome Bot)
in place of bot owner name, 'System Bot' appears for cross realm bots
and 'Bot' for in-realm bots.

Fixes #10844.
2019-05-30 15:45:56 -07:00
Vishnu Ks b7d210a932 billing: Use javascript onhashchange handler instead of jQuery one.
Makes it easier to obtain the onhashchange handler
in node tests.
2019-05-30 10:34:56 -07:00
Vishnu Ks 5fc538cac0 billing: Use on(click) instead of click handler.
Makes it easy to get the click handler in node tests.
2019-05-30 10:34:56 -07:00
Vishnu Ks 50989a3380 billing: Use location.hash instead of window.location. 2019-05-30 10:34:56 -07:00
Puneeth Chaganti 75635844db lightbox: Set URL in payload instead of computing from video IDs.
Lightbox previews for youtube playlists use the "current" video in the playlist
for the preview. The open link for such previews is incorrectly set to the first
video alone, and not the playlist. This commit fixes the bug by linking to the
original URL for lightbox preview is being shown, instead of computing the URL.
2019-05-29 23:01:54 -07:00
Rishi Gupta 6d92d628a6 scrollbar: Add data-simplebar-auto-hide=False to several modals.
We're changing our style to always show the scrollbar on the right
pane of modals, because that makes it consistently clear when there
are more items below.
2019-05-29 16:45:42 -07:00
Tim Abbott 49b261b211 i18n: Update translation data from Transifex. 2019-05-28 17:03:35 -07:00
Vaibhav 61371cbe9a user_info: Add `bot_owner_id` to user info dataset.
Modifies the dict with the user info to include the key `bot_owner_id`
so it can be displayed in the user info popover.

Tests concerned with changing bot owner have been modified to have
number of events=2 because while updating the bot info, two events
are fired -- updating the `realm_bot` and `realm_user` since the
key `bot_owner_id` is a part of realm user info.
2019-05-28 12:41:52 -07:00
Rishi Gupta 0eeae3b6d0 email visibility: Enable feature and add user documentation. 2019-05-27 23:21:39 -07:00
Rishi Gupta ca942b4878 settings: Restructure CSS for fa-question-circle-o.
There are only two of these icons in the codebase, so it is a relatively
safe change.

Making this change to make it easier to add this icon to labels and other
places in settings.
2019-05-27 23:14:26 -07:00
Puneeth Chaganti b9eb2aa8e8 lightbox: Switch to using one argument variation of $(...). 2019-05-27 23:07:07 -07:00
Priyank Patel 3f32ffc4eb compose: Use new ID-based api for sending messages.
This only happens if the realm is not a zephyr realm.

Finishes part of #9474.
2019-05-27 22:58:42 -07:00
Vaibhav eed09527d5 css: Use SCSS nesting in components.scss for `.new-style`. 2019-05-27 22:50:11 -07:00
Vaibhav f6051d8819 css: Use SCSS nesting in components.scss for `.simplebar-track`. 2019-05-27 22:50:11 -07:00
Vaibhav 5cc331b93f css: Cleanup CSS corresponding to `.flex-row .field`.
A `.field` element already has left margin set as 10px and setting
left-margin explicitly for a `.field + .field` equal to the same
value is redundant. This rule is removed.

Margin is set as `10px 10px` which can be equivalently written as
`10px`.
2019-05-27 22:50:11 -07:00
Vaibhav c50206b824 css: Use SCSS nesting in components.scss for `.flex-row`. 2019-05-27 22:50:11 -07:00
Vaibhav 95ab1f238e css: Reorder components.scss so that `.flex-row` are in same place. 2019-05-27 22:50:11 -07:00
YashRE42 04d9d1d27a info-overlay: Fix "message formating" styling.
The introduction of ".rendered_markdown table" in 00eaf3a, caused some
styling glitches in the "message formatting" overlay, such as an extra
right border and darker internal borders. This commit fixes these
glitches by duplicating bootstrap's table styles.
2019-05-27 14:39:09 -07:00
YashRE42 c2e5aa0f1e info-overlay: Shrink bubble around small_hotkey.
Adding a line-height here makes the bubble around the keys smaller which
makes the text within the bubble seem better aligned.
2019-05-27 14:39:09 -07:00
Anders Kaseorg 08f2ef0893 settings: Disable auto-hide on right pane scrollbar.
Fixes #11694.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-05-24 17:44:21 -07:00
Anders Kaseorg eec608d6a3 css: Improve SimpleBar scrollbar contrast.
Show black scrollbars with a thin light border in day mode, or white
scrollbars with a thin dark border in night mode (both at 50%
opacity).  This matches the native scrollbars on macOS pretty closely.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-05-23 17:26:19 -07:00