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-
b7e9cbd541
server/posts: allow tagless posts
2016-08-21 23:40:01 +02:00
rr-
f0ed82b0de
client/models: fix post list missing comment count
2016-08-21 20:11:38 +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-
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-
28bcbd33b9
server/posts: use SHA1 checksums
...
This changes the checksums to ones that are compatible with 1.x, which
relieves the migration script from recalculating the checksums for all
the posts.
2016-08-20 13:06:19 +02:00
rr-
9014baab92
client/snapshots: add snapshots browser
2016-08-20 13:01:17 +02:00
rr-
80af79779d
server/snapshots: rewrite
2016-08-16 21:51:25 +02:00
rr-
03a7bd0d5c
client/api: fix working with UTF8 entity IDs
2016-08-16 21:42:11 +02:00
rr-
65119d69ab
server/rest: urldecode incoming paths
2016-08-16 21:42:11 +02:00
rr-
0c2efc0be5
server/rest: work around Python bug 27777
...
(See http://bugs.python.org/issue27777 )
2016-08-16 21:42:11 +02:00
rr-
e89a086d58
server/rest: fix reporting parameter type errors
2016-08-16 21:42:11 +02:00
rr-
ff7bbbdd8a
server/db: fix upgrade (regression from 9aea55e
)
2016-08-16 21:42:11 +02:00
rr-
6c29377f6b
server/db: allow full DSN; use memdb in tests
...
The earlier commit is still relevant as it allows to integrate real
database when needed.
2016-08-16 21:42:09 +02:00
rr-
e688f39887
server/db: specify nullable for foreign keys
...
This is mostly stylistic change, but it clearly shows the intended
behavior should we detect more integrity violation errors.
2016-08-16 17:22:33 +02:00
rr-
522886ae6c
server/db: fix user cascade deletions
2016-08-16 17:22:33 +02:00
rr-
a224297c4f
server/db: poor fix for tag aliases' order
...
It's a hack, but it seems to work okay.
2016-08-16 17:22:33 +02:00
rr-
48af5160df
server/search: fix negative offsets causing ISE
2016-08-16 17:22:33 +02:00
rr-
87b1ee4564
server/tests: use real database
...
I'm experimenting with snapshots and found following limitation of
SQLite: https://www.sqlite.org/isolation.html
2016-08-16 17:22:33 +02:00
rr-
0320a0b55b
server/general: improve versioning effectiveness
...
...by integrating it with sqlalchemy that adds WHERE conditions for each
UPDATE and DELETE statement.
2016-08-16 17:22:33 +02:00
rr-
ef4af697c4
server/tags: fix tag sorting
...
Brainfart from d6942121e5
2016-08-14 17:54:15 +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-
663aacdf82
server/tools: add lint script
...
Integrated both pylint and pycodestyle.
2016-08-14 16:46:50 +02:00
rr-
9aea55e3d1
server/general: embrace most of PEP8
...
Ignored only the rules about continuing / hanging indentation.
Also, added __init__.py to tests so that pylint discovers them. (I don't
buy pytest's BS about installing your package.)
2016-08-14 16:44:03 +02:00
rr-
af62f8c45a
server/general: ditch falcon for in-house WSGI app
...
For quite some time, I hated Falcon's class maps approach that caused
more chaos than good for Szurubooru. I've taken a look at the other
frameworks (hug, flask, etc) again, but they all looked too
bloated/over-engineered. I decided to just talk to WSGI myself.
Regex-based routing may not be the fastest in the world, but I'm fine
with response time of 10 ms for cached /posts.
2016-08-14 16:43:35 +02:00
rr-
d102c9bdba
server/tests: update func.posts tests
2016-08-14 16:43:35 +02:00
rr-
264f9ee70b
server/tests: update func.mime tests
2016-08-14 16:43:35 +02:00
rr-
c23c401c4d
server/tests: add func.tags tests
2016-08-14 16:43:35 +02:00
rr-
53e96ba41f
server/tests: add func.tag_categories tests
2016-08-14 16:43:35 +02:00
rr-
81dfbaec98
server/tests: add func.users tests
2016-08-14 16:43:35 +02:00
rr-
03c74cb5a3
server/tests: add func.comments tests
2016-08-14 16:43:35 +02:00
rr-
65efc309a8
server/comments: catch bad IDs
2016-08-14 16:43:31 +02:00
rr-
56b3eb9674
server/util: fix case conversion
2016-08-14 16:43:04 +02:00
rr-
86452019a3
server/util: improve catching bad field names
...
KeyError could catch exceptions that happened inside the serializer
routine and mistakenly report them as an error with user input.
2016-08-14 16:43:04 +02:00
rr-
f6f07a35df
server/general: authenticated_user->auth_user
2016-08-14 16:43:04 +02:00
rr-
c2bbf7b62c
server/general: add assertions
2016-08-14 16:43:04 +02:00
rr-
bb86e9bf56
server/posts: add more safety checks for notes
2016-08-14 16:43:04 +02:00
rr-
7cd4a1a530
server/tags: verify description size
2016-08-14 16:43:01 +02:00
rr-
3db4f39545
server/tag-categories: correct exception type
2016-08-14 12:31:46 +02:00
rr-
92075bb455
server/tags: don't verify tag names while getting
2016-08-14 12:31:46 +02:00
rr-
d6942121e5
server/tags: change tags sort order
2016-08-14 12:31:21 +02:00
rr-
07237bc2bc
server/tags: fix changing name case
2016-08-14 11:39:04 +02:00
rr-
7e5deee76b
server/tags: fix tag merging
2016-08-14 11:39:04 +02:00
rr-
2b3d193b7c
server/tags: don't auto-create tag categories
2016-08-14 11:38:59 +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