Leo Franchi
12c04151e9
Prevent click on user filter from collapsing popped-out user list
...
(imported from commit 182d82f41218e12faeaf07cd92cbee88a9fa6624)
2014-03-04 11:11:31 -05:00
Leo Franchi
60d4c620b9
Disable left-side-userlist on staging, as only CUSTOMER7 uses it
...
(imported from commit 62d9e908cdb3132e22a58efcceee1d06a68d71bb)
2014-03-04 11:11:31 -05:00
Steve Howell
eec12ff268
Calculate has_* fields before saving Messages
...
Before saving a Message object, call update_calculated_fields()
to set the has_attachment/has_image/has_link fields.
Note that the pre_save hook we added here does not get called
if you call bulk_create, hence the explicit call to
update_calculated_fields() in do_send_messages().
(imported from commit 1d60ae5908ef186aa5ff1e39277dbb2b765e60d4)
2014-03-04 11:00:26 -05:00
Jason Michalski
16df239f39
Use the first unread from server on reload
...
When reloading the page we want to narrow to the location that is
restored from the query parameters. This is only done if we ask narrow
to use the first unread message from the server.
(imported from commit b585ef51cbb85788b24d90d831b42c45fd188569)
2014-03-03 18:17:15 -05:00
Jason Michalski
c753dfc9a8
Move reload initiation to an explicit initialize function
...
The reload initiation is required to run before other parts of the site
are started so that page_params will be setup correctly. This moves that
initiation out of an on ready handler to an explicit initialize call
near where the rest of the app is started.
(imported from commit b8994311299327aa3cfa57e3d9e92124a47123f4)
2014-03-03 18:17:15 -05:00
Leo Franchi
f2e8929b8a
Hide rerender_message and use rerender_messages() in all cases.
...
rerender_messages() does extra work such as making rerendering in narrows
safe, as well as updating recipient bars. That should be the only valid entry
point for rerendering individual messages
(imported from commit f91aeb2070b1056ab95e01d68a342558c2813ae8)
2014-03-04 10:47:44 -05:00
Leo Franchi
ca031304b9
When rerendering single messages, grab messages from the view's own list
...
(imported from commit 5b3b5cefd65952b81406adcbd6208551228f0c5d)
2014-03-04 10:38:12 -05:00
Leo Franchi
1af7a9db1f
Reify skeleton person objects that local echo creates when sending out-of-realm PMs
...
(imported from commit c0fcdba736f1270d8c05d00546444ee539301877)
2014-03-04 10:09:40 -05:00
Leo Franchi
bdaf8b2cfe
Update message group recipient bars when rerendering messages individually
...
(imported from commit 3fb1386fee12c3a4a3f46810368cdd5d8cfb04d8)
2014-03-04 10:09:40 -05:00
Leo Franchi
6f67d94fc4
Split the recipient row of a message group into a partial
...
(imported from commit 660514daf932235b7c47ac4c22f963da17c7fc8b)
2014-03-04 10:09:40 -05:00
Zev Benjamin
28a6644384
jabber_mirror: Allow Jabber options to be specified in the Zulip config file
...
(imported from commit 7911fdd4c8a2e8668c01627697a3cd8a153d4612)
2014-03-03 17:30:58 -05:00
Zev Benjamin
66734d46cf
jabber_mirror: Clean up help text
...
(imported from commit bd9a4682c754423047a993b8914d965c2e12fdf4)
2014-03-03 17:30:58 -05:00
Zev Benjamin
4fbe78d037
api: Expose function for getting the default Zulip config file
...
(imported from commit 89d6b48f9393670429aa960ad0ff27f030166e34)
2014-03-03 17:30:58 -05:00
Zev Benjamin
dfed7f0b7e
jabber_mirror: Ignore attempts to join invalid MUCs
...
(imported from commit a82d53af1f581d059b6457a1bf7afe92af5d42d9)
2014-03-03 17:30:58 -05:00
Zev Benjamin
47f96dc2dd
jabber_mirror: Configure rooms after joining
...
(imported from commit d4c6e895dca1c7002ce39db81b671ba1c975d517)
2014-03-03 17:30:58 -05:00
Zev Benjamin
38212f83fc
jabber_mirror: Don't try to mirror messages from rooms themselves
...
These are usually administrative messages.
(imported from commit 58cbbc739fdd47acc586c235aedd2fccc83654fd)
2014-03-03 17:30:58 -05:00
Zev Benjamin
b21dc34eed
jabber_mirror: Change character used for loop detection
...
Previously, we were using U+1B80, which is 'SUNDANESE SIGN PANYECEK' (i.e., an
assigned character). U+1FFFE is a non-character (i.e., free for internal use)
on Plane 1.
(imported from commit f93d2401733afb96b6d717a7f659c011299071df)
2014-03-03 17:30:58 -05:00
Zev Benjamin
9634fccda7
jabber_mirror: Dynamically join and leave MUCs
...
For personal mirrors, this means that the mirror should join all Jabber rooms
corresponding to their Zulip subscriptions. For the public mirror, this means
that the mirror should join all Jabber rooms corresponding to Zulip streams that
end in "/xmpp".
(imported from commit 16ed9e3deee7e02b2ae0dd79925f0ed5c4acd044)
2014-03-03 17:30:58 -05:00
Zev Benjamin
814aed7cbe
Send an event when a stream is created, is deleted, becomes occupied, or becomes vacant
...
A stream is vacant when it has no subscribers and occupied when it has at least
one subscriber.
We have a slightly odd model where stream creation is conflated with
subscription creation. Streams are created by attempting to subscribe to a
stream that doesn't exist. We also hide streams with no subscribers from users
to make it seem like they've gone away. However, we can't actually remove those
streams because we want to preserve history.
This commit moves us towards a separation of these two concepts. By sending
events for stream creation, occupation, vacancy, and deletion, we allow clients
to directly observe the global state of streams rather than indirectly observing
subscription information. A more complete solution would involve adding a view
for explicitly creating streams without subscribing to them.
This commit does not handle the intricacies of invite-only streams. We
currently simply do not send these events for invite-only streams.
(imported from commit 5430e5a5eecefafcdba4f5d4f9aa665556fcc559)
2014-03-03 17:30:58 -05:00
Zev Benjamin
5c44fa9a29
Move bulk of get_streams_backend to actions.py
...
(imported from commit 3601444a2aabd1c613db61d71e6bc9fd6b4984d5)
2014-03-03 17:30:57 -05:00
Zev Benjamin
64b0550f58
api: Add get_subscribers method
...
(imported from commit 801021768431a04cfecf146b58f4d118e1dc7508)
2014-03-03 17:29:54 -05:00
Zev Benjamin
9c52818b93
jabber_mirror: Pull rooms to join from Zulip based on mode
...
(imported from commit 115d4d4732d8ff4f12d336cfc42a056183251d87)
2014-03-03 17:29:53 -05:00
Zev Benjamin
b23dc256e4
jabber_mirror: Document which mode handles which kinds of messages
...
(imported from commit 983224ac58bce724529806f6b8eaa3ea30cc730b)
2014-03-03 17:29:53 -05:00
Zev Benjamin
204e7e7e90
jabber_mirror: Only mirror messages from streams that end in '/xmpp'
...
(imported from commit 5213d40063361ffcf073772580ac0f699228cb3f)
2014-03-03 17:29:53 -05:00
Zev Benjamin
0e3af9b238
jabber_mirror: Mirror Jabber room 'foo' to stream 'foo/xmpp'
...
(imported from commit db771b5b5056cdca5780b90f66924c6f9ae3e84d)
2014-03-03 17:29:53 -05:00
Zev Benjamin
3fbdfeee88
jabber_mirror: Use new-style client name
...
(imported from commit a1bc5b076a9c0384c1abdc2377183b0eac19f450)
2014-03-03 17:29:53 -05:00
Zev Benjamin
406e3025fb
Recognize new-style client name for Jabber mirror
...
(imported from commit 3c1f8120f4daa809e0844602bc8bea659837d84e)
2014-03-03 17:29:53 -05:00
Zev Benjamin
8155b8ea04
jabber_mirror: Add --debug option
...
(imported from commit 8d6986ba97f464359a1fe214d5605fa744660a9b)
2014-03-03 17:29:53 -05:00
Zev Benjamin
2850800e48
jabber_mirror: Exit if we fail to connect to the Jabber server
...
(imported from commit f5cc600325a3547412cf0b05239c988410354c10)
2014-03-03 17:29:53 -05:00
Zev Benjamin
0dd209c813
jabber_mirror: Respond to XMPP pings
...
Other clients like Pidgin sends these.
(imported from commit 61c69a080accda939b82ce8701b10ffc6dda672e)
2014-03-03 17:29:53 -05:00
Zev Benjamin
802bd6448c
jabber_mirror: Working PM mirroring
...
(imported from commit 34617f989e83029c6591461adc3ffa18ddea2037)
2014-03-03 17:29:53 -05:00
Zev Benjamin
577d8d33e1
jabber_mirror: Working room/stream mirroring
...
(imported from commit 5d0a33423e90edaee3a1094b1d48fae73cfb54ca)
2014-03-03 17:29:53 -05:00
Zev Benjamin
2ca49c3735
jabber_mirror: Require the --conference-domain option when running in 'public' mode
...
(imported from commit 1dd564a212538e292ffc8b7a52caf7eae66d4475)
2014-03-03 17:29:53 -05:00
Zev Benjamin
40dd0c677e
jabber_mirror: Clarify the two modes the mirror can run in
...
(imported from commit 8084e0552b06c6763f2f13a63c90c9dc73d6bf90)
2014-03-03 17:29:53 -05:00
Zev Benjamin
bf17ea0ee4
zephyr_mirror: Fix comment
...
(imported from commit aed76ecc3b4fd8bb01c299169a8e4eefd35f7cd8)
2014-03-03 17:29:53 -05:00
Zev Benjamin
cd1e07fed3
jabber_mirror: Take the Jabber username as a separate option
...
(imported from commit 86131c7502df7b841c34b09c0e94b071c89b3fde)
2014-03-03 17:29:52 -05:00
Zev Benjamin
e8843be3d0
jabber_mirror: Use zulip.init_from_options
...
(imported from commit 5839c5308a948d2c060d1eb5688b9cf0bd9ed3a2)
2014-03-03 17:29:52 -05:00
Zev Benjamin
8a16ea4cc6
jabber_mirror: Separate Jabber options into their own group
...
(imported from commit 223ecceee956ab30b1647eb0925d11982b2ef37d)
2014-03-03 17:29:52 -05:00
Zev Benjamin
4d47f487cb
jabber_mirror: Use the Zulip API option group
...
(imported from commit 68243e4ebd44cd3b08bf0789c34bb85016d0d1b9)
2014-03-03 17:29:52 -05:00
Zev Benjamin
5ba0b6b633
api: Disambiguate the names of Zulip options
...
(imported from commit 67525764cc2f2a26081640063e2d78852f6229ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin
213c0b49bc
api: Let generate_option_group prepend a prefix to added options
...
(imported from commit 41cdd90a83914139c92cb3ea649cb5653f56d4ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin
5696ff5ce6
api: Clarify that the API option group is for the Zulip API
...
(imported from commit e471fb60c04c4cf8d5e1ceb8cbd639dc3460fc48)
2014-03-03 17:29:52 -05:00
Zev Benjamin
fbe67f5d84
jabber_mirror: Use consistent casing for commandline arguments
...
(imported from commit e30aedc2f626d64b79a9b36b7f3a0fbee84a8ada)
2014-03-03 17:29:52 -05:00
Zev Benjamin
8bb359d194
jabber_mirror: Remove dead code
...
(imported from commit a8802340e1a624934a92d5bdd4ba8ad26faaadbf)
2014-03-03 17:29:52 -05:00
Zev Benjamin
52d6973191
jabber_mirror: Fix anti-looping
...
(imported from commit 5b0ee18b3ec4fd73912fde83b14083e77940ab6e)
2014-03-03 17:29:52 -05:00
Zev Benjamin
f6cec22e6d
jabber_mirror: Do domain replacement more safely
...
(imported from commit 1a6a3d23120f06d54bc954d4e89d5fccf666332e)
2014-03-03 17:29:52 -05:00
Zev Benjamin
2aeb5dde67
jabber_mirror: Use str.replace instead of re.sub
...
(imported from commit 55798a06951366f0c3d246a243dbb3d41ee5b4f7)
2014-03-03 17:29:52 -05:00
Zev Benjamin
151370277c
jabber_mirror: Use consistent method name casing
...
(imported from commit 0f68b94bab992ba20aa7c185fa40eafeea22f92e)
2014-03-03 17:29:52 -05:00
Zev Benjamin
adcec427b6
jabber_mirror: Factor out jid_to_zulip and use str.rpartition
...
(imported from commit 435f076d7125676b5b964c73ec1e3753496c32af)
2014-03-03 17:29:52 -05:00
Zev Benjamin
f7518ea853
jabber_mirror: Make copyright date clearer
...
(imported from commit a97382d174994be0592fbd98cdef1ed39c1b0400)
2014-03-03 17:29:51 -05:00