unhide -> show_all_messages
narrow_indicator -> currently_narrowed_to
narrow -> searchbox
This is a little clearer about what these buttons/functions
do, which will be useful as we add a little more complexity
associated with searching.
(imported from commit b51e745ea71c212d6735e04011eaea5e71bf6d5a)
We'll eventually need to normalize emails, autocompleted names,
etc. to one entity we use when talking to the server about senders and
personals recipients, but for now since we've hardcoded usernames
everywhere, just use those.
(imported from commit 4a0e033b301b8dec55d97157eb4993982f6b2641)
I have some serious concerns with this implementation,
but I think it's still an incremental improvement.
(imported from commit 6ed8d2545c727e25bf85b98a1528dbf3d155bc92)
This reverts commit 8c47682cd80fec0d221a519abc593f4d83dc90b5.
I accidentally broke.. a lot of things in my last commit. Lets fix those
issues before pushing to master again.
(imported from commit fbadd6e854722e41cccd2535748ee47f4efd657b)
This is mostly working; things that need to be implemented:
- Ask users for their Real Name
- Personal replies need skinning
- Miscl UI changes to match mockups
(imported from commit 3638cf5ec2ba2306004ba6db6fa4c25c47f76517)
This was supposed to be (x && (y || z)) but was written as
(x && y || z) i.e. ((x && y) || z).
(imported from commit c2d6d385f71e6bc4b8933f6426d88aeee0123f66)
Javascript has function scope only, not block scope, so the block use of 'var'
is misleading.
(imported from commit 6763fa241408e5893392f622fd92b2664a993ed0)
Here we check if a class exists. If not, we prompt the user to create, sub,
and send his message to the class. If the class exists but we're not subbed
we prompt the user to sub.
This commit also added a decorator to views.py and refactored out some
redundant code.
(imported from commit 7234ef6c080f2a6de6ff0922635dddd90032f7fe)
The client still won't recognize when it's reconnected, if there is no traffic.
Probably we should have the server send periodic heartbeat messages to the
clients, and make the clients look for them.
(imported from commit 4dab3ddf20bf3c48a65b9395c1e24b635b70aa81)
We're currently proxying through Apache, which will eventually drop an idle
connection to the app server. Before that happens, drop it on the client and
retry. This may also help with flaky Internet connections. This timeout isn't
really an error condition and is naturally rate-limited, so we retry
indefinitely.
(imported from commit 45fbf812af63ed331fe046d85c64c97c1ec57611)
Javascript doesn't guarantee tail-call optimization. Also we should yield
control back to the browser in case it needs to catch up on rendering.
(imported from commit 1c35c0c2c39f13311b98bfb6221a1bac1fb22de8)