Commit Graph

8369 Commits

Author SHA1 Message Date
Leo Franchi aee127cdbe Share bugdown test data across frontend and backend tests
(imported from commit b278a60b5899cd336840e71d8e632e2b31338d82)
2014-01-23 16:50:29 -05:00
Leo Franchi 07dae5fcb9 Locally echo messages that are loaded from storage and resent
(imported from commit 474a0994d82bdbff9c98b453d3e1e4dc7732f5bd)
2014-01-23 16:28:59 -05:00
Leo Franchi 4ac59a71bd [socket] Persist queued requests across restarts in localStorage
(imported from commit a3a7b0c8292c53807d179b343d371eebc11ef10b)
2014-01-23 16:28:59 -05:00
Leo Franchi fd4b68aa72 [socket] Save pending and queued requests together
(imported from commit aecf59b26938c831da03a6a31545f2522387e67f)
2014-01-23 16:28:59 -05:00
Leo Franchi 56d9446c41 [socket] Use socket req ids that contain queue ids
(imported from commit 781eafe60bf117d79ce3a30deea02ec1e875060a)
2014-01-23 16:28:58 -05:00
Leo Franchi 24cb5fb079 Add a localstorage.js module
(imported from commit 9f3ab248ce84ce296bb1fb918de3b2dd8cde1ded)
2014-01-23 16:28:58 -05:00
Leo Franchi e24dcb3952 Report proper displayed/receive time and local echo data
(imported from commit 63aba6ef05b1a55d61e975831ebbaa074f8ea74f)
2014-01-23 16:28:58 -05:00
Leo Franchi 7743aa191c Pass through local_id and sender_queue_id in non-rabbitmq case
(imported from commit 8989225a0943b39e45bd5debe405acb9768acc8c)
2014-01-23 16:28:58 -05:00
Leo Franchi 439633fd03 More markdown compatibility fixes
* Escape " as "
* Enable GFM newlines
* Output a linebreak after <br> in the generated markup

(imported from commit c007ec422054f9fc66a810b66aac70f70a2a1952)
2014-01-23 16:28:58 -05:00
Leo Franchi c1442f386f Local echo messages that mention the sender should be highlighted
(imported from commit 58184f00e63fd50ed4a68d12afe0779ae3745749)
2014-01-23 16:28:57 -05:00
Leo Franchi 86cb451dcb Render <a> with title and target attributes
(imported from commit 0e195db0a3ff1ebe3d567a1ab6408c4a1bfe1e2d)
2014-01-23 16:28:57 -05:00
Leo Franchi 97a69cbc12 Convert realm filters in client-side markdown parser
(imported from commit ef12b9ed28cf0176881d33caa1973fe4d9b90d0b)
2014-01-23 16:28:57 -05:00
Leo Franchi b1a6fdf5e2 Add support for realm filters to marked.js
(imported from commit cea1720b6535a23469185f0ad2677edd373e7cfb)
2014-01-23 16:28:57 -05:00
Leo Franchi c0d56c822f Use the batched_flag_updater in ui.js as well as zulip.js
(imported from commit 6dea64d068d013471baf4022a8041f54da5c111e)
2014-01-23 16:28:57 -05:00
Leo Franchi b7b322d8cd Parse user mentions client side
(imported from commit b2919912792b8a02afad45f48e1c8df4783b93a9)
2014-01-23 16:28:56 -05:00
Leo Franchi 0f8cb25d89 Parse emoji client-side
(imported from commit 3bf150d866689b301ee31218cb3d570119b766cf)
2014-01-23 16:28:56 -05:00
Leo Franchi 0de824f73e Add a zulip module to marked, which supports emoji and user mentions
This is partially inspired by https://github.com/chjj/marked/pull/238

