Commit graph

259 commits

Author SHA1 Message Date
rr-
3149c43b7e client/settings: change checkbox label
Makes it consistent with others checkboxes, each one of which uses a
verb in its label
2016-09-10 11:36:03 +02:00
rr-
2c283f3058 client/posts: move submit buttons to top 2016-09-10 09:57:20 +02:00
rr-
b829f89f1b client/posts: change 'submit'->'save' in edit form 2016-09-10 09:50:58 +02:00
rr-
dfc65e5a7c client/general: add < > vim navigation hints
For example, in Vimperator, one now can navigate to previous/next page
or post by pressing f< or f>.
2016-08-28 23:40:28 +02:00
rr-
cf1d15354d client/paging: avoid redrawing header navigation 2016-08-28 23:40:28 +02:00
rr-
79d7b83e39 client/posts: fix mass tag 2016-08-28 22:23:20 +02:00
rr-
02d631a65d client/css: improve appearance on small screens 2016-08-27 22:19:01 +02:00
rr-
f63d024777 client/css: improve comment edit form background
If text area was bigger than the post, switching to preview mode
showed gray space under the text. Now the preview pane's background
should fill the whole edit box size.
2016-08-27 22:19:01 +02:00
rr-
514c4349e0 client/css: split into files 2016-08-27 22:19:01 +02:00
rr-
473f2a4ddc client/posts: make rating icons consistent 2016-08-27 22:19:01 +02:00
rr-
63e8683fb8 client/tags: change 'edit time' to 'created on' 2016-08-27 15:29:40 +02:00
rr-
8f230f5701 client/css: fix wrapping tags in read-only sidebar 2016-08-26 23:52:03 +02:00
rr-
422b99ac8d server/search: add content-checksum 2016-08-26 16:26:06 +02:00
rr-
7451d16baf client/css: fix tag list style 2016-08-25 00:04:34 +02:00
rr-
0a488afbd8 client/posts: add webm thumbs to upload form 2016-08-24 13:29:29 +02:00
rr-
3da4c54030 client/posts: add controls for reordering uploads 2016-08-24 13:00:17 +02:00
rr-
7f4a2c1ceb client/posts: show tag/note counters in expanders 2016-08-23 23:19:40 +02:00
rr-
495f98a65f client/auth: fix edit sidebar for management only 2016-08-23 23:14:05 +02:00
rr-
d753bdfab1 client/auth: fix edit tag tab visibility 2016-08-23 23:14:05 +02:00
rr-
34022d8fc8 client/auth: fix not hiding anonymity checkbox 2016-08-23 23:14:05 +02:00
rr-
e90b8972c7 client/auth: fix being able to rate/fav things 2016-08-23 23:12:29 +02:00
rr-
4ca7c49239 client/auth: fix masstag privilege bypass
Visiting mass-tag URL directly ignored masstag privileges and showed
tag/untag controls (although didn't show the controls in the header).
After this change, bypassing mass tag privileges got a little bit
harder. (It's still possible for the user to talk directly to the API
after all.)
2016-08-23 23:12:29 +02:00
rr-
124e871022 client/users: stop native completion
Disabled for user registration and editing where it causes more mess
than good.
2016-08-22 21:46:30 +02:00
rr-
d5e197e6ea client/general: add empty href for link buttons
In e464e69 I removed href='#' but I noticed that it broke some things.
Readding href serves two purposes:

- it makes links reachable with Tab key
- it makes links clickable with Enter key

The alternative to this approach was to introduce [tabindex] and [role]
attributes. But not only using tabindex=0 with <a/> is questionable,
it'd require adding a keyboard handler that'd intercept space and return
key presses and simulated link clicks. Since it's best to leave this
kind of thing to the native UI, I went with readding hrefs instead. I
believe that hash hrefs, even though being a common practice, are silly,
so I decided to settle down with empty hrefs.

As a bonus, I added a snippet that prevents middle mouse clicks from
opening such links/buttons in new tabs, which was the motivation for
e464e69.
2016-08-22 01:40:30 +02:00
rr-
c7f36c893f client/expanders: extract HTML 2016-08-22 01:40:30 +02:00
rr-
0a326972c3 client/tag-input: add 'add' button 2016-08-22 00:54:11 +02:00
rr-
d0c0652720 client/tag-input: extract HTML template 2016-08-22 00:54:11 +02:00
rr-
5bcf44aa2d client/posts: implement upload form 2016-08-21 23:43:36 +02:00
rr-
dbd36256ce client/file-dropper: support Vimperator focus 2016-08-20 22:47:45 +02:00
rr-
03b5e933bf client/file-dropper: add URL support 2016-08-20 22:47:45 +02:00
rr-
9014baab92 client/snapshots: add snapshots browser 2016-08-20 13:01:17 +02:00
rr-
d23300645f client/tags: fix tag category template 2016-08-05 23:12:42 +02:00
rr-
1b62daed9a client/general: clean up, refactor 2016-08-05 23:02:41 +02:00
rr-
9304e309f6 client/settings: add posts per page option 2016-08-05 23:02:41 +02:00
rr-
9383fd2b27 client/settings: rearrange the form, add hints 2016-08-05 23:02:41 +02:00
rr-
d5a00fe4b9 client/posts: add note editing 2016-08-05 23:02:41 +02:00
rr-
7f53abb498 client/tags: remove unused cruft 2016-08-04 00:30:24 +02:00
rr-
67f803a2f2 client/general: fix support for deleted users 2016-08-02 12:27:02 +02:00
rr-
0c64d1fe1c client/posts: add post deleting 2016-08-02 12:27:01 +02:00
rr-
179cf57cb9 client/posts: add post featuring 2016-08-02 12:27:01 +02:00
rr-
51ea06d837 client/posts: add expanders to edit sidebar 2016-08-02 12:27:01 +02:00
rr-
9ee973ce1c client/posts: add custom thumbnail discarding 2016-07-31 23:54:29 +02:00
rr-
673bb52d4a client/tags: add ability to turn off suggestions 2016-07-31 23:07:01 +02:00
rr-
1fbeecb0a2 client/help: correct obsolete information 2016-07-30 23:12:31 +02:00
rr-
e464e69b36 client/general: remove faux href='#' from links 2016-07-30 23:12:31 +02:00
rr-
245ce258a9 client/tags: improve copying tag list
- Don't copy tag count
- Don't copy × button
- Copy spaces between tags
2016-07-30 23:12:08 +02:00
rr-
72072db078 client/tags: show tag suggestions in tag input 2016-07-30 23:10:58 +02:00
rr-
c1c47de3a5 client/posts: links in edit mode preserve mode 2016-07-30 23:10:58 +02:00
rr-
e4954140f8 client/tags: rewrite tag input
Suggestions will be reimplemented in separate commit
2016-07-30 23:10:38 +02:00
rr-
7e6e59417e client/tags: allow deleting used tags 2016-07-30 13:43:15 +02:00
rr-
d91352a3b0 client/general: ditch tabular forms 2016-07-30 13:41:44 +02:00
rr-
ef4806e142 client/posts: display edit link for tagless posts 2016-07-28 23:10:41 +02:00
rr-
1ed7ad4173 client/posts: add simple thumbnail editing 2016-07-28 23:10:40 +02:00
rr-
3d8eaab57a client/posts: add post content editing 2016-07-27 22:27:33 +02:00
rr-
6635b507f2 client/posts: fix losing query after exiting edit 2016-07-26 23:20:16 +02:00
rr-
7022686b77 client/tags: improve privilege checking
- Hide fields that are uneditable, rather than disabling them
- Support fragmented edit privileges (e.g. roles than can edit only some
  aspects of tags) - up until now the client tried to send everything at
  once, which resulted in errors for such cases.
2016-07-26 20:49:48 +02:00
rr-
b378ce7ede client/posts: move relations above tags 2016-07-26 20:38:12 +02:00
rr-
8a68e182fd client/posts: implement loop video flag 2016-07-26 20:38:12 +02:00
rr-
865c4f3b79 client/posts: respect edit privileges in sidebar 2016-07-26 20:38:12 +02:00
rr-
7488abb332 client/posts: add simple editing 2016-07-17 20:32:00 +02:00
rr-
5ac5eb5503 client/general: refactor URL parameter handling 2016-07-08 00:54:24 +02:00
rr-
cd1f4709f0 client/home: change apparance 2016-07-08 00:08:44 +02:00
rr-
fccedc090f client/posts: add mass tag 2016-07-06 23:03:37 +02:00
rr-
99011b02d7 client/home: fix missing info on featured post 2016-07-06 00:07:46 +02:00
rr-
abd8e9e89c client/general: handle spaces in autocomplete 2016-07-03 19:38:17 +02:00
rr-
83cc53be07 client/posts: show post relations 2016-07-03 18:30:32 +02:00
rr-
c8e57146f3 client/tags: add usage count 2016-06-28 22:04:55 +02:00
rr-
c7f6663c36 client/general: escape entity names in links 2016-06-23 12:47:56 +02:00
rr-
6ea129a9ef client/views: escape HTML
This lets client use < > in tag names.
2016-06-23 12:47:56 +02:00
rr-
f3049e5546 client/tags: add summary view, add tag description 2016-06-23 00:17:11 +02:00
rr-
1a75c61f65 client/tags: fix tag categories with spaces 2016-06-23 00:15:25 +02:00
rr-
eb09677bf8 client/general: replace direct API with models 2016-06-20 23:52:09 +02:00
rr-
39c0c4f338 client/posts: remember search for prev/next post 2016-06-18 11:47:08 +02:00
rr-
a697aba1b0 client/general: remove api calls from controls
Introduce some missing models along the way
2016-06-18 10:35:20 +02:00
rr-
54e3099c56 client/general: refactor control flow
- Controller lifetime is bound to route lifetime
- View lifetime is bound to controller lifetime
- Control lifetime is bound to view lifetime
- Enhanced event dispatching
- Enhanced responsiveness in some places
- Views communicate user input to controllers via new event system
2016-06-18 10:35:20 +02:00
rr-
8c424ae4ab client/tags: fix link to used tags 2016-06-17 21:25:37 +02:00
rr-
0f1e234a5d client/top-nav: trying out actual mvc 2016-06-13 22:43:07 +02:00
rr-
6b68c77e17 server/posts: add relation-count token 2016-06-13 20:09:15 +02:00
rr-
c508d37d54 client/css: improve tag edit view 2016-06-12 22:46:22 +02:00
rr-
a28b4bdd3e client/comments: add comment adding 2016-06-12 18:11:56 +02:00
rr-
1e48140b00 client/comments: add global comment list 2016-06-12 14:04:52 +02:00
rr-
7e8a9a0948 client/comments: add comment list view for post 2016-06-12 12:54:08 +02:00
rr-
56432e6089 client/posts: add transparency grid
Can be turned off in browsing settings.
2016-06-11 22:34:01 +02:00
rr-
07603be35e client/posts: add Vimperator hints to vote buttons 2016-06-11 22:34:01 +02:00
rr-
7670737873 client/general: reduce visual distractions 2016-06-11 17:36:02 +02:00
rr-
7566d2e0f3 client/general: respect privileges 2016-06-11 17:36:02 +02:00
rr-
0842d90ca2 client/general: ditch underscore for loops 2016-06-11 17:36:02 +02:00
rr-
2e6e9b40b6 client/general: make search box seen by Vimperator 2016-06-08 22:54:07 +02:00
rr-
07329d33a4 client/posts: add post view (without comments yet) 2016-06-08 22:43:03 +02:00
rr-
e944e89c54 client/tags: add edit time column 2016-06-08 22:39:49 +02:00
rr-
3a42b21987 client/css: refactor <nav> css 2016-06-05 21:46:57 +02:00
rr-
19d8480891 client/users: add counters to user summary 2016-06-03 21:46:25 +02:00
rr-
9d6878a1aa client/posts: bind 'p' key 2016-06-03 19:47:09 +02:00
rr-
c114cec642 client/posts: add safety buttons 2016-06-03 19:47:09 +02:00
rr-
f8e6d07fea client/posts: add proof of concept for post list 2016-06-02 23:39:38 +02:00
rr-
802c7feca0 server/search: add safety search for posts 2016-06-02 13:58:08 +02:00
rr-
aa2f4559b7 client/settings: add option to upscale small posts 2016-06-01 23:42:42 +02:00
rr-
fd2df3966d client/home: show top nav after all, improve looks 2016-06-01 23:42:42 +02:00
rr-
aa71ccb02c client/home: show who featured the post 2016-05-29 12:48:51 +02:00
rr-
53fd6fb29b client/home: view featured post, add search form 2016-05-29 12:41:22 +02:00
rr-
bab88f4739 client/top-nav: reuse makeAccessLink 2016-05-29 12:40:53 +02:00
rr-
d99c03b9fa client/home: render disk usage and post count 2016-05-22 22:39:31 +02:00
rr-
7aaa28f9de client/tags: add setting default tag category 2016-05-22 22:17:11 +02:00
rr-
7ea4718b1b client/tags: add suggesting related tags 2016-05-22 22:17:11 +02:00
rr-
519f606a39 client/build: Google Droid Sans → local Open Sans 2016-05-21 14:02:08 +02:00
rr-
f721554724 client/build: don't use CDN for FontAwesome 2016-05-21 12:35:41 +02:00
rr-
d8c20b89c6 client/build: organize assets into directories 2016-05-21 12:33:02 +02:00
rr-
df5d72d429 client/general: show correct URL in 404 page 2016-05-21 12:03:49 +02:00
rr-
e7fe7d3899 client/general: add 404 page
Reuses old 404 image from 1.x branch, may be subject to change.
2016-05-21 11:49:32 +02:00
rr-
6beffc2ec1 client/home: link to szurubooru code 2016-05-21 11:38:24 +02:00
rr-
2fade2f08c client/css: improve appearance on small screens 2016-05-21 11:17:11 +02:00
rr-
052a7ca684 client/general: use 'ctx' variable for templates 2016-05-21 09:46:53 +02:00
rr-
50404d5f5e client/general: change templates extension
...from .Handlebars' (which the project no longer uses) .hbs, to a more
generic .tpl. Additionally, replace hyphens with underscores for
consistency.
2016-05-18 00:15:28 +02:00
rr-
914bee4c64 client/build: compile vendor packages separately 2016-05-14 13:50:39 +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-
09bc5f10f9 client/tags: fix hiding table for no results 2016-05-11 23:47:50 +02:00
rr-
8866a46f68 client/general: rename certain views 2016-05-11 12:17:40 +02:00
rr-
27533483b2 client/tags: make headers clickable 2016-05-10 14:06:52 +02:00
rr-
27cce56054 client/tags: add tag category editing 2016-05-10 13:26:17 +02:00
rr-
7b342b58b5 client/users: fix links to post search queries 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-
58964bcdc9 server/posts: add post listing 2016-05-07 21:50:37 +02:00
rr-
266f5c027f client/tags: add tag listing 2016-04-29 12:58:56 +02:00
rr-
0f90196ad5 client/users: fix listing users 2016-04-29 10:17:55 +02:00
rr-
a30886cc70 server/search: rename order: to sort: 2016-04-22 19:37:58 +02:00
rr-
0bc45e9c45 server/search: support -min and -max suffixes 2016-04-17 08:31:46 +02:00
rr-
71e8e32faf client/users: change search syntax help link 2016-04-17 00:03:56 +02:00
rr-
925bfcecc5 client/help: split search help into sections 2016-04-17 00:03:45 +02:00
rr-
61d2fb88ea server/tags: add tag listing 2016-04-16 21:24:09 +02:00
rr-
b382f3398f client/users: add keyboard shortcuts to user list 2016-04-14 21:50:59 +02:00
rr-
0ddbc64320 client/css: tweak help button appearance 2016-04-14 21:50:59 +02:00
rr-
35c549493c server/users: support wildcards in user search 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-
7cf4e6c37d client/paging: compact page no. for endless pager 2016-04-14 17:50:38 +02:00
rr-
c92c7b722f client/css: don't use monospace fonts 2016-04-14 17:50:29 +02:00
rr-
905faf3721 client/css: scale to device width 2016-04-14 17:50:04 +02:00
rr-
b7a67fc01c views/paging: add endless pager 2016-04-13 00:27:36 +02:00
rr-
68c966ff7d client/users: fix patterns in account settings 2016-04-12 13:48:31 +02:00
rr-
21c15f4cb9 client/settings: add accountless settings 2016-04-11 22:48:47 +02:00
rr-
c543b77aed client/nav: add user avatar 2016-04-11 21:43:58 +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-
4faf42ee19 client+server/general: fix config references
...some references still referred to non-existing config.ini.
2016-04-10 16:23:35 +02:00
rr-
e268d679d3 client/views: move form controls to HB helpers 2016-04-10 16:23:33 +02:00
rr-
58e0d2e295 client/views: replace fieldsets with divs
Although it has nice semantic name, fieldset gives troubles to flexbox,
so I'm dropping it.
2016-04-10 00:24:54 +02:00
rr-
8e525b48a6 client/general: correct A:R for thumbnails 2016-04-09 22:38:57 +02:00
rr-
4821f2ac6c client/users: add user deletion 2016-04-09 18:41:49 +02:00