Commit Graph

3772 Commits

Author SHA1 Message Date
Tim Abbott 1443edce00 Access the UserProfile's new email field rather than using User.
This is preparatory for stopping using the User model.

(imported from commit a1b0808c8cc2ddd19a25163f91c4f18620c9ce90)
2013-04-02 12:07:08 -04:00
Tim Abbott 3a35c5b00c Add management command to logout all users.
This is intended to be used logging out users during our deployment of
the UserProfile merge, but it could be useful for other things too.

(imported from commit bfe896d854f997f7a4d06e5bc0f19ec5b1aa5e69)
2013-04-02 12:07:05 -04:00
Tim Abbott 303e77c07d Fix clearing of user sessions.
Previously, we weren't clearing the users out of memcached (we just
killed them in the database), so in fact users were not logged out
when we deactivated them for an hour (when the memcached caches would
expire).

(imported from commit 0f0a2f70e003c184106c73b22b876f57c1ef3371)
2013-04-02 11:56:31 -04:00
Zev Benjamin 3ff7e885a3 puppet: Add munin graphs for event queues
(imported from commit 6ef730551e2ce1e953f116b3797206098bc23455)
2013-04-01 17:22:12 -04:00
Zev Benjamin 4a8d8e6fb4 Record statistics for event queues
(imported from commit 88f30a33f0717d5ad1b22a86cf311d7b67c69bf5)
2013-04-01 17:09:22 -04:00
Zev Benjamin a73e2975d7 Add simple function for outputting statistics for use with munin
Eventually we will want to replace this with statsd.

(imported from commit 64246e9f2d13d72f53d009a5e3e456bc6be6296b)
2013-04-01 17:09:21 -04:00
Zev Benjamin 0e0b95ce83 Fix event queue pickle file location
The associated function was moved into zephyr.lib, but the file
location was never updated.

(imported from commit 24c3348533324b0af7c52d6a121eef8b00615275)
2013-04-01 17:09:21 -04:00
Zev Benjamin 6cee57b356 Fix several bugs when register() applies events
(imported from commit 5cd284c59022700de5c5d12182d2056366bf8617)
2013-04-01 15:45:14 -04:00
Keegan McAllister b5c2002f62 Add a script to build and install Node.js on one of our servers
This should be part of the Puppet config eventually, but I'm not sure how to do
it.

(imported from commit 23063e1e492f6e1cad0afbcf4adffbb6e25aedf7)
2013-04-01 15:21:05 -04:00
Keegan McAllister 29f759e74f puppet: Install build dependencies of Node.js on app servers
I've already installed these packages on staging, and will install them on prod
when the commit hits master.  So there is no manual prod deployment step here.

(imported from commit 1b77e771f938305dfbeb797c3ea2a7e3897e78a7)
2013-04-01 15:21:05 -04:00
Tim Abbott b82edb6fd6 [manual] Add User fields to the UserProfile model.
And keep the fields updated, by copying on UserProfile creation and
updating the UserProfile object whenever we're updating the User
object, and add management commands to (1) initially ensure that they
match and (2) check that they still match (aka that the updating code
is working).

The copy_user_to_userprofile migration needs to be run after this is
deployed to prod.

(imported from commit 0a598d2e10b1a7a2f5c67dd5140ea4bb8e1ec0b8)
2013-04-01 14:34:25 -04:00
Tim Abbott 659ccc2174 [schema] Add South migration for extending UserProfile to subsume User.
(imported from commit 1f93bd1fc93bb5f2b7f144d1631428e1c5e96292)
2013-04-01 14:34:25 -04:00
Tim Abbott bd27343eba Fix incorrect use of user_id as a Recipient type_id.
This should be a user_profile_id.

(imported from commit 3d63a986a4584ba8933c4f8872ed9bb5f3928983)
2013-04-01 14:34:25 -04:00
Jessica McKellar 33a9bae5d1 Tailor empty narrow messages to what you were narrowing for.
(imported from commit 876afce2a63d4d6a522ac5300349b2be8805405f)
2013-04-01 14:26:50 -04:00
Jessica McKellar 6977920493 Don't try to auto-scroll when composing.
It's distracting, and may push messages you care about out of view.

(imported from commit 585d013c18d392433e432fc37bc02b4055822915)
2013-04-01 14:26:50 -04:00
Zev Benjamin ee9f040040 Handle subscription events in the web client
This has the nice side effect of not requiring us to trigger the
events manually in the success callbacks of our subscribe/unsubscribe
ajax calls.