(imported from commit 03b84cde88fc8c2fe31c1003a5ce852cc364733e)
2014-01-23 16:28:56 -05:00
Leo Franchi 87ce2bd0be More standardization of client-side markdown parsing
(imported from commit bc010d69ee92758481d3645f84f2a68dcafacf7a)
2014-01-23 16:28:56 -05:00
Leo Franchi 53739622fd Animate/rotate the retry spinner while retrying local send after failure
(imported from commit 13daa2b956baecb8e30fbc5807bcd969eb46a653)
2014-01-23 16:28:56 -05:00
Leo Franchi 03ceef0c40 Trigger a JS event on the inital load of messages completing
(imported from commit 9f1dc0c2f631bdd0a0b020b4b9565ee910e07c98)
2014-01-23 16:28:55 -05:00
Leo Franchi 34722de1da Don't allow editing of in-flight locally delivered messages
(imported from commit 771ba4910a8f8e50803baa5f7ec75208077ed2dd)
2014-01-23 16:28:55 -05:00
Leo Franchi 883122b129 Allow editing of locally echoed messages that failed to be sent
(imported from commit eff8d55af7a1ff123ed2a2e45e58ff74de96beac)
2014-01-23 16:28:55 -05:00
Leo Franchi c3f798297e Show message failure message on hover of error
(imported from commit 8379c3c35c612d3609d2ab378eb6ca2f7ec120b1)
2014-01-23 16:28:55 -05:00
Leo Franchi 00f64113e9 Support locally echoing messages when sending
(imported from commit 00b5c5f9b933d119553c32cadff0f17b9f7c2879)
2014-01-23 16:28:55 -05:00
Leo Franchi 5b8e46f971 Allow emails in display recipient until local PMs are reified from server
(imported from commit 73f87449206c3789a4d74b8f776588d588ef88e1)
2014-01-23 16:28:55 -05:00
Leo Franchi 835e385b75 [third] Add marked.js, a javascript markdown parser
(imported from commit e85d9b50328ce7d31882464fcc283478f7a9f753)
2014-01-23 16:28:54 -05:00
Leo Franchi 0b2ba855f9 Add helper for rough determination of markdown client-side
(imported from commit 3b6439f54e55fbca0f586392d1a0add4d7f694b8)
2014-01-23 16:28:54 -05:00
Leo Franchi f5af245c09 Clear compose box immediately after message is sent
(imported from commit 07cf0ca34dea1a64c37261e153730a9564281b3b)
2014-01-23 16:28:54 -05:00
Leo Franchi 9b42cdd826 Add a feature flag for local echo
(imported from commit 8aad03929333c77da62160aeb58013a0844c6eab)
2014-01-23 16:28:54 -05:00
Jason Michalski 6d332151d2 Fix confusion of type_id and type in tests
test_successful_subscriptions_notifies_pm and
test_successful_subscriptions_notifies_stream were both asserting
type_id and not type with the Recipient.PERSONAL and Recipient.STREAM
values.

(imported from commit 26492f9c725c278ac81570a135dc9cc203213cbd)
2014-01-23 14:58:53 -05:00
Zev Benjamin 759d33fad1 puppet: Check all disks via nagios, not just /
(imported from commit 0bc9fc150e791ce3ccec99688f3593a8678a87c9)
2014-01-23 13:37:27 -05:00
Zev Benjamin d5c6408efe Handle a Firefox error relating to websockets.
We've only gotten one error report for this error, and it didn't have a stack
trace, so it's hard to know whether this will actually fix the issue or not.

(imported from commit 7bff052347a33f67d8479b1cb23f6e5e24defc75)
2014-01-23 13:32:40 -05:00
Leo Franchi 49c4ad61a1 Delay render on narrowing to end, to ensure only one render happens
(imported from commit c38574417e339275a90b235ecabc96e0deab95f8)
2014-01-23 13:29:18 -05:00
Steve Howell 2283aa52cb Use "stream" as our type for updates to Stream.name.
(imported from commit 2eedbff5fac77b9e654ba88900167048573e4056)
2014-01-23 13:27:11 -05:00
Tim Abbott 09dbaabcb6 Update unread flags between multiple browser windows.
(imported from commit 1c5e2bc0233c28c72ce4c8253fa0717ae4793f84)
2014-01-23 13:21:59 -05:00
Tim Abbott 8fa49388c0 Sync the starred message flag to browsers without reload.
(imported from commit e685104275f471d1cd9b94e1803c26f714628f36)
2014-01-23 13:21:59 -05:00
Tim Abbott 59cd1663df Rename confusing update_message_* functions in ui.js.
(imported from commit eeb2b1f92deb807676a75f1263d994a8c606b249)
2014-01-23 13:21:59 -05:00
Tim Abbott 59b0af835e Use clearer variable name for toggle_star argument.
(imported from commit 6cc604b0cbe8a3a16ff4772e811af1fb4b41aa1e)
2014-01-23 13:21:59 -05:00
Steve Howell bc6da3717f Fix obscure bug with page_params.is_bot.
If a name change event arrived during the call to
fetch_initial_state_data(), we would call apply_events() to
update the data structure that eventually becomes page_params.
Our update code, instead of surgically updating the fields, was
just overwriting the record, which led to is_bot being taken
out of the record when only full_name was in the event.

