Commit Graph

16360 Commits

Author SHA1 Message Date
Steve Howell 0c6fefba71 Move get_cleaned_pm_recipients() to helper module.
This break's typeahead_helper's dependency on
composebox_typeahead.
2017-03-18 10:35:52 -07:00
Steve Howell 7f43c0504b refactor: Rename fields for split_by_subscribers().
The old name 'subs' was confusing our tooling, since we have
a module called subs.js.
2017-03-18 10:35:52 -07:00
Steve Howell 7b1bfd6703 Break typeahead_helper's dependency on compose.js.
We now have typeahead_helper's callers pass in compose.stream()
when it's needed for sorting purposes.
2017-03-18 10:35:52 -07:00
Steve Howell 166f149ef9 refactor: Add current_stream parameter to functions.
This change makes our dependency on compose.stream_name() happen
in sort_recipients, so we compute it only once, and we can
more easily break the circular dependency.
2017-03-18 10:35:52 -07:00
Jeremy Philemon f6d01c8232 CSS: Make registration form responsive on <495px screen width. 2017-03-18 08:15:28 -07:00
Jeremy Philemon f68529e56c Add exit class to the cancel button in invite_user.html.
- Previously, in the invite users modal, the click event of Cancel
(button) triggered the submit-invitation event. (Naturally, if the form
is empty, this throws the validators and doesn’t exit the modal).
- This fixes the abnormal action by including the ‘exit’ class to the
cancel button in invite_user.html, line 36.
2017-03-18 08:12:57 -07:00
adnrs96 d172ea66c6 Clean pygments.css to use 4 space indents. 2017-03-18 08:06:19 -07:00
adnrs96 99616221db Clean portico.css to use 4 space indents. 2017-03-18 07:58:10 -07:00
adnrs96 134e8971aa Clean settings.css to use 4 space indents. 2017-03-18 07:58:10 -07:00
adnrs96 d78495a328 Clean left-sidebar.css to use 4 space indents. 2017-03-18 07:56:08 -07:00
dattatreya303 a61ff3e234 Prevent missed-message emails for deleted messages.
This of course only works in the 2 minute window where missed-message
emails are planned, but nonetheless likely avoids common cases of
emailing users with deleted messages.

Fixes: #3873.
2017-03-18 07:51:32 -07:00
Rishi Gupta ceac6d9c59 analytics: Remove stray comment from test_counts.py.
The "actual test that would be nice to do" was indeed done!
2017-03-17 21:58:51 -07:00
Umair Khan 645d7c295c Timezone should default to empty string.
Related to #1506
2017-03-17 21:57:16 -07:00
Raghav Jajodia 668d9cc6ca server_events: update admin bots on deactivate under settings tab.
Deactivating a bot in the /#settings/your-bots page update
the /#administration version to show a reactivate button.
2017-03-17 21:11:42 -07:00
Raghav Jajodia 89a83f6a5d admin.js: Refactor code to change view on bot deactivate/reactivate.
This also fixes the error associated with view on toggle deactivation.
Now, on deactivating a bot, the bot-name and bot-email should strike-out.
And on reactivating a bot, the bot-name and bot-email should remove strike-out.
Toggle edit button on bot activation/deactivation.
Fixes #3413.
2017-03-17 21:11:42 -07:00
Tim Abbott ecea8c2d43 run-dev: Fix missing type annotation. 2017-03-17 21:03:35 -07:00
Steve Howell 623a486c5c tools: Extract is_exterior_node(). 2017-03-17 20:53:27 -07:00
Steve Howell 758ff2e756 Exclude more nodes/edges from our JS visualization.
This also provides a roadmap for how to break some dependencies.
2017-03-17 20:53:02 -07:00
Arpith Siromoney e073220e21 Add typing notifications front end.
Send typing notification events when user types in the compose box.
Listen for these events and display a notification.

Sending notifications: Notifications are throttled, so that start
notifications are sent every 10 seconds of active typing, and stop
notifications are sent 5 seconds after active typing stops or when the
compose box is closed.

Displaying notifications:
When a typing notification is received, if the current narrow is private
messages or is: pm-with and the user is not the sender,
"Othello is typing..." is displayed underneath the last message. This notification is
removed after 15 seconds. If another notification is received during this period, the
expiration is extended. When a stop notification is received the notification is removed.

Internally, a list of users currently typing is maintained for each
conversation (in a dict). When an event is received the list (for the appropriate
conversation) is updated and the notifications template is re-rendered
based on the narrow information. This template is also re-rendered when
the narrow changes.

Significantly modified by tabbott for clarity.

Fixes #150.
2017-03-17 20:45:07 -07:00
Tim Abbott 25488b550f casper: Fix issues with server autoreloading on save.
This fixes an issue where if you saved a Python file (even just
changing whitespace) while casper tests were running, the Tornado
server being used would restart, triggering a confusing error like
this:

ReferenceError: Can't find variable: $
Traceback:
  undefined:2
  :4