(imported from commit e8d9970b708e9832d22be4803570071bacb46792)
2013-04-01 13:07:48 -04:00
Zev Benjamin 73af933f1f Handle the result of subscriptions by Javascript events
(imported from commit 7b564b1bf076581034021052fa5e2da20cf405c5)
2013-04-01 13:07:48 -04:00
Zev Benjamin 2c08fcca3a Send an event when a subscription is added or removed
We don't yet send events on property changes, though.

(imported from commit 741e6aff7c6ce8b6a1fa48e4d95317d345c6993d)
2013-04-01 13:07:48 -04:00
Zev Benjamin bd81706558 Handle realm_user events in web client
We currently only use these events to change the autocomplete lists.
I figure that the presence list will be updated by presence events.

(imported from commit e9c1466659c4bfd463806656e0023984a4ea4177)
2013-04-01 13:07:48 -04:00
Zev Benjamin fe45b1c8ad Send an event when a user joins or leaves the realm
(imported from commit fcedba2d9a3e8968e93faa396113cddd5bf36a9d)
2013-04-01 13:07:48 -04:00
Zev Benjamin 130c94a2b1 Make the API bindings method for removing subscriptions have the same name we use in our example
(imported from commit de330caa997a02a9122f9d1d9fa0a3891f18f99f)
2013-04-01 13:05:57 -04:00
Zev Benjamin d12a6b8506 Remove the use of "--site" from the example scripts' usage text
Now that we're distributing these examples, we shouldn't be promoting
the use of the "--site" option.

(imported from commit 01ded4a851dc799fa6c7e902e937c4331ed92bf8)
2013-04-01 13:05:57 -04:00
Zev Benjamin a326eb2c48 Fix subscribe/unsubscribe example help text
(imported from commit 886066daa80b377b71b19f992d6733d87bc4d9d3)
2013-04-01 13:05:57 -04:00
Zev Benjamin f5d3d15d6b Don't send notifications if we don't have a Tornado server
This is the case when running the backend tests.

(imported from commit 8c69c4b6ec72b36f0e90b06f75a010e993c46e03)
2013-04-01 13:05:57 -04:00
Keegan McAllister 33ac53b849 tests: Reinstate star tests
(imported from commit f61762b0296922ee72e1304718044d5df78abd12)
2013-04-01 11:03:17 -04:00
Keegan McAllister c1a0309bb4 tests: Test more ways of narrowing / un-narrowing
(imported from commit 470b9fb5fc7e418944fee577d510d4ee0a78cd68)
2013-04-01 11:03:16 -04:00
Keegan McAllister 50ef0a6edb tests: Move page console.log support into common.js
(imported from commit e875e67ad44ef10d9d84671a14a4d1755c0154df)
2013-04-01 11:03:16 -04:00
Keegan McAllister 0263bace8a tests: Factor out message checks in 02-narrow.js
In anticipation of testing several UIs for narrowing.

(imported from commit 9403be5550de4f4503933aa03dc45335a7f3fc63)
2013-04-01 11:03:16 -04:00
Keegan McAllister bd85af4d02 tests: Move narrowing tests into their own file
(imported from commit 673fb5f862d08de1dfff1abb8db5efb76039e1ba)
2013-04-01 11:03:16 -04:00
Keegan McAllister 5015c77b33 tests: Clean up code for sending multiple messages
(imported from commit 194490a764d05408e9849bd3a80552c7173f5112)
2013-04-01 11:03:16 -04:00
Keegan McAllister 7e348783e6 tests: Update comment about common.keypress
(imported from commit c58d850ba4fa291e62ffdf56d8e647688940a3ed)
2013-04-01 11:03:16 -04:00
Keegan McAllister 83f1071259 tests: Move more helper functions to common.js
(imported from commit 2a4e2acda367f087acee69f46b6542e3762f5000)
2013-04-01 11:03:16 -04:00
Keegan McAllister b2dea39fad tests: Remove initial dummy message workaround
I can't reproduce the problem this works around anymore.  If it comes back,
let's debug and figure out what's happening.

(imported from commit 26096405a93a530e449c9f1f60d8110b1bb0e96b)
2013-04-01 11:03:16 -04:00
Keegan McAllister 8e6587e92f tests: Use common.js in 00-login.js
(imported from commit b4f3150ee9bbb2c37c3bd5cb0032d8d210d8e976)
2013-04-01 11:03:16 -04:00
Keegan McAllister b09c829fd6 tests: Move common initialization into casper.start
Otherwise it fails when common.js is used by the very first test.

