Keegan McAllister
b4103798f5
Speed up narrowing
...
(imported from commit e1f06866ebc7d3dae3a5813565002853a6f6d8ba)
2012-09-11 15:37:09 -04:00
Luke Faraone
34a7ad5be0
Revert "Collapse duplicate instance names, add breaks."
...
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)
2012-09-11 15:19:51 -04:00
Keegan McAllister
75c34a7f1b
Fix a bunch of code style problems
...
(imported from commit 473ae8fdd64783f7a0989b17cae39826de42d30d)
2012-09-11 14:38:33 -04:00
Luke Faraone
c5238e4af5
Collapse duplicate instance names, add breaks.
...
(imported from commit 8c47682cd80fec0d221a519abc593f4d83dc90b5)
2012-09-11 14:37:24 -04:00
Luke Faraone
34b594b96b
Reimplement the narrow bar.
...
(imported from commit 19e41c1238dff404813a21b9dc318458d5f29c64)
2012-09-11 12:12:02 -04:00
Luke Faraone
1da8c16367
Make "new message" open the compose window.
...
(imported from commit d63f4915f884dfa2bc11653d17782e5ee4c6191e)
2012-09-11 10:54:25 -04:00
Keegan McAllister
7b8544a53f
Get class/instance for narrowing more uniformly
...
(imported from commit 1e9622cb93cf5954cf94f38c77c191524a6e72bc)
2012-09-10 14:46:03 -04:00
Luke Faraone
cfc42b1d82
Implement portions of Waseem's new UI.
...
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)
2012-09-10 14:32:42 -04:00
Keegan McAllister
afee8630aa
Implement hotkey state as a state machine
...
(imported from commit d4f52cbc6bc9e66643e89c5b49a2201e4c938265)
2012-09-10 11:36:17 -04:00
Keegan McAllister
2798f83dbe
Use switch-case for hotkeys
...
(imported from commit c269119d6e1034508303b1c67f5e7a59376674da)
2012-09-10 11:36:17 -04:00
Keegan McAllister
e3307aff39
Factor out hotkey processing
...
(imported from commit bb7a7269b39481cbe831a9a5872b4e32f0f04234)
2012-09-10 11:36:17 -04:00
Keegan McAllister
11b5a8e193
Add JSLint options
...
(imported from commit ff01274558cf1145a6ab057218bc16bac5628b2e)
2012-09-07 15:15:16 -04:00
Keegan McAllister
b4c2aba14d
Reparenthesize an expression
...
This was supposed to be (x && (y || z)) but was written as
(x && y || z) i.e. ((x && y) || z).
(imported from commit c2d6d385f71e6bc4b8933f6426d88aeee0123f66)
2012-09-07 15:07:50 -04:00
Keegan McAllister
52b6ed0ba4
Move scroll_to_selected definition before first use
...
(imported from commit 22f3274f8f636950784f241b9b61dc3785b370b0)
2012-09-07 15:07:50 -04:00
Keegan McAllister
8c9d29842d
Fix formatting of nested functions
...
(imported from commit 7777d6bcc3d249d6c5dd51305c88220e5ec6e469)
2012-09-07 15:07:50 -04:00
Keegan McAllister
c31e7903e9
Missing semicolons
...
(imported from commit 76bfb622f5e6a90b4c14dc4db78ab16e7a935df0)
2012-09-07 15:07:50 -04:00
Keegan McAllister
b7d7d3da26
Declare all variables at the top of each function
...
Javascript has function scope only, not block scope, so the block use of 'var'
is misleading.
(imported from commit 6763fa241408e5893392f622fd92b2664a993ed0)
2012-09-07 15:07:43 -04:00
Keegan McAllister
fd7a7aaff4
Javascript: Use !== and === instead of != and ==
...
!= and == will perform type coercions, which can hide bugs.
(imported from commit 42d3d990a659b62e196f3755c176f83f80c9e319)
2012-09-07 15:07:43 -04:00
Keegan McAllister
1211995d2e
Fix indentation
...
(imported from commit 8f4880ceaa2e84fa842ba195ebe40800fc168eab)
2012-09-07 15:07:38 -04:00
Keegan McAllister
7659937586
Inline a global constant which is now only used in one place
...
(imported from commit 2c288202f5c46ff62f6044cd23f092e4175d498a)
2012-09-06 17:01:19 -04:00
Keegan McAllister
115334c82a
Don't bracket $.get with $.ajaxSetup
...
Instead, use the more general $.ajax which can take these options directly.
(imported from commit bb915e7d25cb6ac675d098903f7e7b57bde5006e)
2012-09-06 15:48:15 -04:00
Keegan McAllister
474f08198b
Send zephyr template inline with index.html using django-jstemplate
...
(imported from commit 58cc8a50d463548aa283658dbe0aae366ecab39f)
2012-09-06 15:48:15 -04:00
Keegan McAllister
fce5643d15
Handle Zephyr body clicks like the other clickable elements
...
(imported from commit 97da4b22aea4e23dd0227b0179481cb3b5f7a65e)
2012-09-06 15:48:15 -04:00
Keegan McAllister
6f269051d1
Partially consolidate the code which knows that zephyrs are <tr>s
...
(imported from commit ca2a208af9f1d3cc8a3f3980f55a5c008d28147a)
2012-09-06 15:48:15 -04:00
Keegan McAllister
689ab1efd6
Misc stylistic consistency
...
(imported from commit 624a07f50544d96f9e3c3b417b00369641bd3ae1)
2012-09-06 15:48:15 -04:00
Keegan McAllister
59ab88f886
Rename current_view -> apply_view
...
And related cleanups.
(imported from commit 4b1a7e7ef19b17c0887e2864f7cc2121eeda361e)
2012-09-06 15:48:15 -04:00
Keegan McAllister
1fa40e515c
Style fixes
...
(imported from commit 311600ad8627d7060f235f59852d77f73a951e81)
2012-09-06 15:48:15 -04:00
Keegan McAllister
5e5b5986af
Don't pass the global selected_zephyr_id through the narrow functions
...
(imported from commit a19232052913f45a6f8d3c08dd8761a6a2b5ec99)
2012-09-06 15:48:15 -04:00
Keegan McAllister
a9f45e6e0e
Have select_zephyr ensure that we point at a visible zephyr
...
(imported from commit 91e485742a040cf6c3454d1f55993a6c77a8ca09)
2012-09-06 15:48:15 -04:00
Keegan McAllister
74c97e7d59
Remove duplication between do_narrow and select_zephyr
...
(imported from commit 84c3e5a0d5682fd8790bd6e277e05e54a47d9aac)
2012-09-06 15:48:15 -04:00
Keegan McAllister
d78e1f1bcb
Remember the selected zephyr in a Javascript variable rather than querying the DOM
...
And related cleanups.
(imported from commit aa64980b4e66a64e92735c736159a8e2f717ea09)
2012-09-06 15:48:15 -04:00
Keegan McAllister
03d2a087a7
Organize global variables a bit
...
(imported from commit d3ad323bad4cda98e55a54ed3c9aec81ccd4008b)
2012-09-06 15:48:15 -04:00
Keegan McAllister
84e618a902
Use 'var' at top level consistently.
...
This has no effect but is stylistically consistent.
(imported from commit 71d7f615ea140195cc5081fb331677bc5d856fed)
2012-09-06 15:48:15 -04:00
Luke Faraone
3d1e956069
Don't check for class existence if we're not sending to a class.
...
(imported from commit 832de3f899d90ee727cebeede061de6a409b7845)
2012-09-06 15:19:56 -04:00
Luke Faraone
f6b481546f
Offer to subscribe / create classes if user zwrites to a non-subbed class
...
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)
2012-09-06 14:33:55 -04:00
Jessica McKellar
cede8e59fb
Return a 400 and error message instead of 500ing on a personal to an invalid user.
...
(imported from commit b8cdf342f2919aa0dbd2e30764c7662b6756aa57)
2012-09-05 18:01:06 -04:00
Keegan McAllister
0788f2efe6
get_updates_longpoll: Retry indefinitely, with exponential backoff
...
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)
2012-09-05 16:37:20 -04:00
Keegan McAllister
c3aaf54468
get_updates_longpoll: Timeout and retry
...
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)
2012-09-05 16:37:10 -04:00
Keegan McAllister
53690d757f
Avoid infinite tail recursion in get_updates_longpoll
...
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)
2012-09-05 14:06:19 -04:00
Keegan McAllister
1f522eddac
Move zephyr rendering inside longpoll success callback
...
(imported from commit f7c2bbb0a31b339892a033e4192e44cb53b0d62c)
2012-09-05 14:06:08 -04:00
Keegan McAllister
162cb075b7
DEBUG: report longpoll events in JS console
...
(imported from commit f82edf2fcec66ec119319a691281726a16a46b31)
2012-09-05 14:00:56 -04:00
Tim Abbott
8eb778dc32
Fix display of which people we're showing personals with.
...
(imported from commit 4e2f2554c9af4b176dcbbe6300b72c2ce69bc8bd)
2012-09-05 11:48:35 -04:00
Keegan McAllister
5ac4b4345e
Point at the first zephyr if the initial pointer is invalid
...
(imported from commit 7661a7d23f1d161815f2a22048cd23ede76e1758)
2012-09-05 11:24:29 -04:00
Keegan McAllister
7cb3c05b40
Cleanup / local var in hotkeys
...
(imported from commit 8df3d84495d0d50b0987037dceb8b16023866119)
2012-09-05 11:24:28 -04:00
Keegan McAllister
49704b84f3
Clean up select_zephyr
...
Eliminate some global variables, and other style fixes.
(imported from commit 95dfbaa024d709f5b98238afcf904f3e92c8a260)
2012-09-05 11:24:28 -04:00
Tim Abbott
08b55de0af
Add support for replying to huddle messages.
...
(imported from commit 21c760838fa87bf524ff178eab6473dfa3c6921c)
2012-09-05 11:19:31 -04:00
Tim Abbott
d13e7d5c2a
Clean up prepare_personal function.
...
(imported from commit 497ff1ff2162eba879728755cf37e6317530a641)
2012-09-05 11:19:31 -04:00
Tim Abbott
6e427d4aa1
Remove trailing whitespace in zephyr.js.
...
(imported from commit d003d9c337239e90f6dbda16f6624c42909a88b7)
2012-09-05 11:19:31 -04:00
Jessica McKellar
2694183a9d
Make clicking on a personals user narrow to the conversation with that user.
...
Previously, clicking would narrow to all personals. The gp hotkey
combo still does that -- we'll need to think about the UI for making
both types of narrowing easy.
(imported from commit acce1da52de1b9b757ef76a9734d61f399f81a01)
2012-09-05 11:03:53 -04:00
Luke Faraone
3db1766015
Fix broken narrowing on classes with keyboard shortcuts.
...
(imported from commit e829c55e88a57c4dbe4693c41f15eaf27a025daa)
2012-09-05 10:56:59 -04:00