rr-
d2b9cece28
views/autocomplete: remove unused nodes
2016-05-20 18:43:27 +02:00
rr-
f2833b6e76
views/tags: automatically add implied tags
2016-05-19 23:32:23 +02:00
rr-
407848706a
views/tags: add tag input control
...
For now, without tag relations
2016-05-18 00:13:17 +02:00
rr-
5736b4adc1
views/tags: add autocomplete control
2016-05-17 11:34:47 +02:00
rr-
2cba1a432f
client/general: replace underscore with lodash
2016-05-14 13:12:01 +02:00
rr-
d123f27815
clients/general: fix empty view message handling
2016-05-12 00:13:01 +02:00
rr-
414f841944
client/tags: fix unbound EmptyView
2016-05-12 00:12:48 +02:00
rr-
b1deb617bc
client/tags: add tag merging, editing and deleting
2016-05-11 23:47:50 +02:00
rr-
2a4241641c
client/events: improve event dispatching
...
This commit introduces timer-less retry system:
1. Any change to URL is going to stop listening to any messages.
2. If a message is sent and there's no handler that could pick it up,
the message gets enqueued.
3. The message is sent again to the first handler that attaches itself
to given event type.
While in theory this is full of holes (no control over the first
handler), in practice, it works quite well.
Additionally, views.listenToMessages was attaching to completely wrong
DOM node; this commit fixes this as well.
2016-05-11 23:47:50 +02:00
rr-
8866a46f68
client/general: rename certain views
2016-05-11 12:17:40 +02:00
rr-
3856e9fd0d
client/general: fix JSCS warnings
2016-05-10 14:13:24 +02:00
rr-
27cce56054
client/tags: add tag category editing
2016-05-10 13:26:17 +02:00
rr-
be0a70355d
client/paging: replace 'var' with 'let'
...
Old habits die hard
2016-05-10 12:18:06 +02:00
rr-
6405fbe9f2
client/general: replace handlebars with underscore
2016-05-09 22:36:29 +02:00
rr-
29b0fde9a7
client/paging: improve endless paging
...
- Change page number indicator
- Remove most of the scrolling cruft as it has no chance of working
anyway, thanks to our benevolent browsers
- Scroll to page header if the page is not the first one (I'm surprised
this even works)
- Use promises rather than timers
- Simplify top page detection using .elementFromPoint rather than
iterating over all pages. Coincidentally, this seems to work slightly
better
2016-05-09 11:17:26 +02:00
rr-
7610761ec8
client/general: add nprogress to API calls
2016-05-08 18:59:11 +02:00
rr-
f083e5fdc8
client/general: scroll to top on page change
2016-05-08 18:56:08 +02:00
rr-
da1386c7d2
client/auth: forget user when they try to log in
...
This is to let user log in if their login cookie is broken (for example
when it refers to a non existing user). Normally, the client should
treat errors caused by cookie logins as temporary server failures,
inform the user about it and leave the cookie, so that when the server
is up again, all user needs to do is to reload the page rather than
logging again.
2016-05-08 18:04:06 +02:00
rr-
198cb0af3e
server/users: hardcode available ranks
2016-05-08 16:59:25 +02:00
rr-
98738dc497
client/users: fix inability to remove email
2016-04-29 13:19:11 +02:00
rr-
266f5c027f
client/tags: add tag listing
2016-04-29 12:58:56 +02:00
rr-
a197368bc5
client/paging: fix endless pager issues
2016-04-17 09:24:05 +02:00
rr-
0bc45e9c45
server/search: support -min and -max suffixes
2016-04-17 08:31:46 +02:00
rr-
925bfcecc5
client/help: split search help into sections
2016-04-17 00:03:45 +02:00
rr-
e4239a199c
server/api: refactor + remove ID from user JSON
2016-04-16 15:49:21 +02:00
rr-
b382f3398f
client/users: add keyboard shortcuts to user list
2016-04-14 21:50:59 +02:00
rr-
ef3dc1fa75
client/paging: refactor manual pager
2016-04-14 21:50:59 +02:00
rr-
c2aa497d91
client/settings: decouple settings from controller
2016-04-14 21:50:59 +02:00
rr-
00bf279396
client/views: fix access key underline
2016-04-14 21:50:59 +02:00
rr-
286df9faf3
docs+client/users: document user filtering
2016-04-14 19:58:28 +02:00
rr-
f34e83b325
client/users: add filtering
2016-04-14 17:50:46 +02:00
rr-
90559ffcdb
client/build: fix IE11 transpiling
2016-04-14 17:50:38 +02:00
rr-
905faf3721
client/css: scale to device width
2016-04-14 17:50:04 +02:00
rr-
a83a896dde
client/pager: cache state between navigations
2016-04-14 00:41:34 +02:00
rr-
43c657e371
client/paging: don't include empty parameters
2016-04-13 22:15:40 +02:00
rr-
26d46a43bf
client/pager: synchronize page number with URL
2016-04-13 21:33:49 +02:00
rr-
d18a8090b1
client/build: transpile ES6 for older browsers
2016-04-13 20:13:10 +02:00
rr-
5796b07908
client/build: don't keep templates in DOM
2016-04-13 18:58:34 +02:00
rr-
b7a67fc01c
views/paging: add endless pager
2016-04-13 00:27:36 +02:00
rr-
7874614be3
client/messages: fix batch messages appearance
2016-04-12 18:25:52 +02:00
rr-
d3979d63dc
client/paging: notify about empty results
2016-04-12 18:25:08 +02:00
rr-
21c15f4cb9
client/settings: add accountless settings
2016-04-11 22:48:47 +02:00
rr-
f5272bb5f3
client/api: fix login error handling
2016-04-11 21:43:58 +02:00
rr-
543d0fca57
client/api: cache API requests
...
Specifically, cache all GET requests until first POST/PUT/DELETE
request.
2016-04-11 21:43:58 +02:00
rr-
c543b77aed
client/nav: add user avatar
2016-04-11 21:43:58 +02:00
rr-
1086bca3c2
client/views: fix rendering non-void elements
2016-04-11 19:23:53 +02:00
rr-
d6daf84da0
client/users: add basic users listing
2016-04-11 19:23:53 +02:00
rr-
4dcee37567
client/users: support avatar changing
2016-04-10 18:54:19 +02:00
rr-
e268d679d3
client/views: move form controls to HB helpers
2016-04-10 16:23:33 +02:00
rr-
8f5890ab67
client/general: refactor promises
2016-04-09 23:41:56 +02:00