(imported from commit 5299072a62c63202c641b2a11b40aafb9c89e13e)
2013-04-01 11:03:15 -04:00
Keegan McAllister 0c3e21e4b2 tests: Split subscriptions and settings page tests into their own files
Delete star tests for now and restore them later -- it's much easier
this way.

(imported from commit 0572aa64b39d73fddb40b57db554e1f0f14973af)
2013-04-01 11:03:15 -04:00
Keegan McAllister d6810efc90 tests: Fix URL test for new event system
(imported from commit 07671e9a8b678a725b5f49ed755f008107734251)
2013-04-01 11:03:15 -04:00
Waseem Daher 6067ada53e integrations: Clean up Jira documentation page a little.
(imported from commit bea7a499a2d4584bca136f5c77beff38a9498d59)
2013-04-01 09:50:58 -04:00
Tim Abbott 7bae0bb75a populate_db: Fix User/UserProfile confusion in personals sampling.
We were incorrectly using User objects, rather than UserProfile
objects, for fetching Recipient objects for generated messages.

(imported from commit c3dfe52f4e0a68400e22ca49293b5bf2d6986402)
2013-03-29 16:18:38 -04:00
Tim Abbott dc5839f66d tests: Fix User/UserProfile confusion in filter_by_subscriptions path.
Our testing code had a number of places where it was using User
objects where it should have been using UserProfile objects --
e.g. using a User id as the type_id in a Recipient table.  This commit
addresses this in the filter_by_subscriptions code paths.

(imported from commit e305bc8e2a8bdbfd04c93c59d56955e7971552af)
2013-03-29 16:18:38 -04:00
Tim Abbott 9317035fc7 Add hashed_password argument to do_change_password.
This way we're not directly manipulating user.password() in random
management commands.

(imported from commit e6e32ae422015ab55184d5d8111148793a8aca36)
2013-03-29 16:18:38 -04:00
Tim Abbott 80747567c0 Remove test_deactivate.py management command.
It is a less-featureful duplicate of deactivate_user.py.

(imported from commit d40fe8cc30284745aa267601b4855572bbe0e26a)
2013-03-29 16:18:38 -04:00
Tim Abbott 198480ef99 Use get_user_profile_by_email more consistently.
The previous situation was bad for two reasons:

(1) It had a lot of copies of the code, some of them missing pieces:
  UserProfile.objects.get(user__email__iexact=foo)

This was in particular going to be inconvenient since we are dropping
the __user part of that.

(2) It didn't take advantage of our memcached caching.

(imported from commit 2325795f288a7cf306cdae191f5d3080aac0651a)
2013-03-29 16:18:38 -04:00
Tim Abbott 203e5e17ee Use prereg_user as local variable for PreregistrationUser objects.
(imported from commit 5beb09a8e589bee9e98d36059eb9e0b5ab3c4af3)
2013-03-29 16:18:38 -04:00
Tim Abbott 2223b60dc0 Switch functions like do_activate_user to accept UserProfiles.
Only a few of them took a User as an argument anyway.

This is preparatory work for merging the User and UserProfile models.

(imported from commit 65b2bd2453597531bcf135ccf24d2a4615cd0d2a)
2013-03-29 16:18:37 -04:00
Tim Abbott 9d82bb5318 event_queue: Add requests 1.x compatibility.
The previous version of our code only worked with python-requests <
1.0 (as is the case on our servers), the new version will work with
any python-requests new enough to have a .json at all.

(imported from commit 77ffe3e0d890fe88776c313e0e3289aee1bb30ea)
2013-03-29 16:18:37 -04:00
Leo Franchi 0712cc6279 Update integrations page with webhook info
(imported from commit 77a8100d09732d34923de79f03acfb8495ada6bb)
2013-03-29 16:14:39 -04:00
Leo Franchi e546161e8d Handle web hooks from JIRA for integration support
(imported from commit d4db0b850becf42dee6f0a9df7b19c692fef41f1)
2013-03-29 16:14:39 -04:00
Leo Franchi 9817ef3460 Remove url encoding from data-name attribute as we match via iteration
(imported from commit 737418c430991414124daff41b62383284e86dc1)
2013-03-29 15:44:21 -04:00
Zev Benjamin c4ed67b2d1 Raise the API polling timeout so it is greater than the heartbeat frequency
(imported from commit 3a6921a9b5c2c9cdf3ce279291de31d4657d9ae0)
2013-03-29 11:11:34 -04:00