Commit Graph

5549 Commits

Author SHA1 Message Date
Albert Yi
02302fde2f Merge pull request #2965 from evazion/fix-confirm-approve
Add confirm dialog to sidebar approve/undelete links.
2017-04-10 14:29:24 -07:00
Albert Yi
0a45b99e33 Merge pull request #2966 from evazion/fix-artist-autocomplete
Improve autocomplete on /artists, /wiki_pages, and /pools.
2017-04-10 14:29:05 -07:00
Albert Yi
843f3b783d Merge pull request #2967 from evazion/feat-flags-ui
Improve /post_flags, /post_appeals pages
2017-04-10 14:16:19 -07:00
evazion
8d45bb6d52 /post_{flags,appeals}: allow searching by tags. 2017-04-07 19:37:26 -05:00
evazion
f5e22ea235 /post_{flags,appeals}: convert search forms to simple form. 2017-04-07 19:37:26 -05:00
evazion
652e251040 /post_{flags,appeals}: add uploader, approver, flag/appeal count columns.
Also include '»' links next to uploader/approver names for drilling down
the search by a given user.
2017-04-07 19:37:26 -05:00
evazion
3ae8cc5586 post_flags.rb: add 'rejected' and 'deleted' categories.
Includes a category field in /post_flags.json.

Adds 'rejected' and 'deleted' search categories. Categories:

* unapproved - deleted after going unapproved in first three days
* rejected   - deleted after being manually flagged
* deleted    - either of the above
* banned     - artist requested removal
* normal     - none of the above (a "normal" manual flag)
2017-04-07 19:37:26 -05:00
evazion
b9693827c3 /wiki_pages: sort autocomplete by post count.
* Add search[order]=post_count param to /wiki_pages.
* Make autocomplete do a prefix match ordered by post count, so that it
  works the same way that tag autocomplete does elsewhere.
2017-04-07 18:25:31 -05:00
evazion
6b462c865e /artists: sort autocomplete by post count.
* Add search[order]=post_count param to /artists.
* Make autocomplete do a prefix match ordered by post count, so that it
  works the same way that tag autocomplete does elsewhere.
2017-04-07 18:25:31 -05:00
evazion
fbba167f0c artist.rb: fix ambiguous column references.
Using `search[empty_only]=true` caused certain queries to throw an
exception due to ambiguous column references after joining on the tags
table.

Example:

    https://danbooru.donmai.us/artists?search[empty_only]=true&search[name]=hammer*

    PG::AmbiguousColumn exception raised
    ERROR: column reference "name" is ambiguous LINE 1: ...ags"."name" = "artists"."name" WHERE (true) AND ((name LIKE ... ^
    lib/danbooru/paginator/active_record_extension.rb:108:in `total_count'
    lib/danbooru/paginator/active_record_extension.rb:63:in `block in paginate_numbered'
    lib/danbooru/paginator/active_record_extension.rb:60:in `tap'
    lib/danbooru/paginator/active_record_extension.rb:60:in `paginate_numbered'
    lib/danbooru/paginator/active_record_extension.rb:15:in `paginate'
    app/controllers/artists_controller.rb:41:in `index'
2017-04-07 18:25:31 -05:00
evazion
674028588c /artists: avoid COUNT(*), avoid N+1 queries on artist urls.
* The /artists page issued a `SELECT count(*) FROM artists` because
  .paginate was missing search_count.

* /artists.json had an N+1 problem on artist urls. This slowed down
  autocomplete.
