Luke Faraone
1467901f1a
Include a favicon for the Humbug app.
...
(imported from commit 3481d7f3c06ec0c656e15d147f46faf9cd99837a)
2012-09-29 21:31:57 -04:00
Keegan McAllister
25eeaabe47
On load, send a range around the pointer, then fill in later, then earlier
...
This still doesn't handle collapsing entirely correctly for the backfilled
messages.
(imported from commit d1fa3e2249968208e735454c27b8cab20bb78d3f)
2012-09-28 19:40:45 -04:00
Keegan McAllister
8d906c9b6f
Allow the server to prepend a block of messages
...
This doesn't handle collapsing yet.
(imported from commit 85a2284f398dea33cc891297924ff7504304be94)
2012-09-28 18:37:12 -04:00
Keegan McAllister
1c48599824
Refactor add_messages slightly
...
(imported from commit 61ac3285c9a55202f390a3b4473483656449cf44)
2012-09-28 18:37:12 -04:00
Keegan McAllister
e9f70c1efb
Track the first received message
...
We don't use this information, yet.
(imported from commit 24a9466823f3e7a287027969d3841c7638954e76)
2012-09-28 18:37:11 -04:00
Jessica McKellar
1fa3bbead9
Update the class subscriptions upon subscription removal.
...
This fixes a bug where if you unsubbed from a class and then tried to
send a message to it, you could without error and wouldn't see the
message.
(imported from commit 7a4da2a6cb5bbecfc236628dda7b61972b3082e1)
2012-09-28 17:24:45 -04:00
Waseem Daher
8b08cffcbb
Faster composebox show and hide.
...
(imported from commit 55f0465e9aded7c1b8cfe6e53b25bd1bc1185311)
2012-09-28 16:17:29 -04:00
Waseem Daher
f9573c4816
Make huddle colors a bit more consistent.
...
(imported from commit 272636e995173cd0e366b866ddd903b47edad2a0)
2012-09-28 15:59:47 -04:00
Jessica McKellar
1adb10d1ae
Allow copying and pasting from zephyrs without triggering a compose.
...
(imported from commit f98a14155904dda11d85ed81acee783494377e4d)
2012-09-28 15:27:39 -04:00
Waseem Daher
1616782f8a
Personal message styling, take three.
...
From the "Don't use black" school of design.
(imported from commit 7362208f2cf7967fd1186ed29e86c5544da8b991)
2012-09-28 14:48:11 -04:00
Waseem Daher
d13dd0a953
Restyle personals, attempt #2 .
...
(imported from commit a8bdf6ad1d7e3dd24b8d42b0f46472ba2db15900)
2012-09-28 14:34:09 -04:00
Waseem Daher
ecfed97bc6
Attempt at restyling personals for more emphasis.
...
(imported from commit 28adc1c6144632bf973272b096a22d8315648502)
2012-09-28 13:32:59 -04:00
Jessica McKellar
f2b808a976
Now that mouseover doesn't select, show_email needs to take an ID.
...
(imported from commit dfa737e78da0772e99fda34318ed879896fb5655)
2012-09-28 10:59:39 -04:00
Jessica McKellar
9cbdbc4893
Don't update the selected zephyr on mouseover.
...
But do keep the pointer on the screen as you scroll, and smoothly
scroll all the way up to the top or all the way down to the bottom.
(imported from commit 6acad2a16339ee5eeeebd62a853000c21e4b7152)
2012-09-28 10:59:38 -04:00
Jessica McKellar
bf7e9f55fb
Add jquery-mousewheel library.
...
(imported from commit 4b970283b7fb13e64bfc508cc66d4b7a9fcd62dd)
2012-09-28 10:58:52 -04:00
Waseem Daher
1c63c2b19c
Compose box UI experiment.
...
(imported from commit cf95f39da1a8c6558d2a3c3629efe425e274e80d)
2012-09-27 17:39:54 -04:00
Keegan McAllister
3429e77178
Don't display the "Loading..." indicator if the user has no messages
...
(imported from commit a050218ccde3b82c570a9373cbab5e3fb22abcde)
2012-09-27 16:15:10 -04:00
Keegan McAllister
20240d869c
Rename get_updates_longpoll to get_updates
...
(imported from commit 15635904584b324bdfa1414caea12c3bc4ce54c8)
2012-09-27 15:46:36 -04:00
Waseem Daher
cd296da113
CSS cleanup.
...
(imported from commit a7a13e57cf43368d66e94d01ef25ec14d0c15657)
2012-09-27 15:40:11 -04:00
Waseem Daher
fbf7f7bc07
Restyle compose window slightly.
...
(imported from commit 390dcdfade8ceab5d20b29271a79476d74bb2525)
2012-09-27 15:40:11 -04:00
Waseem Daher
42ac10b9c3
Restyle narrowbar slightly.
...
This removes the duplicate 'x' and '<-' issue that Tim identified
previously.
(imported from commit 0572978731d12eb6689edec105f8e0e35c74f0e0)
2012-09-27 15:40:11 -04:00
Luke Faraone
b58e2ee575
Enable j/k keyboard shortcuts
...
(imported from commit 1a172fc6d49506060534ffc52a27160ca0bbca72)
2012-09-27 12:32:46 -04:00
Keegan McAllister
9323abddd9
Don't jump the pointer if the user already selected a message during load
...
(imported from commit 69a3f11059ee4764f1625df7774ff611fff99537)
2012-09-26 17:53:06 -04:00
Keegan McAllister
35dcc04822
Add an interim "Loading..." indicator
...
We will probably re-style this eventually.
Also, the animation freezes during template rendering. And the HTML is a "give
up and use tables" situation.
(imported from commit 847374b616dc7ce909834f23d5ed9522aa457254)
2012-09-26 17:11:00 -04:00
Keegan McAllister
c3943ac0c2
Import spin.js
...
(imported from commit 65c466651a07331e399108f1061c0239b2b8a340)
2012-09-26 17:11:00 -04:00
Keegan McAllister
1e02fc140b
Make add_messages do everything relating to message adding
...
Now that it's only called from get_updates_longpoll, we don't need to break out
specific parts that are only needed there.
(imported from commit 60d1cb25d0044ed1b2325d977b869617587e6a0f)
2012-09-26 17:11:00 -04:00
Keegan McAllister
017c5e87bd
Update autocomplete only once per batch
...
...not up to three times per message.
(imported from commit 1da13c0bc1311627f1bcdce6719097836d9616ca)
2012-09-26 17:11:00 -04:00
Keegan McAllister
21d76b3398
Don't send instance_list in index.html
...
It gets populated from the zephyrs we receive in the initial get_updates_longpoll.
(imported from commit 83c773d211ea323233a986ccf12fd797236c08a5)
2012-09-26 17:11:00 -04:00
Keegan McAllister
12e458df80
Get initial messages from get_updates_longpoll
...
(imported from commit 2bb9c51409735abe23bad758338b13121aea4c99)
2012-09-26 17:10:59 -04:00
Keegan McAllister
ee75f7ae8d
get_{next,prev}_visible: Handle undefined argument
...
(imported from commit 07956fb7595e8c39fd052aaf0a16df4c3e574f8d)
2012-09-26 17:10:59 -04:00
Keegan McAllister
bffae8d550
Set width on the pointer for non-selected messages
...
This prevents a visual artifact if the pointer disappears for whatever reason.
(imported from commit ee8fbf6d8480b78d0922da05c87bc9f4c0658402)
2012-09-26 17:10:59 -04:00
Luke Faraone
9cf6bc17f7
Display validation errors produced by jQuery.validate in a special div.
...
This way we don't push things around on the screen.
(imported from commit a8bbe6660e3089676fc0c169f540537fdff7f4fe)
2012-09-26 16:42:10 -04:00
Luke Faraone
873147330e
Make the big "Humbug" title a link.
...
(imported from commit af16043a1562a7a31efbd6f21d626c90d4d277be)
2012-09-26 16:42:10 -04:00
Luke Faraone
ae6cfee818
Implement a new login redesign per Waseem. Be a little cute about it.
...
Split off some content previously placed into base back into index.html.
Move content previously localised in accounts_home to a new content_base
for use in the non-app version of the site.
We wrote up some copy and styled it according to taste.
In our new signup form, we no longer collect a short name and instead
extrapolate from the email.
(imported from commit cd734b13a4bda7f304129379524c4cc96b77b24b)
2012-09-26 16:42:10 -04:00
Waseem Daher
8ef40a9654
Experiment: Restore gravatars (this time with real addr).
...
(imported from commit 0e1cc56286264c939864ac8b398f206e27d56841)
2012-09-26 16:34:24 -04:00
Waseem Daher
deb5cc771a
Restyle compose box to be more consistent with our experiment.
...
(imported from commit a035c82e83a0bb1a2eea24de18044e3022ecdde5)
2012-09-26 16:19:01 -04:00
Tim Abbott
df01b016cb
Display short_names rather than email addresses for huddles.
...
(imported from commit 6509305f1b0ee90cfe5c93c74e03350a557a0cc5)
2012-09-26 15:32:35 -04:00
Keegan McAllister
bec1b55930
Use switch/case in respond_to_zephyr
...
(imported from commit 4afef9103075a00772f3c0e29d634a28cb5d5b5a)
2012-09-26 15:25:46 -04:00
Keegan McAllister
d8714ae3ff
Use switch/case in add_zephyr_metadata
...
(imported from commit f5a2357a4359d3e16d22a0c561561c5f54b16538)
2012-09-26 15:25:45 -04:00
Waseem Daher
6c57d071cc
Experiment: Hide gravatars.
...
(imported from commit ffd1da1dbb97eb6a701e4d3cdf65abd888fc54c7)
2012-09-26 15:17:27 -04:00
Waseem Daher
96d2565d99
Smaller space for classnames.
...
(imported from commit debc4d42274bf8f2a7041a8575591f41e7b2bc4f)
2012-09-26 15:17:27 -04:00
Waseem Daher
97b20a8cb6
A new Waseem design candidate.
...
(imported from commit 0acb3ef0e37752178d4809d77d0281568a75b98e)
2012-09-26 14:29:17 -04:00
Tim Abbott
d374312509
Use email address for huddle display recipients.
...
This fixes replying to huddle messages.
(imported from commit 8e6f9ce7d690c926b19c50016ec972d767428994)
2012-09-26 13:24:08 -04:00
Jessica McKellar
f60e9de1f2
Linkify URLs in zephyrs.
...
(imported from commit df7e355648d2c4d6319de049933547ed96402fd8)
2012-09-26 10:33:33 -04:00
Jessica McKellar
b2707b39ee
Add javascript-linkify library, for linkifying zephyrs.
...
(imported from commit 90af0192b37bbebbf56d5e7c50f182485ddbca10)
2012-09-26 10:33:33 -04:00
Jessica McKellar
fde0eda122
Indicate that zephyrs are clickable by changing the pointer on mouseover.
...
(imported from commit 0eb2bb3de3a0fe2664a7256bc06ea4c2fc3c4d31)
2012-09-25 16:18:25 -04:00
Jessica McKellar
455b9863d5
Always clear compose inputs on New Message.
...
(imported from commit 7c32f8bdc2366695c488563698c282d2f25b65a1)
2012-09-25 13:39:23 -04:00
Jessica McKellar
14ceb7e888
Add hotkeys for composing a new message and toggling betweeen message types.
...
(imported from commit 5778b12d204f803a4c46b0f32ec19d9410108b36)
2012-09-25 13:00:43 -04:00
Jessica McKellar
810229288b
Track and be able to return to your high water mark.
...
(imported from commit 52a1ce8c84ad3f4eea16b7abaf075ebffc794c9a)
2012-09-25 10:04:34 -04:00
Jessica McKellar
6685bfdd10
Add page up and down arrows to the zephyr list.
...
(imported from commit e66dfc4eef150e5b84d98ab7346d4d66852699b3)
2012-09-25 10:04:34 -04:00
Keegan McAllister
613e042b7c
Get rid of current_view_predicate
...
Use 'narrowed' for the same role. (Functions are always true-ish in
Javascript.)
Also, don't add messages to the narrowed table if not narrowed (my bad).
(imported from commit 31707d39abb97472a36d3816c62482e39e732fdc)
2012-09-24 18:42:04 -04:00
Keegan McAllister
877954aa55
Render all new zephyrs with a single template invocation
...
(imported from commit 13803e0e96901d129d4aefcd5fde63548deb4dc0)
2012-09-24 17:45:52 -04:00
Keegan McAllister
934e3461df
Split add_to_table into preprocessing, templating, and postprocessing
...
(imported from commit ef17ff33f4496fcf619170bda1a46f14734d3e43)
2012-09-24 17:45:52 -04:00
Keegan McAllister
4eae1981f2
Clean up CSS
...
(imported from commit 406a0de68e43ae5538289ddd1358b03ee91813c2)
2012-09-24 17:45:52 -04:00
Keegan McAllister
6fb5fc57ce
Change bad CSS class names
...
(imported from commit 962f91a593b4ca65bd7aae7d71117fc159c2627a)
2012-09-24 17:45:52 -04:00
Keegan McAllister
6ccf3818d6
Rename add_to_tables -> add_to_table
...
It only adds to one table.
(imported from commit 7c106331527ceaa056b23214be3c981029c9c005)
2012-09-24 17:45:52 -04:00
Keegan McAllister
ad0bed506a
Add messages in batches
...
Not immediately useful, but it will help us speed up templating later.
(imported from commit 48cd554b322eede506b0cbcd4b26ef427cb2c804)
2012-09-24 17:45:52 -04:00
Keegan McAllister
40ac817f4e
More JSLint options
...
(imported from commit a5b7aea68de5403c3f9deb7220f05102de971747)
2012-09-24 17:45:51 -04:00
Keegan McAllister
7724e19a49
Remove ICanHaz.js
...
(imported from commit 799414525e1566d1bc4641b9663cd7bc306d29f2)
2012-09-24 17:45:51 -04:00
Keegan McAllister
4793cee888
Switch to Handlebars templating
...
Benchmarks [1] show it's much faster than ICanHaz, though we will have to work
to realize those gains.
[1] http://jsperf.com/jquery-template-table-performance/77
(imported from commit b037a6f15e27fd49af88f814ff949811dbcd48f2)
2012-09-24 17:45:51 -04:00
Keegan McAllister
efe4410f9f
Import Handlebars.js
...
(imported from commit efe15705adc034388bd240a37443efbbfb29d430)
2012-09-24 17:45:51 -04:00
Keegan McAllister
b21d197418
Factor out same_sender too
...
(imported from commit 831a24817cd4669507bac9797abf30d644c6a3d9)
2012-09-24 15:43:28 -04:00
Keegan McAllister
67349eca33
Factor out the test for whether two messages have the same recipient
...
(imported from commit a8cc4858d1eb7933c437adb0dd4c9a612c40e389)
2012-09-24 15:43:28 -04:00
Jessica McKellar
d6a6516687
Have the pointer stay in view as you page up/down.
...
(imported from commit 72b58f30d82b103542f53ebeff2363407c4997b6)
2012-09-24 14:14:37 -04:00
Jessica McKellar
b276596855
Add page up/down support for all tabs.
...
This does not yet try to keep the pointer in view.
(imported from commit 865413ba70e271ed12d5cc45d13e56ff9a3275f9)
2012-09-24 14:03:18 -04:00
Keegan McAllister
2a96542e9a
Clean up do_narrow calls
...
(imported from commit 51a694e3dbe7310127580e50fbac0a796f1b09c2)
2012-09-24 13:55:30 -04:00
Keegan McAllister
32f806c032
Save the current view "original message" implicitly in closures
...
There's no need to pass this around separately and store it in a global
variable.
(imported from commit bb464b1c87fcc9e97aa85a7d139186d4a7169674)
2012-09-24 13:41:22 -04:00
Keegan McAllister
0379d828e1
Don't store into zephyr_dict in get_updates_longpoll
...
add_message already does this.
(imported from commit 77e6ebf7c02794f6d4e0e9f8a42ecedc44d0402a)
2012-09-24 11:58:37 -04:00
Keegan McAllister
07e1314462
Rename initial_zephyr_array -> zephyr_array
...
We keep adding stuff to it in get_updates_longpoll.
(imported from commit be33421c9df16191112e5bcc7c4a476080d52859)
2012-09-24 11:58:37 -04:00
Keegan McAllister
2605f29988
Rename get_zephyr -> get_zephyr_row
...
Now that the primary data store is not these DOM elements.
(imported from commit c8f5b24ea1baf2ed69278fb0e8658a3bf0a85cd0)
2012-09-24 11:41:26 -04:00
Jessica McKellar
703a1cd6d9
Add error handling for subscription AJAX requests.
...
(imported from commit 9ed019da01aaa85302000ad62441b85786c2c528)
2012-09-24 10:16:22 -04:00
Keegan McAllister
f3aefde0df
Simplify goto hotkey code
...
(imported from commit 2e424b488c82125b036d264baf66fdc3328be0f3)
2012-09-21 18:34:26 -04:00
Keegan McAllister
3f0a6b6087
Fix and clean up Home/End key processing
...
We had the wrong keycode for End, and much duplication of code.
(imported from commit 0aaa5ab45e45fc9d7209ec1768198abefc08dc86)
2012-09-21 17:55:17 -04:00
Keegan McAllister
4c45baa045
Refactor hotkey narowing
...
(imported from commit d1559cbe3505090085229271bdb7bc69060e43b2)
2012-09-21 17:55:16 -04:00
Keegan McAllister
a3fcf3417d
Move get_{next,prev,first,last}_visible into a sensible order
...
(imported from commit 80697ba55c1fb9bf52a4fffd2f15471b8892f07c)
2012-09-21 17:55:16 -04:00
Keegan McAllister
f3ee3fa6eb
Simplify get_{next,prev,first,last}_visible
...
Now that we have two tables, the adjacent zephyrs will always be visible.
(imported from commit a1ac000bfba32faea109d1b35a84fdd30ccc4891)
2012-09-21 17:54:11 -04:00
Keegan McAllister
a53cbc9f36
Move hotkeys into a new file
...
(imported from commit a589cd4623c4707122d5d5936aa0bc555c38557a)
2012-09-21 17:52:02 -04:00
Waseem Daher
f1aa17cf1d
Change some URLs associated with subscriptions.
...
Put all the 'API'-ish URLs in the /json/ namespace so that
/subscriptions and /subscriptions/add, etc. can be real
user-facing URLs if we want them to be.
(imported from commit 1455a32d27e44547ab1874b6289243cb40c85dde)
2012-09-21 17:36:29 -04:00
Keegan McAllister
f4483832b2
Force select_zephyr when narrowing even if id has not changed
...
Fixes a bug where the pointer would vanish.
(imported from commit 0ed950fbc3d5a8673b0bc62556f426cccb5a6459)
2012-09-21 17:33:00 -04:00
Tim Abbott
76c1dfc1ed
Make home and end go to first and less messages, respectively.
...
(imported from commit f85b811f51227cd1ae113c119a430381230d141c)
2012-09-21 17:13:07 -04:00
Waseem Daher
230e725446
Allow spaces in classnames.
...
(imported from commit 9ef71240ee5e6e0ed9ca0b50d9461b539538b437)
2012-09-21 17:09:46 -04:00
Tim Abbott
919ddfdc31
Send recipient_id values to client and track them there.
...
(imported from commit 77446f7a226d8a26a287e069d08f28e4beb0b2e3)
2012-09-21 16:57:04 -04:00
Tim Abbott
12013cd7b7
Fix collapsing of huddle messages.
...
(imported from commit 31391a278f5fe70ab56379bf7cc3fad2d0663007)
2012-09-21 16:44:30 -04:00
Waseem Daher
5a164f19c2
Clean up subscription functions.
...
Now that 'manage_subscriptions' only removes subscriptions,
let's name it that. Also, since both functions now only
act on one subscription at a time, use them in the singular.
(imported from commit 52cfc7b36eb1533da7aec1bc3a6e460151a56da8)
2012-09-21 16:30:29 -04:00
Waseem Daher
a27edbce7d
Restyle subscriptions page.
...
(imported from commit 41339c5af38ae5ea4801fc1e23b7184c277145f3)
2012-09-21 16:04:44 -04:00
Tim Abbott
ed46a453ba
Add (mostly unstyled) settings page.
...
(imported from commit 492c5f498c2fec452e6c724555bc4a5a2c4c151a)
2012-09-21 14:47:26 -04:00
Tim Abbott
fc12e6ffbb
Fix collapsing with new email addresses instead of usernames.
...
(imported from commit 26a2391ac1f965f78feaff5092b42cf49f57215f)
2012-09-21 11:15:08 -04:00
Tim Abbott
ee8f28a084
Use email addresses as unique identifiers rather than usernames.
...
Note that this code still assumes one's email address (stripped of
domain) is unique.
(imported from commit e98f96601ad109811978fc00b1165e97d8f7b185)
2012-09-21 09:43:22 -04:00
Luke Faraone
1050300ded
Render Huddle titles the way Waseem detailed in his original mockup.
...
This actually involved refactoring a good bit of existing code; we
in this commit introduce a new property of zephyr called .reply_to, which
is the fully rendered-to-string and pretty-printable version of the person
to which any reply should be addressed.
This is useful for grouping personals, where if you simply went by the
.display_recipient or .sender you would have to check them against
eachother.
We also introduce a new narrow_classish command, which is triggered on
clicking on the "Huddle with…" text. This method intelligently determines
which sort of narrowing to do; we essentially moved out code from the 'r'
key handling section and put it in its own function.
(imported from commit 2406ee0f6f83b990eec83190d2e8858865c06238)
2012-09-20 16:36:49 -04:00
Keegan McAllister
fbec2b8d76
Use DOM ids in get_zephyr
...
This greatly reduces lag on mouseover selection.
(imported from commit 7d9bc0ebce2aa9781c316033d3e9d21e9da6ee3f)
2012-09-20 15:23:41 -04:00
Keegan McAllister
1dabe1cf81
Give each zephyr row a unique DOM id
...
(imported from commit 4530d0bbbfc94fb86ebba9c6d73074de38e4a78a)
2012-09-20 15:23:41 -04:00
Keegan McAllister
48fea66e34
More consistent naming for #table and #filtered_table
...
(imported from commit 966ab97522a79fb5cf6dc1e215487ceba01f6d11)
2012-09-20 15:23:41 -04:00
Keegan McAllister
d4985ef5f4
Optimize select_zephyr_by_id for the already-selected case
...
Saves a call to get_zephyr.
(imported from commit 9ce9f2af7e4d8eb5e3a76a3c0ddbfb7f5896a583)
2012-09-20 15:23:41 -04:00
Keegan McAllister
a00227c864
Implicitly choose the selected zephyr for showing email address
...
I erroneously switched halfway in ce4f6289491722d4c1aa84fe8b88b3a5932a3f2a, so
let's just do it for real.
(imported from commit 4c09a7805f6e2322cbbab2f8534e9d362acdc826)
2012-09-20 15:23:39 -04:00
Keegan McAllister
8d994bdb21
Make sure only one email address is displayed at a time
...
(imported from commit 51b5b2268a154d1136b03185d6658fad7f2922aa)
2012-09-20 15:22:08 -04:00
Keegan McAllister
81ff352ac3
Simplify bookend creation
...
(imported from commit 8faf260037b7e0508d9e4acea24687ebc06ea0ef)
2012-09-20 00:08:46 -04:00
Keegan McAllister
7d894d8dd1
Merge update_pointer and select_zephyr
...
Having both is confusing.
(imported from commit becd1ac7a8bab583c4fafdd77256c57f3dc98ea1)
2012-09-19 17:55:58 -04:00
Keegan McAllister
5ff4d22859
Note get_zephyr performance
...
(imported from commit 215a457d30f5a355d18882a9703ff671248b054f)
2012-09-19 17:55:58 -04:00
Keegan McAllister
c3f3a1ef14
Cache the selected zephyr jQuery object
...
(imported from commit ce4f6289491722d4c1aa84fe8b88b3a5932a3f2a)
2012-09-19 17:35:18 -04:00
Keegan McAllister
5ba760a8f3
Use the zephyr IDs we already have
...
(imported from commit 6506f30be02cd4d4ee660709fbf8b7530a9276a9)
2012-09-19 16:43:45 -04:00