Suite explicitly interrupted without any message given.
2017-03-17 20:45:07 -07:00
Tim Abbott af8732fd42 py3: Remove unnecesary use of filter. 2017-03-17 20:30:22 -07:00
Tim Abbott 931630abae casper: Clean up wait logic in drafts tests. 2017-03-17 20:01:47 -07:00
Tim Abbott 614391908b typing: Add apply_event handler for typing notifications.
This fixes a crash in the small race condition when loading a browser
window while someone is starting/stopping typing.
2017-03-17 20:01:12 -07:00
Tommy Ip da49db0201 Create tools/js-dep-visualizer.py.
This tools lets us view circular dependencies in our JS
code.  It does regex parsing, so it has a few false positives,
but it's an early draft of the tools.  Steve Howell helped
with this commit.
2017-03-17 16:09:21 -07:00
Steve Howell e04a9d38b5 Add tools/lib/graph.py.
This library helps us produce nice graphs for documentation.
2017-03-17 16:00:50 -07:00
Tim Abbott 8efe4d530d js: check_stream_existence to subs.js.
We want to remove this, but in the meantime, this is a more coherent
place for htis to live than compose.js.
2017-03-17 15:16:11 -07:00
Tim Abbott af5852a55b subs: Eliminate confusing use of settings local.
The name was never good, and was suggestive of the settings module.
2017-03-17 15:07:49 -07:00
Amala Deshmukh e1624fae0b settings: Explain that users can spell their name how they like.
Fixes #2944.
2017-03-17 14:53:20 -07:00
Amala Deshmukh 0398ec7f81 register: Advertise Zulip's unicode support in registration. 2017-03-17 14:53:20 -07:00
Tim Abbott 497b24d7a6 lint: Ban use of i18n.t in portico js. 2017-03-17 14:14:54 -07:00
Tim Abbott 871adc01e3 signup: Fix broken password strength checking.
We don't support using the i18n libraries in our portico.

This was broken in 7a6d001592.
2017-03-17 14:11:44 -07:00
Umair Khan 4442703011 jinja2: No need for custom render_to_response.
Django 1.10 has changed the implementation of this function to
match our custom implementation; in addition to this, we prefer
render().

Fixes #1914 via #4093.
2017-03-17 13:57:34 -07:00
Umair Khan d4ee102a95 users: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 62a580a37f unsubscribe: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 446c06bbf4 registration: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 58b407e2ff integrations: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 097b0e3979 home: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 4e2311544f auth: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 97639e5e48 middleware: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan da012ee51b confirmation: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 6511f929cc analytics: Change render_to_response to render.
Related to #4093
2017-03-17 13:52:59 -07:00
Umair Khan 14c2b40acc unsubscribe.py: Pass request to process_subscribe.
We are changing render_to_respone to render; render takes
request as an argument.
2017-03-17 13:52:59 -07:00
Yago González 5516c97a02 frontend: Fix translation string. 2017-03-17 13:42:10 -07:00
inytar b4e98a695d Set the default locale to en_US.UTF-8 in vagrant.
Prevents errors on vagrant ssh if the host system has an locale unknown
to the vagrant system.
2017-03-17 13:40:41 -07:00
Yago González eb3304bf37 bots: Move Google search bot and fix bugs.
Now this bot follows our latest structure for contrib_bots.

Switched the dependencies instructions, to install "google" rather than
"google-api-python-client".

Added all the search terms to the query (not only the first one).
2017-03-17 13:03:06 -07:00
sonali0901 49c2472006 docs: Document use of vagrant provision to troubleshoot.
Also documents `provision.log` a bit more.

Tweaked and moved around significantly by tabbott.

Fixes #1886.
2017-03-17 12:58:46 -07:00
Akash Kothawale 9e45f32275 gogs: Add webhook integration.
- Add push, create and pull request event.
- Handle 'opened', 'closed' and 'merged' in 'pull request' event.
- Include tests for all the above events including 'push' with commits
  more than limits.
2017-03-17 12:22:06 -07:00
Akash Kothawale 9c5f1d2239 git.py: Add create branch event message. 2017-03-17 12:22:06 -07:00
Steve Howell acef337c28 bug fix: Fix update-one-user regression in compose fading.
We now correctly pass the list item for a user to the function
compose_fade.update_one_row().

This regression started happening in the recent commit of
eece725073.  Before that commit,
compose-fade was broken in a different way.

Testing this fix requires creating a stream and opening the compose
box in one window.  Then, in the other window, have a user not
subscribed to the stream log on for the first time.  Be careful
to make sure you flip back to the other browser tab quickly, and
you should see the new user grayed out.  (You can get a false
positive if you wait too long, because the periodic update was
correctly fading before this fix.)
2017-03-17 12:16:48 -07:00
Steve Howell 89e17e1aee refactor: Extract activity.get_user_list_item(). 2017-03-17 12:16:48 -07:00