Steve Howell
c0f312ec29
DRY up m.group('code') in FencedBlockPreprocessor.
...
(imported from commit b23caae1ab63a9adb80025b628bc1a7c6a988ce0)
2013-11-20 14:30:55 -05:00
Steve Howell
6bc25d3d7b
DRY up m.group('lang') in FencedBlockPreprocessor.
...
(imported from commit 9f9ab5604b7df711a3a369247def1277880b0b5f)
2013-11-20 14:30:55 -05:00
Steve Howell
7bb30a96ac
Extract FencedBlockPreprocessor.format_fence().
...
(imported from commit 8a35de7df9ad956496263c82668b118910edd6b3)
2013-11-20 14:30:55 -05:00
Steve Howell
64410fae5e
Extract FencedBlockPreprocessor.format_quote().
...
(imported from commit 59db5415d624402b37ade7fe5547b16f58ae565f)
2013-11-20 14:30:55 -05:00
Steve Howell
9d4b6d0684
Extract FencedBlockPreprocessor.format_code().
...
(imported from commit 3c98b9a7391a71e9c55a7b5c97abd0ee74178b44)
2013-11-20 14:30:54 -05:00
Zev Benjamin
25c63f08de
Use ujson instead of pickle for serializing event queues
...
(imported from commit 2d90574ae97cc973c9686c2bd557cc199d4b0850)
2013-11-20 14:25:36 -05:00
Zev Benjamin
69e5e2c3d2
Remove old migration code
...
(imported from commit 5366411706ef296dc14d0d0dd9e2566cb8abb8b7)
2013-11-20 14:25:36 -05:00
Zev Benjamin
06ee83b531
Construct EventQueues externally from ClientDescriptors
...
(imported from commit 7ef882074ed1c3663939da199d54e4959df8f127)
2013-11-20 14:25:36 -05:00
Zev Benjamin
db29e60249
Move the last event queue pickle file to /var/tmp instead of deleting it
...
(imported from commit b8edaa686e2dadfdb2111ee1da93456591e44a50)
2013-11-19 15:05:19 -05:00
Jessica McKellar
151fbd832c
do_update_message: use is_admin to check who can edit a topic.
...
(imported from commit e96245506c7eecc8aed3fbdb6dfb7c44aca3234e)
2013-11-19 14:31:02 -05:00
Jessica McKellar
2c841042ae
Allow admins to rename any topic.
...
(imported from commit 5b557e8244e5196c9aa0ee29d4efb00986434528)
2013-11-19 14:31:02 -05:00
Zev Benjamin
15a837d12e
[manual] socket: Send explicit ACKs
...
There will be browser errors on staging when this is deployed due to the socket
protocol changing.
(imported from commit f1eda5b5c2ec9c60c23b3ca96277a61debadf5bb)
2013-11-19 11:06:14 -05:00
Zev Benjamin
7870b4d158
socket: Fix a traceback on server restart
...
I believe there may also be others. I'm still not sure why clients would be
sending open requests without session or csrf values in their cookies, though.
(imported from commit 7e9660c1c4d5c2abf55ff21b433ba0117180eb82)
2013-11-19 11:06:13 -05:00
Tim Abbott
74c304ae40
Don't send heartbeat events to clients that don't request them.
...
(imported from commit 1147814b22fb9737a807057ddbdbe0e9554086e0)
2013-11-18 13:57:01 -05:00
Tim Abbott
14f6625569
Don't send server restart events to clients that don't request them.
...
(imported from commit b3381e904704c18918fcce97d2493241e49004be)
2013-11-18 13:57:01 -05:00
Kevin Mehall
b78fa0857f
Allow overriding the default avatar image
...
(imported from commit 66d413682a822e0019f28033f19908bdd9fa0156)
2013-11-18 11:48:53 -05:00
Kevin Mehall
a63f4284f0
Allow enterprise deployments to disable the use of Gravatar.
...
(imported from commit 49c14cc7629f2ffe6cedaab5d42ad5bf7f6569a4)
2013-11-18 11:48:53 -05:00
Zev Benjamin
5c6a85f99a
socket: Change path for 'not yet authenticated' error messages
...
(imported from commit 826d3a0ea9084644810a00a14f2f19936e21118c)
2013-11-18 11:42:57 -05:00
Zev Benjamin
319852c60e
socket: Fix keyword argument name for error logging
...
(imported from commit e61eace1aa48fe17d5d2338f7990e32d3404d390)
2013-11-18 11:42:57 -05:00
Tim Abbott
f3fa78d30c
Rename do_[rd]activate to do_[rd]activate_user.
...
For similarity with do_activate_user.
(imported from commit 2874af84dbe1ce666de10e0d8ffe2daa8bad9731)
2013-11-16 11:35:26 -05:00
Steve Howell
1144e0b3f9
Update active_user_dicts_in_realm cache when touching is_active flag.
...
(imported from commit c9407e2c18dcfcc7a4b1ec79c471f825dff04b1e)
2013-11-16 11:35:25 -05:00
Steve Howell
bdfd3ed9c2
Add do_reactivate() action.
...
(imported from commit fc73d0fdd3a6125b3b31a75c3b108ceb266e528b)
2013-11-16 11:35:25 -05:00
acrefoot
daffe049ad
Don't use hardcoded noreply@zulip.com, zulip@zulip.com, or https://zulip.com
...
(imported from commit 1132553b63ae23ebcca746f0f65205b97bfee7dc)
2013-11-15 21:31:37 -05:00
Kevin Mehall
fe0dcd4313
Disable camo on enterprise.
...
CUSTOMER13 doesn't want it, and there's currently no nginx config
or configurable Camo URI, so it wouldn't work if image preview
were enabled.
(imported from commit 615d4a32acbc4d4d590f88cf4e7d45d8f49db1d3)
2013-11-15 14:27:16 -05:00
Jessica McKellar
b0209fec05
Don't puke on non-ASCII characters when shelling out to html2text.
...
(imported from commit a407c9fb2a090075d5e26b5db00388f4f81de1f5)
2013-11-15 12:28:30 -05:00
acrefoot
f991fbff9e
Fix clear_followup_emails_queue on Zulip Enterprise.
...
(imported from commit bf211b205bc39a08340306d06fbb76479a02ed9e)
2013-11-14 11:32:29 -05:00
Kevin Mehall
b469066e66
Fix emoji on enterprise.
...
static/ doesn't exist on enterprise, so we can't get the list from the
files there.
(imported from commit ce34a62478abf541feb013da4f970dac3c09d98a)
2013-11-14 11:18:23 -05:00
Tim Abbott
870ae09aae
Add setting for disabling inline image preview.
...
(imported from commit 2321390eb14cfe5701347861b9ae5ad6fdac0cbb)
2013-11-14 08:47:11 -05:00
acrefoot
b6751d2119
additional lowercase situations in clear_followup_emails
...
(imported from commit c0c031e7abb2a166636075596fb0d5ed21a5822c)
2013-11-13 17:53:37 -05:00
Jessica McKellar
338de6715d
Fix broken html to markdown conversion on Linux.
...
(imported from commit 1b62d382e4f2b60972384a6b4b4173161ea58b73)
2013-11-13 17:47:28 -05:00
acrefoot
f7b5a10da0
[schema] Add ScheduledJob table, and update mandrill related code
...
ScheduledJobs with type Email displace the usual mandrill codepaths
in the Zulip Enterprise deploys
* Email-specific helper functions will appear in deliver_email.py
* 0058_auto__add_scheduledjob.py
(imported from commit 8db08d8a279600322acfdbed792dc1a676f7a0ab)
2013-11-13 16:41:36 -05:00
Jessica McKellar
8382e074fe
Move use of html2text to a subprocess call.
...
(imported from commit 36e8a6f030d75196c28fbdc0e58c6968952d95ff)
2013-11-13 16:28:29 -05:00
Jessica McKellar
5c0a624f9e
Don't notify on stream messages by default for LevelUp.
...
(imported from commit c0c21047698612dbcee5eee9e858f37a8f8e29bd)
2013-11-13 16:14:36 -05:00
Leo Franchi
62ba16a829
[schema] Allow a realm to have aliases for multiple other domains
...
(imported from commit 5d0340afd4c77f50db63550a3ec8d81e885c285c)
2013-11-13 14:17:43 -05:00
Steve Howell
761c0a0266
Support !avatar syntax in bugdown.
...
(imported from commit 72551c5df96f5b383d3593c9618cc82413d5d95d)
2013-11-13 13:45:09 -05:00
Steve Howell
2086ee8979
Rename Gravatar class to Avatar in bugdown.
...
(imported from commit 97f1fb52f2582694f5ba43c24649fc58152d3486)
2013-11-13 13:45:09 -05:00
Steve Howell
2d5a19ad1b
Have !gravatar markdown serve up /avatar/<email>.
...
The !gravatar markdown no longer hard codes to Gravatar, but
instead it serves up our generic avatar URL.
(imported from commit 4e3e2baeb3374bcf025a18ff27a8452b975c22b7)
2013-11-13 13:45:08 -05:00
Tim Abbott
1eca4027fa
Support filling memcached caches with no messages.
...
(imported from commit 3dfcdce60f84bfa99820a52b74c637ad849930a8)
2013-11-13 12:07:16 -05:00
Leo Franchi
6274c33f86
Allow disabling of feedback system in UI
...
(imported from commit ce16b2916784e9cf10a230cb47515ffc65888778)
2013-11-13 11:18:02 -05:00
Leo Franchi
306ce65ea3
Only create initial passwords for local dev setups
...
(imported from commit 2ef33ebbab0fe21486acbb1a3a78ed434abac2db)
2013-11-12 22:42:05 -05:00
Zev Benjamin
cf8cf1fe03
socket: Fix non-rabbitmq codepath
...
(imported from commit 3ccdcbfb3283fc57ca502878e9c8d6068e7bce40)
2013-11-12 16:42:15 -05:00
Tim Abbott
5d5e662c08
Disable event logs on local server.
...
(imported from commit eafbd645ae7ce8d868de2fb8c6548325a05b1340)
2013-11-12 15:57:01 -05:00
Zev Benjamin
673f497a6f
socket: Only deregister connections that have been registered
...
(imported from commit bfaed299a129bac1e901883f5c6e3339f5a8b688)
2013-11-12 15:24:30 -05:00
Zev Benjamin
eec195f421
socket: Use our full logging infrastructure
...
We also now separate out the times for the socket overhead, the
request service time, and the queuing delays.
(imported from commit e1683f7f28b968b86ebb701b0ac29b00ac6d67c3)
2013-11-12 15:24:30 -05:00
Zev Benjamin
53ec292022
Store logging data in a dict instead of individual attributes
...
(imported from commit f7d76670428d5d8298c572a23cbfffc1d9695f23)
2013-11-12 15:24:30 -05:00
Zev Benjamin
24ee4a5d57
socket: Build a real Request object to send through our full stack, including middleware
...
One quirk here is that the Request object is built in the
message_sender worker, not Tornado. This means that the request time
only counts time taken for the actual sending and does not account
for socket overhead. For this reason, I've left the fake logging in
for now so we can compare the two times.
(imported from commit b0c60a3017527a328cadf11ba68166e59cf23ddf)
2013-11-12 15:24:29 -05:00
Leo Franchi
cc2d17d7c0
Allow omission of EMAIL_GATEWAY_BOT and stream emails
...
(imported from commit 51412d2a46bbacd6537ef892e7b6bdf33ac94079)
2013-11-12 10:32:34 -05:00
Tim Abbott
b0dc882f7e
localserver: Add support for not having an APNS_CERT_FILE.
...
(imported from commit 42d8caebb3035bd9e6e19db6359cc33e8ab4f317)
2013-11-12 09:34:25 -05:00
Tim Abbott
ba15333df9
Add temporary debug logging around Tornado handler protocol.
...
This logging is kinda excessive since it adds like 4 log lines per
recipient, so I expect we'll end up reverting it once we've debugged
the proximal issue.
(imported from commit 5e6ab3e230f32b65ad9cf0d95f20ffbc0fe7397e)
2013-11-07 15:44:19 -05:00
Tim Abbott
3b41e79074
get_events: Log queue ID in home and get_events requests.
...
(imported from commit 8be1427c6c9ec3d1eb4a02f3c6ad5c2726542596)
2013-11-07 15:44:19 -05:00
Zev Benjamin
24ae5998e5
socket: Request the status of pending requests on reconnect
...
This will hopefully help with the send dialog being stuck on
"sending" as well as allowing us to not show errors to the user on
reconnect.
(imported from commit 31ee889853f348e486863073dc130cdfb4e1338d)
2013-11-07 11:43:34 -05:00
Zev Benjamin
48a25211fa
socket: Record the request status in redis
...
(imported from commit 6c3f6dc37d1abdcacf105f865ac24483717438ca)
2013-11-07 11:43:34 -05:00
Zev Benjamin
87fc182645
socket: Move `req_id` parameter to top level of protocol payload
...
(imported from commit 271d84a0b44a2623bec290f64a83a0423698a1ef)
2013-11-07 11:43:34 -05:00
Zev Benjamin
4595143023
socket: Switch to client ids from connection ids
...
Clients can only have one connection at a time, anyway, so we can
just keep track of a client id, instead. This makes reconnections
easier.
It's a little funny to use queue ids for the client id, but we know
they should exist by the time the client is connecting and they are
guaranteed to already be unique and authenticatable. We will also
eventually be integrating the event system and the socket code closer
anyway.
(imported from commit 1f60e06fb16d31d6c121deafd493fb304d19a6c2)
2013-11-07 11:43:34 -05:00
Zev Benjamin
63924ea742
socket: Reduce code duplication in authentication error cases
...
(imported from commit e7900b1374c3c0e5ea994ff315d281833e7ecdc6)
2013-11-07 11:37:00 -05:00
Zev Benjamin
e0fece4082
socket: Log the transport type on the authentication line
...
(imported from commit 7b3ae3ab38da35cbd60aca991665d40b41a7f78f)
2013-11-07 11:31:06 -05:00
Kevin Mehall
57aabc112d
Add debug for a possible way get_events might forget a request
...
(imported from commit ca3ac5b942ffdcc8f175cc6b690cb2555e170836)
2013-11-06 18:34:50 -05:00
Jessica McKellar
74d1a56c68
Do not notify on stream messages by default for CUSTOMER19.
...
(imported from commit 7f737b9068ec39fc53678aa5c0976d3da908ce00)
2013-11-06 10:40:28 -05:00
Tim Abbott
e06722657a
[manual] Remove /messages/latest API and related legacy code.
...
This requires doing a puppet apply on our servers to take effect
properly.
(imported from commit 19dc56f071f07a5d2571eef49dd835121b2e82b6)
2013-11-05 14:19:40 -05:00
Tim Abbott
87271b57cd
Fix feedback check to correctly use the recipients list.
...
Even for a PM, the "recipients" list is 2 people -- the sender and the
receiver.
(imported from commit 5503e0ee2abb643601a0a4e61366127914808245)
2013-11-04 12:58:40 -05:00
Tim Abbott
68dcc760c3
Clean up some unused imports.
...
(imported from commit 0c5d8e2a55ba1b8909ba807fee3afe863dcdc226)
2013-11-04 11:51:17 -05:00
Tim Abbott
29aef33c53
Remove transaction management hacks in workers.
...
(imported from commit 33b9349bd139907755b52474df8a0da13b73b80d)
2013-11-04 07:31:39 -05:00
Leo Franchi
db6550e99a
Make built-in bots come from settings.py, and allow localserver-specific ones
...
(imported from commit e21933e37487314ac986147562817a19227e8960)
2013-11-01 14:13:05 -04:00
Kevin Mehall
a09c7e1e0c
Make rest_dispatch errors cleaner for requests from browsers.
...
If you don't have a cookie or basic auth and the request looks like
a top-level page in the browser, redirect to the login page.
(imported from commit fc1bcb1080591522bd1b694664255f7049a5d443)
2013-10-31 14:36:34 -04:00
Steve Howell
70c1c31b3a
Simplify callback protocol for register_json_consumer().
...
The register_json_consumer() function now expects its callback
function to accept a single argument, which is the payload, as
none of the callbacks cared about channel, method, and properties.
This change breaks down as follows:
* A couple test stubs and subclasses were simplified.
* All the consume() and consume_wrapper() functions in
queue_processors.py were simplified.
* Two callbacks via runtornado.py were simplified. One
of the callbacks was socket.respond_send_message, which
had an additional caller, i.e. not register_json_consumer()
calling back to it, and the caller was simplified not
to pass None for the three removed arguments.
(imported from commit 792316e20be619458dd5036745233f37e6ffcf43)
2013-10-31 13:18:11 -04:00
Jessica McKellar
f1e90086f5
Remove the onboarding checklist.
...
Looking at the historical data, fewer than 50% of active users have
completed the checklist, which means that it is just persistent
clutter. We also have other better ways of encouraging people to send
traffic and get the apps now.
This commit removes both the frontend UI and backend work but leaves
the db row for now for the historical data.
(imported from commit e8f5780be37bbc75f794fb118e4dd41d8811f2bf)
2013-10-31 11:34:15 -04:00
Waseem Daher
db1f5065a7
Add tooltip for, e.g. !gravatar(wdaher@zulip.com) output.
...
(imported from commit eff24a2fc7da77edc26449074acf75832d368a17)
2013-10-30 13:29:37 -04:00
Leo Franchi
9be1333c6b
Log send_message times through our new socket infrastructure as well
...
(imported from commit 215be8f7e3d2498ed34e9fcc421498a7cfca4fbc)
2013-10-29 17:49:27 -04:00
Tim Abbott
1292c5dbfe
Add backend support for Jabber mirroring.
...
(imported from commit 12f5c708a6961aded4f4e166af84e87720be4ddc)
2013-10-29 16:49:42 -04:00
Kevin Mehall
06590f4332
Upload to local filesystem on local server.
...
(imported from commit 6c38a8cae721b2e7a0863470692cc56425006ecb)
2013-10-29 16:19:04 -04:00
Kevin Mehall
f9af7ad1cf
Resize uploaded avatar images
...
(imported from commit 47ff86fcd47871916631baa34f99bbddb67f87d0)
2013-10-29 11:42:33 -04:00
Tim Abbott
901a5c342c
Use os.path directly rather than sometimes importing it separately.
...
(imported from commit 48486c4ea64d02a15faeebb0f490d31e9b113d62)
2013-10-28 15:44:13 -04:00
Zev Benjamin
807116e955
Delay connecting to RabbitMQ until it's necessary
...
Previously we were connecting at import-time.
(imported from commit 9a638f0d238f3b6b00feb4aa524098a64953cb92)
2013-10-28 15:27:25 -04:00
Leo Franchi
e1557bef73
Cache realm user basic info dict that is used in bugdown
...
(imported from commit 688c47daceb73534be90bd98a031c7b4edb5546e)
2013-10-28 12:59:36 -04:00
Leo Franchi
b26f158020
Use user_profile instead of leaked object from list comprehension
...
(imported from commit 7d8467b104fc80d52fa829eb0ff949b1bd0e578f)
2013-10-28 12:59:36 -04:00
Jessica McKellar
2be6c541cf
digest emails: use a template filter to format new users, streams, etc.
...
(imported from commit e61a3dd6753db82da1b30c50e5bbf6273f302645)
2013-10-25 19:11:41 -04:00
Jessica McKellar
d4b60e9304
Add a custom template filter for formatting displaying lists of items in emails.
...
We do this operation several times in the digest e-mails.
(imported from commit 7b906bad582c628d4461637dc7af374df349e09a)
2013-10-25 19:11:40 -04:00
Jessica McKellar
772adc1969
digest: Add functions used to compute interesting traffic.
...
So far, we gather: "hot conversations", missed PMs, new streams, and
new users.
(imported from commit c3c723d0426cb55bd0e43917c67f93db9052f9ed)
2013-10-25 19:08:46 -04:00
Leo Franchi
c12a97577e
Rework local_settings_template.py to be clear about what the user needs to do
...
(imported from commit f69ea0d57e885509abc70dc4f2bee6e36169691f)
2013-10-25 16:35:27 -04:00
Luke Faraone
e552307511
Send feedback to a queue to be forwarded to staging.
...
(imported from commit 4a9a1bfc6c95763a816263a726cc61b3ca90bf15)
2013-10-25 14:13:30 -04:00
Luke Faraone
1fa65915f2
NACK on consumer failure
...
(imported from commit 1cad1096dd1a969b2551822575784c338a82f433)
2013-10-25 14:13:30 -04:00
Luke Faraone
9d4ef27b97
Make rest_dispatch accept a list of globals and move it into its own file.
...
We're going to be using this from other views, so make it more generic.
(imported from commit c2c4f64b2a212f8a254f75c21dc93d8fc3f8351a)
2013-10-25 14:13:30 -04:00
Luke Faraone
81d7dd1fda
[schema] Support for authenticating Deployments via the API.
...
Here we introduce a new Django app, zilencer. The intent is to not have
this app enabled on LOCALSERVER instances, and for it to grow to include
all the functionality we want to have in our central server that isn't
relevant for local deployments.
Currently we have to modify functions in zerver/* to match; in the
future, it would be cool to have the relevant shared code broken out
into a separate library.
This commit inclues both the migration to create the models as well as a
data migration that (for non-LOCALSERVER) creates a single default
Deployment for zulip.com.
To apply this migration to your system, run:
./manage.py migrate zilencer
(imported from commit 86d5497ac120e03fa7f298a9cc08b192d5939b43)
2013-10-25 14:13:30 -04:00
Luke Faraone
52309b5789
Enable absolute imports for non-third-party code where it was omitted previously
...
(imported from commit 34856ac32c6b94b614273a6fe46c87a314058d9b)
2013-10-25 14:13:30 -04:00
Leo Franchi
2d276179d0
Refactor email-mirror to handle running on any machine
...
(imported from commit 2971449ceaacb564770e66874fc095f77e68d445)
2013-10-25 11:37:34 -04:00
Kevin Mehall
19b9b6e2ec
Reduce the length of public upload URLs.
...
(imported from commit dc4d51da39b218068012ebad57e1f92cb50137c3)
2013-10-24 17:01:06 -04:00
Kevin Mehall
0a271f149b
Enable authed file uploads for squarespace
...
(imported from commit c72e76d27f99cd7610eb6c93b57b8ff727b461a9)
2013-10-24 17:01:06 -04:00
Kevin Mehall
5e1caad88a
Show upload filename in tooltip without other ugly parts of the URL.
...
This works for both public and authenticated uploads.
(imported from commit f9be340b53d0f72bf5b3c31a5d51a1fad80759be)
2013-10-24 17:01:06 -04:00
Kevin Mehall
0a3a22cb3d
Support authenticated upload URLs.
...
Trac #1734
This is implemented by bouncing uploaded file links through a view
that checks authentication and redirects to an expiring S3 URL.
This makes file uploads return a domain-relative URI. The client converts
this to an absolute URI when it's in the composebox, then back to relative
when it's submitted to the server.
We need the relative URI because the same message may be viewed across
{staging,www,zephyr}.zulip.com, which have different cookies.
(imported from commit 33acb2abaa3002325f389d5198fb20ee1b30f5fa)
2013-10-24 17:01:06 -04:00
Kevin Mehall
473a98d0a4
Split out common code for existing and authenticated upload systems.
...
(imported from commit bf513eaff90ae7c4a0be825317690058f9f54621)
2013-10-24 17:01:06 -04:00
Kevin Mehall
fb4eae9e2b
Include realm ID in S3 metadata on uploaded files.
...
(imported from commit 7d41ec94991bd257485116791a0d1ef2c22d9b37)
2013-10-24 17:01:05 -04:00
Kevin Mehall
e3b2e7ece2
Allow domain-relative and fragment links
...
(imported from commit 0a15eeb35ad709977f3b2e6c550c3b78f1b4b402)
2013-10-24 17:01:05 -04:00
Zev Benjamin
ec21275b19
Move rabbitmq username into settings.py
...
(imported from commit f9a8f80f53b8774781b8558444e601567cb59835)
2013-10-24 16:40:38 -04:00
Leo Franchi
ae104ace25
Only load APNS cert if it exists
...
(imported from commit 8505c9a32feb4c7470dfde6c4ceaaa0a8e8f33a1)
2013-10-24 15:55:42 -04:00
Leo Franchi
410ee44eb6
Send users push notifications when they miss messages
...
(imported from commit 6c54fe44a82c5796268e56d3f5577bf4cfc8163a)
2013-10-24 14:54:31 -04:00
Leo Franchi
05564ec0e2
[schema] Add a config option for enabling/disabling push notifications
...
(imported from commit 5649188cd5e0e4edb6e71559ec7d7fc5e92efaf8)
2013-10-24 14:54:30 -04:00
Leo Franchi
7961d4f6b3
Add a push notification module to handle mobile client notifications
...
(imported from commit 3061a6e2d845226d3dce5bb262deb3a896e54f07)
2013-10-24 14:54:30 -04:00
Leo Franchi
a2a1867f25
Only render tweets if we have credentials
...
(imported from commit 46c59f430aeae87a832f33d2ccb85209f9caec74)
2013-10-24 10:19:23 -04:00
Tim Abbott
1b381b343d
Allow starring historical messages.
...
This has a small bug where we don't actually filter the message out of
the home view; fixing that requires adding an index on the "flags"
field of UserMessage.
(imported from commit 492c99d0a8e87b253e577be6564bec12099bd8e9)
2013-10-23 18:51:47 -04:00
Zev Benjamin
b1eebc0b84
Deliver messages inside Tornado when running tests
...
This saves us from having to run queue processors while testing.
(imported from commit 927bfa497a47b34603761a148c57d82b2f34f813)
2013-10-22 18:45:11 -04:00