2017-04-07 18:25:30 -05:00
evazion
1a63fd6ac7 /artists: filter deleted artists from autocomplete. 2017-04-07 18:25:30 -05:00
evazion
7f2859eb00 /pools: don't filter inactive pools from autocomplete.
The inactive flag marks series pools that are finished (no more posts
will be added), not pools that are deleted. Finished series should still
be autocompleted.
2017-04-07 18:25:30 -05:00
evazion
bb2f0ff795 /pools: make autocomplete use index.
`name ilike ?` doesn't use the index. Use `lower(name) like ?` instead.
2017-04-07 18:25:21 -05:00
evazion
85a39cadf0 /wiki_pages: avoid unnecessary COUNT(*).
@wiki_pages.count issues a COUNT(*), which is unnecessary when we're
just counting the ~20 @wiki_pages we've already loaded.
2017-04-07 18:10:26 -05:00
evazion
fcc5521f63 db: add updated_at index on wiki pages.
The wiki pages sidebar is ordered by updated_at. The sidebar is present
on all wiki pages, so this improves load times for all wikis.
2017-04-07 18:10:26 -05:00
evazion
5f6506cbb4 /posts/1234: add confirm dialog to sidebar approve/undelete links. 2017-04-06 22:33:34 -05:00
r888888888
8376c33980 change staging unicorn to use unix socket 2017-04-06 14:01:53 -07:00
Albert Yi
f45d8facc3 Merge pull request #2963 from evazion/feat-iqdb-api
Add API support to /iqdb_queries
2017-04-05 17:33:32 -07:00
evazion
2d2efbddfe /iqdb_queries: add api test. 2017-04-05 18:48:57 -05:00
evazion
423dd0b848 /iqdb_queries: include full data for each post in api response. 2017-04-05 18:01:16 -05:00
evazion
e15f955677 /iqdb_queries: support json/xml api responses. 2017-04-05 18:01:16 -05:00
evazion
c402e15cca /iqdb_queries: support both GET and POST; add GET /posts/1/similar. 2017-04-05 18:01:16 -05:00
r888888888
f2da569978 remove unused controller 2017-04-05 15:59:41 -07:00
r888888888
ae4b73c650 fix jquery dropdown css 2017-04-05 15:32:54 -07:00
Albert Yi
066aaf20c8 Merge pull request #2962 from evazion/fix-services-not-implemented
Fail gracefully when attempting to use unconfigured features (#2954)
2017-04-05 12:35:47 -07:00
Albert Yi
37416cf3a8 Merge pull request #2961 from evazion/fix-move-favs-user-assoc
Fix exception when moving favorites
2017-04-05 12:35:17 -07:00
evazion
0974ef8bd4 iqdbs: raise exception if not configured. 2017-04-05 01:17:04 -05:00
evazion
d66d19f328 big query: raise exception if not configured. 2017-04-05 01:17:04 -05:00
evazion
f57561118c reportbooru: raise exception if not configured. 2017-04-05 01:17:04 -05:00
evazion
08867fa84d listbooru: raise exception if not configured. 2017-04-05 01:17:04 -05:00
evazion
086b520dcc archives: raise exception if not configured. 2017-04-05 01:17:03 -05:00
evazion
3f35a9ab64 Handle failure gracefully for unconfigured services. 2017-04-05 01:17:03 -05:00
evazion
c03aa79ece Post#give_favorites_to_parent: wrap in transaction.
Ensure that if anything fails then the entire favorites move will be
rolled back.
2017-04-04 20:44:05 -05:00
evazion
40feeb2411 Post#give_favorites_to_parent: fix exception (fixup 77793759)
Forgot the `belong_to :user` association in 77793759.
2017-04-04 20:42:31 -05:00
r888888888
38800fc50e list more dependencies in readme 2017-04-04 17:10:00 -07:00
r888888888
b43b2eb275 optimization for TagAlias.to_aliased 2017-04-04 14:16:20 -07:00
r888888888
0801c80662 remove animated_gif and animated_png tags on create only #2960 2017-04-04 13:28:30 -07:00
r888888888
b00ae71957 fixes #2953: Tag change report doesn't take tags removed by user into account 2017-04-04 13:20:47 -07:00
r888888888
d3e876bedf fixes img-master urls for pixiv source #2946 2017-04-04 12:53:52 -07:00
r888888888
3190ecb601 dont autoremove animated_gif and animated_png tags on update #2500 2017-04-04 12:44:45 -07:00
r888888888
a5e55eda3d prune supervoters in daily maint 2017-04-04 12:39:17 -07:00
r888888888
0b8d4105aa fix tests 2017-04-04 12:39:17 -07:00
Albert Yi
347ffb5989 Merge pull request #2959 from evazion/fix-move-hidden-favs
Move hidden favorites when moving favs.
2017-04-04 12:38:56 -07:00
evazion
777937591e Post#give_favorites_to_parent: move hidden favs. 2017-04-03 22:36:20 -05:00
Albert Yi
690d022cb4 Merge pull request #2957 from evazion/fix-pximg-gallery-samples
Fix i.pximg.net manga gallery samples (fix #2946)
2017-04-03 15:22:31 -07:00
Albert Yi
3509850e19 Merge pull request #2958 from evazion/fix-2955
Fix #2955: Reapproval error for unapproved post
2017-04-03 15:21:21 -07:00
evazion
5db39f308a tests: fix post approval tests. 2017-04-03 17:18:32 -05:00
evazion
7c8135609b post_approval_test.rb: tabs to spaces. 2017-04-03 17:18:32 -05:00
evazion
e6328b8d30 post_approval_test.rb: move to test/unit. 2017-04-03 17:18:32 -05:00