Apart from fixing the "update" case to do the right thing,
this commit also does a bit of cleanup on the code handling
"realm_user" events to make it more generic in how it does
add/remove/update.  If we could standardize our events a bit
more, this could eventually lead to DRYing up some of the
apply_events() code.

(imported from commit 772e2fcd6a5605ccb6e8d1bc499b5f336934cf3c)
2014-01-23 13:01:04 -05:00
Steve Howell 10533291e9 Clean up EventsRegisterTest.do_test().
Use var names hybrid_state, normal_state, and action, and DRY
up the calls to matcher/self.assertEqual.

(imported from commit 6e537e54a9ba85a4711311fdab0a3ba3db9de972)
2014-01-23 13:01:04 -05:00
Tim Abbott 57c7634a4e Increase Zulip worker memory limits.
(imported from commit 6969eb1d2db0ee47c7b115b7f9b55ded2c9265dd)
2014-01-22 17:19:19 -05:00
acrefoot d8b15f4202 Improve Backend for Github integration
Refactor github webhook to handle multiple payload verions
split github fixtures into v1 and v2 versions

Group together all realm-specific logic. When v2 becomes available, we can
ask someone in each org to make the changes via the Github Hook configuration, and
slowly remove the special cases.

TODO: when our pull request for github-services gets merged, the integrations page
should say to look for Zulip instead of Humbug

(imported from commit 4790a730010b37186640f9996291afa6e8f96c2b)
2014-01-22 16:44:34 -05:00
acrefoot c93d0abfb0 Add circle Z logo to static images; do not rename without changing github-services
github.com/github/github-services/lib/services/humbug.rb:4
log_url = 'https://zulip.com/static/images/logo/zulip-icon-512x512.png'

(imported from commit 0fd4b54d18128a2edcb16b09168d948109679825)
2014-01-22 16:44:09 -05:00
acrefoot 290aa4b350 modify gitignore to ignore KDE editors
(imported from commit 9bd97301d1d38451dd4dc6906409990e2b33fec3)
2014-01-22 16:44:08 -05:00
acrefoot 0439b2bf58 add digest, errors, manage logs to gitignore
(imported from commit c965d568c42f5563c2aaa342397e57b591ea4f51)
2014-01-22 16:43:40 -05:00
acrefoot 7ecace0066 Improve deployment locking tool; now with color
(imported from commit e02056ee43e748c29ce59fc9558f1b324d01bb8a)
2014-01-22 16:40:45 -05:00
Steve Howell 1746af4df6 Reflect is_admin changes on the client.
The client's update_person() method will look for an is_admin
change and update the gear menu as needed, as well as the underlying
data structures that help draw the admin page user list.

(imported from commit af8c173886d63dd102c63336bbca176f49e1036d)
2014-01-22 14:43:29 -05:00
Steve Howell 887c2059b1 Make the Administration menu item be show/hide-driven.
Always render the Administration menu item from the back end, but
make it be hidden by default until the page is loaded.  Then, the
client can un-hide it as needed.

(imported from commit 66e607eec430d7179b4d5ac3f5416f5be8ac26c9)
2014-01-22 14:43:29 -05:00
Steve Howell 90ba39d02e Use do_change_is_admin() in the tests.
Call the action method instead of the lower level
assign_perm and remove_perm methods.

(imported from commit 8728fdb2ebfcfc0eacabfd242b229c32a27da2eb)
2014-01-22 14:43:29 -05:00
Steve Howell 551e7513b3 Use do_change_is_admin() when realm's first user registers.
(imported from commit 64b4db2c03a519ced9cd3bf5b17c0657c21d6cb2)
2014-01-22 14:43:29 -05:00