Commit Graph

5584 Commits

Author SHA1 Message Date
r888888888
bf8f04df0a fix sitelinks searchbox 2017-04-18 17:12:44 -07:00
r888888888
68f057e7ba refactor how artist notes are updated 2017-04-18 17:07:12 -07:00
Albert Yi
e639be60e5 Merge pull request #2977 from evazion/feat-flag-reason-search
Add full text search for flag/appeal reasons
2017-04-17 13:10:28 -07:00
Albert Yi
42f6e8dc48 Merge pull request #2976 from evazion/fix-tests
Fix failing Pixiv tests
2017-04-17 13:09:32 -07:00
Albert Yi
24dd7b05c1 Merge pull request #2975 from evazion/feat-rails-cache
Use Rails.cache as caching backend.
2017-04-17 13:00:52 -07:00
evazion
fb0a8e8600 db: add reason index on post_flags, post_appeals. 2017-04-16 21:15:23 -05:00
evazion
cf9b67efb7 db/structure.sql: add index_pools_on_name_trgm migration. 2017-04-16 21:15:23 -05:00
evazion
54b4a2e0c5 /post_{flags,appeals}: default to fulltext search for reason field. 2017-04-16 21:15:23 -05:00
evazion
c0e5c400a7 tests: fix tests for Rails.cache. 2017-04-16 16:48:36 -05:00
evazion
192190a313 initializers/z_dalli.rb: initialize Rails.cache. 2017-04-16 16:48:36 -05:00
evazion
904abc2787 cache.rb: implement Cache in terms of Rails.cache. 2017-04-16 16:48:35 -05:00
evazion
941bcff743 cache.rb: remove unused incr, decr methods. 2017-04-16 16:48:35 -05:00
evazion
87b295b632 Fix exception on /post_flags/new, /post_appeals/new. 2017-04-15 23:15:17 -05:00
evazion
b68cb174f5 tests: fix pixiv tests to use https://i.pixiv.net. 2017-04-15 23:14:41 -05:00
r888888888
6d693799a0 fix trigram index on pools 2017-04-14 16:34:51 -07:00
r888888888
97da8f8647 deprecate tag subscriptions with warnings 2017-04-14 16:00:20 -07:00
r888888888
8b38e4d39a adjust threshold for supervoters for jaccard method 2017-04-14 15:15:20 -07:00
r888888888
f5ea5c36cb fix css for remove alias/implication 2017-04-14 13:23:50 -07:00
r888888888
38a2298de9 disable statement timeout 2017-04-14 13:18:16 -07:00
r888888888
5d7d6eecf8 partial fix for #2751 2017-04-14 13:14:36 -07:00
r888888888
144febc104 remove timestamps 2017-04-14 12:49:41 -07:00
r888888888
621bef3ddf Revert "Merge pull request #2952 from evazion/fix-2950"
This reverts commit ae4509a541197684bfb0538f65afa827854b4335, reversing
changes made to eb008a0e765e231a8fdef594759a61798d6bd1d5.
2017-04-14 12:28:58 -07:00
Albert Yi
81964fa571 Merge pull request #2973 from evazion/test-2972
Test pool metatag not saving bug (#2972).
2017-04-14 11:52:35 -07:00
evazion
9b53d32b4c post_archive_test.rb: exercise pool metatag not saving bug (#2972). 2017-04-14 13:49:54 -05:00
r888888888
76b5031bbf add uniqueness constraint on user names 2017-04-13 18:04:06 -07:00
r888888888
62fde705ce calculate vote similarity using jaccard instead of cosine distance 2017-04-13 14:53:03 -07:00
Albert Yi
602a7795f9 Merge pull request #2971 from evazion/feat-flag-preview
Add dtext preview to flags and appeals
2017-04-13 14:50:28 -07:00
evazion
18a2b2a221 dtext_field: use the field name as the label, not "Body".
For flags and appeals, the reason field should be labeled Reason, not Body.
2017-04-13 15:17:55 -05:00
evazion
c90614272a /posts/:id - add dtext preview to flag/appeal dialogs. 2017-04-13 15:17:55 -05:00
r888888888
db4fa8c7da support dynamic updates of forum for bulk update requests 2017-04-12 17:09:09 -07:00
r888888888
cbc886e140 dont scope approver ip addr for tag alias/implication 2017-04-12 16:43:15 -07:00
r888888888
19b8d41d09 refactor forum notifications for tag changes 2017-04-12 16:43:15 -07:00
Albert Yi
441022960a Merge pull request #2968 from evazion/fix-wiki-rename
Fix #2964: prevent renaming wikis with non-empty tags.
2017-04-10 14:53:33 -07:00
evazion
1b572c592c wikis: disallow renaming unless tag is empty (fix #2964). 2017-04-10 16:40:42 -05:00
r888888888
75bca7341b remove status init on artist create 2017-04-10 14:30:34 -07:00
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