rr-
a69bdba63f
client/build: ditch arrayToObject
...
UglifyJS seems to have troubles using it, I didn't want to investigate
it too much as it's just a syntactic sugar used in about 4 places so I
just removed it altogether
2016-09-29 11:16:55 +02:00
rr-
0df3ceb439
client/build: work around uglifyjs bug #1308
...
https://github.com/mishoo/UglifyJS2/issues/1308
2016-09-29 11:16:18 +02:00
rr-
d31acc5952
client/views: show "!" in document title on errors
...
Closes #96
2016-09-26 22:48:13 +02:00
rr-
4f497d311a
client/api: support Unicode passwords
2016-09-24 08:49:47 +02:00
rr-
01fadd8f8c
client/api: fix reporting errors for bad logins
2016-09-24 08:49:07 +02:00
rr-
119c2449cd
client/tags: fix tagging with aliases
...
Fixes #93
2016-09-18 10:50:13 +02:00
rr-
600db78a45
client/posts: fix exiting mass tag (pt. 2)
...
Fixes #94
2016-09-18 10:38:53 +02:00
rr-
5eb130b02a
client/tags: blind fix for tags.json race
...
I don't want to make the UI wait for tags.json to load, I'd rather not
color categories on some pages instead.
2016-09-16 21:34:38 +02:00
rr-
91decaf9fe
client/tags: fix exiting mass tag
...
Exiting mass tag didn't remove [+] [-] buttons on post thumbnails.
2016-09-16 21:31:09 +02:00
rr-
f31f67bfec
client/comments: fix adding comment after voting
2016-09-10 15:23:54 +02:00
rr-
19eea226a6
client/search: fix dangling 'no data to show'
...
Concerned only endless scroll
2016-09-10 11:36:51 +02:00
rr-
ad87506044
client/settings: fix updating settings
...
Updating settings in browsing settings view has been reseting safety
settings in post list.
2016-09-10 11:36:51 +02:00
rr-
293b28117b
client/posts: link to duplicates in upload form
2016-09-10 11:36:02 +02:00
rr-
5b565e3b00
client/errors: show errors in inline Markdown
2016-09-10 11:36:02 +02:00
rr-
e05e0e5fd2
client/util: refactor Markdown formatter code
2016-09-10 11:36:02 +02:00
rr-
7fa8593b0a
client/general: improve URL escaping
...
Specifically, cater for /, + and % in URL components.
2016-09-04 02:07:22 +02:00
rr-
988664117a
client/posts: don't show notes on flash posts
2016-08-31 22:20:21 +02:00
rr-
acd989cabb
client/tags: fix URL redirections
...
User controller didn't need intervention but I refactored it to match
tag controller anyway.
2016-08-28 23:57:53 +02:00
rr-
997eb3de63
client/tags: fix detecting changes to names
...
Since 243ab15
the order of tag aliases matters, so the changes need to
pick up also permuting - which were ignored before.
2016-08-28 23:48:50 +02:00
rr-
4bfdd4c5cb
client/notes: don't steal arrow keys in textarea
2016-08-28 23:40:28 +02:00
rr-
5a152dbc0c
client/search: go back to page 1 on query change
2016-08-28 23:40:28 +02:00
rr-
e4f9c26776
client/posts: go back to page 1 on safety change
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-
e83e1b06a1
client/general: remove spurious console.log
2016-08-28 22:23:20 +02:00
rr-
6b042504b0
client/home: fix reporting backend errors
...
The code mistakenly referred to a non-existing field. Now it matches the
rest of the error handlers.
2016-08-28 20:00:50 +02:00
rr-
22342a29ad
client/file-dropper: fix URL validation
2016-08-27 23:45:07 +02:00
rr-
9dc438c391
client/expanders: fix setting empty expander title
2016-08-27 22:19:01 +02:00
rr-
63ec28ddb3
client/posts: don't show notes on videos
2016-08-27 22:19:01 +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-
702ec3e6fe
client/settings: increase default post count to 42
...
Since on big resolutions the posts use 7 columns, it makes sense to use
a multiple of that.
2016-08-27 22:19:01 +02:00
rr-
c21309aa35
client/models: don't modify API responses
...
API responses are cached internally - if they're modified, they're
modified in cache too. This can lead to certain anomalies, that can be
easily solved by making object copies.
2016-08-27 15:39:47 +02:00
rr-
63e8683fb8
client/tags: change 'edit time' to 'created on'
2016-08-27 15:29:40 +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-
c64453a15c
client/tag-input: scroll suggestions up on refresh
2016-08-24 10:58:58 +02:00
rr-
263d4f3626
client/paging: fix unbinding endless pager
2016-08-24 10:55:31 +02:00
rr-
2ef63fcc7a
client/tag-input: move removal links to left
2016-08-24 00:47:15 +02:00
rr-
7f4a2c1ceb
client/posts: show tag/note counters in expanders
2016-08-23 23:19:40 +02:00
rr-
cc78766585
client/posts: use object URLs in upload form
2016-08-23 23:14:21 +02:00
rr-
f9754edcce
client/general: fix autocomplete control
...
Regression from d5e197e
.
2016-08-23 23:14:21 +02:00
rr-
ad8ed89e3c
client/general: show empty thumbnails as grid
2016-08-23 23:14:05 +02:00
rr-
495f98a65f
client/auth: fix edit sidebar for management only
2016-08-23 23:14:05 +02:00
rr-
9124639564
client/auth: fix user forms reachable via URL
2016-08-23 23:14:05 +02:00
rr-
3c03c001e2
client/auth: fix tag forms reachable via URL
2016-08-23 23:14:05 +02:00
rr-
3ff48667a0
client/auth: fix swapped tag deleting and merging
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-
1e9ee0838a
client/auth: hide signup link in top nav if needed
2016-08-23 23:12:29 +02:00
rr-
08c6c2c145
client/auth: show errors early in controllers
...
In other words, verify the privileges client-side before issuing an
request to the server. This commit focuses on routing (e.g. clicking a
link while not logged in), rather than DOM element visibility that
should be already taken care of.
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-
fec31d7946
client/users: add exit confirmation for edit form
2016-08-22 21:38:34 +02:00
rr-
ea947ed91e
client/tags: add exit confirmation for edit form
2016-08-22 21:38:31 +02:00
rr-
d8d4654849
client/events: adjust event names
...
1. "change" should be used to passive changes.
2. "submit" should be used to form submits.
These are not interchangeable.
2016-08-22 21:36:45 +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-
f0ed82b0de
client/models: fix post list missing comment count
2016-08-21 20:11:38 +02:00
rr-
03b5e933bf
client/file-dropper: add URL support
2016-08-20 22:47:45 +02:00
rr-
ecd50f5c88
client/file-dropper: refactor to use events
2016-08-20 22:47:45 +02:00
rr-
8feac2950b
client/file-dropper: fix selecting multiple files
2016-08-20 22:47:45 +02:00
rr-
1f54a127d0
client/posts: fix deleting posts
2016-08-20 13:08:02 +02:00
rr-
9014baab92
client/snapshots: add snapshots browser
2016-08-20 13:01:17 +02:00
rr-
03a7bd0d5c
client/api: fix working with UTF8 entity IDs
2016-08-16 21:42:11 +02:00
rr-
023ec9a976
client/password-reset: fix event binding
...
Every time the password reset form was loaded, the form submit event
listener was attached to a non-disposable DOM node rather than the DOM
node whose life scope was bound to the viewed page. As such, submitting
the form, leaving the page, returning back to it and sending the request
again caused the 'submit' event to fire twice - one time from the
non-disposed event handler and one from the current handler. This
resulted in the request being sent twice, and getting two confirmation
messages on the screen.
Fortunately, since the password reset requests are GET requests, they're
intercepted by the internal cache of the client API facade, so the
client just saw duplicate messages without the requests being actually
sent to the backend - meaning no extra mails were sent.
2016-08-14 16:57:46 +02:00
rr-
6b77404ecf
client/tags: fix handling malformed tag export
2016-08-13 13:38:37 +02:00
rr-
cef3ad8e48
client/models: fix changing avatar
2016-08-13 11:57:27 +02:00
rr-
5200f834f7
client/models: fix modifying lists in post model
...
The lists in the post model (current state and original state) referred
to the same objects, so that making changes to current state was seen as
if no change has been made. This broke mass tag - it always thought
there were no changes to post tags.
2016-08-08 17:59:49 +02:00
rr-
059bac877b
client/models: fix notifying about list changes
2016-08-08 17:45:57 +02:00
rr-
46435182f6
client/posts: fix mass tag not sending version
2016-08-08 17:45:49 +02:00
rr-
79b3973f9e
client/general: use resource versioning
2016-08-07 09:55:51 +02:00
rr-
70a65cc0a3
client/notes: fix saving post breaking selection
...
The problem was with dangling references - the saved post has been
replacing the note collection with entirely new class instances, whereas
the notes control clung onto old references. Now the control detects
such reloads and acts accordingly.
2016-08-05 23:04:29 +02:00
rr-
8e9ddf796f
client/notes: add exit prompt for polygon changes
2016-08-05 23:04:29 +02:00
rr-
3235d70b1b
client/notes: make content appear at centroids
...
Previously it used the centroid of polygon's bounding box, not the
polygon's centroid.
2016-08-05 23:04:21 +02:00
rr-
b7149ba7d6
client/notes: make keyboard scaling use centroids
...
Previously it used first polygon point.
2016-08-05 23:04:11 +02:00
rr-
9013f15c1a
client/notes: add scaling notes with shift key
2016-08-05 23:03:43 +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-
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-
688740afa9
client/posts: fix mass tag for unprivileged 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-
b9f2db1c63
client/tags: add toggle suggestions opacity
2016-08-01 21:50:00 +02:00
rr-
3176709288
client/posts: clear messages before submit
...
Saving the post twice resulted in two 'Post saved!' messages.
2016-07-31 23:55:22 +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-
97b217dc31
client/tags: add [delete] key support in tag input
2016-07-31 22:35:09 +02:00
rr-
6e3462187d
client/tags: disable relations for pasted tags
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-
29bc41f5da
client/tags: don't mark duplicated implications
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-
4b75aab816
client/posts: implement exit confirmation
2016-07-30 23:10:58 +02:00
rr-
193e34aff8
client/posts: improve form behavior when saving
...
- Disable and enable the form
- Notify about success in the sidebar
- Notify about errors in the sidebar rather than using a native alert
2016-07-30 23:10:58 +02:00