Commit Graph
100 Commits
Author SHA1 Message Date
evazion 91d25475a9 Fix #3312: Unneeded case sensitivity on tag searches 2017-09-27 11:46:23 -05:00
evazion 5a6cc84817 favorites: don't regen fav count when adding favorites.
Don't randomly regen the fav count when favoriting a post. This was a
workaround for #1210 that is no longer needed.
2017-09-13 13:29:35 -07:00
evazion af42740ca9 expunge: decrement user favorite counts. 2017-09-13 13:29:35 -07:00
evazion fd9dc6f647 expunge: decrement upload and note/post update counts (fix #2062). 2017-09-13 13:29:35 -07:00
evazion b69bf61f9f /artist_commentary_versions: fix body field being duplicated.
ref: https://danbooru.donmai.us/forum_topics/9127?page=197#forum_post_134924
2017-08-21 15:25:48 -05:00
evazion 9d28a2491a Fix #3270: Filter tag search results for deleted wikis. 2017-08-15 23:42:43 -05:00
evazion b215d2112d wiki pages: normalize unicode in other names. 2017-08-12 17:15:19 -05:00
evazion 9b031a9c20 Fix #3266: Normalize fullwidth Unicode characters in translated tags. 2017-08-12 17:13:52 -05:00
evazion 6797f8564d upload limits: show full upload limits on upload page. 2017-08-10 23:58:58 -05:00
evazion 1ef363dd68 upload limits: add time remaining until next upload to profiles (fix #3262). 2017-08-10 23:58:58 -05:00
evazion bf3101da48 upload limits: show how upload limits are calculated in profiles.
* Allow mousing over the upload limit on profile pages to show the full
  formula for the upload limit calculation. In particular, show how the
  upload limit multiplier is derived from the deletion confidence.

* Refactor to avoid duplicating upload limit calculations in the
  presenter, as much as possible.
2017-08-10 23:48:50 -05:00
evazion 3b3abac8f6 pools: disallow asterisks and numeric-only names. 2017-08-10 18:37:22 -05:00
evazion 3b9a54f681 pools: strip leading/trailing, consecutive underscores in names (fix #3263). 2017-08-10 18:33:36 -05:00
evazion c270954991 Fix #3258: Fetch source data broken for https://i.pximg.net/* ugoiras. 2017-08-06 17:23:29 -05:00
evazion 2b9393a624 twitter: remove unused TwitterApi class (#3206). 2017-08-05 23:12:55 -05:00
evazion 8b70e0099b twitter: fix to handle extended tweets (fix #3254, #3072). 2017-08-05 23:12:55 -05:00
evazion b23f92fa10 Fix #2502: Exclude empty commentary from searches. 2017-08-05 18:32:31 -05:00
evazion 69d4712708 mentions: process mentions added in an edit (fix #2736) 2017-08-04 23:48:53 -05:00
evazion 4c54e18c6d mentions: factor out mention parsing to DText.parse_mentions. 2017-08-04 23:48:31 -05:00
evazion 40e006f7cb Fix keyboard navigation in pools (#3238).
Don't display the search navigation bar when browsing pools. Doing so
breaks the A/D keyboard shortcuts because the search navigator takes
precedence over the pool navigator.

https://danbooru.donmai.us/forum_topics/9127?page=195#forum_post_134297
2017-08-04 19:28:36 -05:00
evazion 7b96d9dcd4 Fix 'Deleted post filter' option applying to status:{any,all} (#3245).
https://danbooru.donmai.us/forum_topics/9127?page=196#forum_post_134342
2017-08-04 17:15:39 -05:00
evazion a56c1bbb76 artists: fix validation error when url_string has leading spaces.
Bug: if the url_string had leading spaces, when it was split the
resulting array contained the empty string, which led to a validation
error when trying to save the urls.

Fixup for #3247.
2017-08-04 01:05:25 -05:00
evazion e2c2435356 Gemfile: update dtext to 1.5.1. 2017-08-04 00:47:43 -05:00
evazion 8142f74381 aliases/implications: add status/tag type/order search options. 2017-07-29 17:43:47 -05:00
evazion 49f5a1060e aliases/implications: factor out shared code. 2017-07-29 17:13:34 -05:00
evazion 04e9b8ebff Merge branch 'fix-3246' into master-albert 2017-07-29 15:00:35 -05:00
evazion 1000f8d2e2 Fix #3246: Require nonblank body for wiki pages. 2017-07-29 14:59:42 -05:00
evazion 624444d51d artists: validate that urls are well-formed (fix #2346). 2017-07-29 01:44:05 -05:00
evazion 10614d2152 artists: show success/error message when updating artists. 2017-07-29 01:44:05 -05:00
evazion 6121b8cb25 artists: simplify artist url saving code.
Refactor the way artist urls are saved so that artist url validations
run before the artist is saved, not after.
2017-07-29 01:41:37 -05:00
evazion 1c38fbbf64 Fix #2344: Negating status metatag breaks deleted post filter. 2017-07-28 19:52:35 -05:00
evazion 4b635628cc Fix #3243: Don't create new note versions when nothing is changed. 2017-07-28 17:41:05 -05:00
evazion 76b4b365ae post replacements: don't queue deletion when file is unchanged (#3235).
When replacing a post with the same file, don't queue a deletion and
don't leave a comment or modaction. There's no need to do these things
when we're restoring a missing or corrupted image with the original file.
2017-07-27 16:26:35 -05:00
evazion 80e8c9d174 strategies/pixiv.rb: removed unused methods (#3206).
The page count and the moniker are now obtained from the API.
2017-07-26 18:17:04 -05:00
evazion 7ae860a8b8 Drop Pixiv whitecube support (#2681, #3206). 2017-07-26 18:06:46 -05:00
evazion 22980c845a tests: fix pixiv ugoira urls. 2017-07-25 00:36:18 -05:00
evazion b53371b698 Fix #3235: Replacements deleting files currently in use. 2017-07-24 23:43:38 -05:00
evazion 11ef460db0 post replacements: allow replacing post with identical file. 2017-07-24 23:05:34 -05:00
evazion 67528ce5ab Fix hidden attribute leaks in legacy post controller (#3237). 2017-07-24 20:35:12 -05:00
evazion f2bf756422 Fix hidden attribute leaks in data attributes (#3237). 2017-07-24 20:35:12 -05:00
evazion 9893dc1734 Fix #3237: Meta tags expose posts with censored tags. 2017-07-24 19:40:35 -05:00
evazion 0129891213 Fix #1156: Allow sequential search navigator to work without a search. 2017-07-24 19:30:30 -05:00
evazion e3c45a9c70 danbooru_default_config.rb: add css_server, ccs_key. 2017-07-22 00:42:13 -05:00
evazion 96fddc5bec Fix #3234: Incorrect filesize on upload page. 2017-07-22 00:34:30 -05:00
evazion fffc107d4f Add order:{tagcount,gentags,arttags,chartags,copytags} metatags. 2017-07-21 23:11:02 -05:00
evazion 6682ae10eb /users/:id/edit: redirect back to settings instead of profile. 2017-07-21 01:18:42 -05:00
evazion bda285d97f Post#expunge!: simplify has_children flag logic. 2017-07-21 00:13:20 -05:00
evazion 44f6673d94 Post#expunge!: run callbacks when reparenting children.
* Set parent IDs with `update` instead of `update_column` /
  `update_all` when reparenting children. This fixes it so that new post
  versions are saved and the has_children flag is set on the new parent.

* Slightly simplify logic of update_children_on_destroy: the single
  child case is subsumed by the multi-child case.
2017-07-21 00:13:20 -05:00
evazion fbee7f6912 Post#expunge!: fix remove_pool! to remove posts from deleted pools.
Don't silently ignore attempts to remove posts from deleted pools.
Remove the restriction on removing posts from deleted pools instead (ref: #1109).

Fixes failure to remove posts from deleted pools during expungement.
2017-07-21 00:13:20 -05:00
evazion 1b310dcc0b Post#expunge!: fix remove_from_all_pools to clear deleted pools.
* Change Post#pools to return all pools, including deleted pools. This
  fixes remove_all_from_pools to remove the post from deleted pools too.

* Change other users of Post#pools to explicitly select undeleted pools.
2017-07-21 00:13:20 -05:00
evazion bac8ff4de0 Post#expunge!: destroy post replacements on expunge. 2017-07-21 00:13:20 -05:00
evazion 3ed14ae782 Post#expunge!: wrap in transaction. 2017-07-21 00:13:20 -05:00
evazion 1fe6a5fc65 Fix #3225: Exception in NoteSanitizer#relativize_links. 2017-07-19 21:13:04 -05:00
evazion 93d44c6b84 Fix #3224: 403 Forbidden when logging in to DeviantArt.
Login fails if the User-Agent isn't set while POST'ing the login
credentials.
2017-07-19 20:25:27 -05:00
evazion 8125d8e796 Set the default User-Agent sent for outgoing http requests.
* Add a `Danbooru.config.http_headers` config option.

* Refactor various places to use this option instead of setting the user
  agent manually.
2017-07-19 20:25:27 -05:00
evazion 7cb7c2fbab Remove ruby DText implementation (#3206). 2017-07-19 16:48:42 -05:00
evazion 5d013f9c88 /dmails: remove max-width: 50em rule (#3185). 2017-07-19 15:30:14 -05:00
evazion b545a5e7f4 Fix related tags overflow in detachable tag edit dialog (fix #3219).
Bug: resizing the tag edit dialog then expanding the related tags
section doesn't resize the dialog to fit the expanded related tags
section. Instead a scrollbar appears.

Fixes this by expanding the dialog's height when the related tags are
shown.
2017-07-17 19:00:12 -05:00
evazion ffbf5bbcdf Factor out related tags visibility toggling code. 2017-07-17 18:58:20 -05:00
evazion 5d48244df4 Fix related tags overflow in detachable tag edit dialog (#3219).
Fixes these issues with the detachable tag edit dialog:

* Moving the edit dialog then expanding the related tags causes the
related tags to overflow outside the dialog.

* Expanding the related tags, moving the edit dialog, then collapsing
the tags causes the dialog to not resize back to its minimized size.
2017-07-17 18:29:06 -05:00
evazion be4414ae70 /user_upgrades/new: mention debit cards (fix #3221). 2017-07-17 17:01:18 -05:00
evazion 269f69efd8 /user_upgrades/new: convert tabs to spaces. 2017-07-17 16:58:38 -05:00
evazion 19d3df058f /user_upgrades/show: fix typo. 2017-07-17 16:58:34 -05:00
evazion 099ae86cc6 Remove duplicate WikiPageVersion#visible? method.
Already defined by `delegate :visible?, :to => :wiki_page`.
2017-07-14 18:43:52 -05:00
evazion 695804fdda Remove duplicate FavoriteGroup#strip_name method.
This method was defined twice.
2017-07-14 18:39:48 -05:00
evazion cbbf68bdd8 Remove unused tests (#3206). 2017-07-14 18:22:02 -05:00
evazion 4ead45a787 Remove Post#validate_parent_does_not_have_a_parent method (#3206).
Not used; posts are allowed to have grandparents.
2017-07-14 17:49:12 -05:00
evazion 45676491ff Post.fast_count: remove uses of unused statement_timeout param (#3206).
Not used since 81684e6.
2017-07-14 17:35:42 -05:00
evazion 79b21bbca8 Fix failure in Pixiv API call (#3135).
Forgot to send authentication headers with API call.
2017-07-13 15:58:17 -05:00
evazion 5066f75d8c Fix Net::HTTPOK#read_body called twice error during upload (#3135)
Fixes this exception:

    An error occurred: error: IOError - Net::HTTPOK#read_body called twice

    /home/admin/.rbenv/versions/2.3.4/lib/ruby/2.3.0/net/http/response.rb:196:in `read_body'
    /home/admin/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/httparty-0.15.5/lib/httparty/response.rb:91:in `method_missing'
    /home/admin/src/danbooru/app/logical/downloads/file.rb:43:in `block (2 levels) in download!'
    /home/admin/src/danbooru/app/logical/downloads/file.rb:41:in `open'
    /home/admin/src/danbooru/app/logical/downloads/file.rb:41:in `block in download!'
    /home/admin/src/danbooru/app/logical/downloads/file.rb:100:in `http_get_streaming'
    /home/admin/src/danbooru/app/logical/downloads/file.rb:39:in `download!'
    /home/admin/src/danbooru/app/models/upload.rb:408:in `download_from_source'
    /home/admin/src/danbooru/app/models/upload.rb:113:in `block in process_upload'
2017-07-13 15:41:36 -05:00
evazion 9d9ac53e4d /artists/:id - add missing blacklist controls. 2017-07-13 14:15:07 -05:00
evazion 3e3844a796 Remove unused tag subscription code (#2956, #3206). 2017-07-13 13:44:26 -05:00
evazion d3d4e3cc8d Fix #3216: Allow note URL # anchors to work from the post itself 2017-07-12 21:53:26 -05:00
evazion ed7b80c016 /{pools,favgroups}/:id/order/edit: add blacklist controls. 2017-07-11 21:18:00 -05:00
evazion 58923deaa7 saved_searches.js: fix typo. 2017-07-11 19:40:54 -05:00
evazion 6e3763e7d7 Remove minlength for autocompleting labels in saved search dialog.
Trigger autocomplete after typing the first letter when adding labels in
the saved search dialog.
2017-07-11 19:27:04 -05:00
evazion 51d0feb2c6 Fix #3214: Add autocomplete for saved searches.
* Autocomplete the `search:<label>` metatag.

* Make label autocompletion do a prefix match instead of a substring
  match. Example: `search:ar` matches `artists`, not `characters`. This
  is how tags and most other things are autocompleted.
2017-07-11 19:24:49 -05:00
evazion dc079d7932 /saved_searches/labels.json: support wildcards in search[label] param. 2017-07-11 19:21:41 -05:00
evazion 76c90cc0e4 Remove unused Pool methods: create_anonymous/options/id_to_name (#3206)
* Pool.id_to_name: never used.
* Pool.create_anonymous: never used.
* Pool.options: unused since e7aff87.
2017-07-09 14:32:17 -05:00
evazion f3b0a0a9e9 Remove unused KeyValue model (#3206). 2017-07-09 14:30:44 -05:00
evazion af35c82d96 Remove unused Artist#legacy_api_hash method (#3206).
Added in 0e0d83c7 but never used. app/views/legacy/artists.{json,xml}.erb
is what *would* use this, but neither does.
2017-07-09 13:49:20 -05:00
evazion cc8986641b Fix #3208: Fix translated tag suggestions for Pixiv.
* Only suggest the Danbooru tag with the same name if there is no
  matching wiki other name. Example: if we have the Pixiv tag `Fate` and
  the Danbooru tag `fate_(series)` with other name `fate`, suggest that,
  not the Danbooru tag `fate`.

* Don't suggest tags that are empty or whose wiki is deleted.

* Only split tags on "/" if there are no other matches, and only for Pixiv.

* For Pixiv, only include traditional media tags in tag list, not digital media (Photoshop, SAI).

* Add some tests.
2017-07-09 12:10:30 -05:00
evazion e875f2973a /notes, /note_versions: link directly to note within post.
Also adds a "»" link, linking to the note's history.
2017-07-07 16:39:10 -05:00
evazion c13000a41e notes: show note id in note edit dialog title. 2017-07-07 16:09:24 -05:00
evazion ab0b4b4c67 notes: highlight notes linked via /posts/456#note-123. 2017-07-07 16:09:24 -05:00
evazion c2e62b77fa notes: move js initialization into initialize_all function. 2017-07-07 16:09:24 -05:00
evazion 0bc55bec74 notes: redirect /notes/123 to /posts/456#note-123. 2017-07-07 16:09:23 -05:00
evazion df33901938 PostQueryBuilder: remove unused has_constraints attr (#3206).
This was previously used to prevent searches that contained only negated
tags. No longer used.
2017-07-07 16:08:02 -05:00
evazion e3922fb525 flags/appeals controllers: remove unused check_privilege method (#3206). 2017-07-07 15:47:57 -05:00
evazion 24b2f2bf52 /user/dmail_filter: make available to banned users.
`ensure_ownership` handles the privilege check here.
2017-07-07 15:41:09 -05:00
evazion d092b870ad /users/:id/api_keys: make available to banned users.
`check_privilege` already handles the privilege check here.
2017-07-07 15:40:40 -05:00
evazion 0c79d2f09e Removed unused controllers actions / routes (#3206). 2017-07-07 15:38:06 -05:00
evazion d786fc7a55 Removed unused UploadTagsReport controller (#3206).
This was moved to ReportsController#upload_tags as of 7f22baa.
2017-07-07 14:46:04 -05:00
evazion 9e39d292a6 Fix /bulk_update_requests/1234.json. 2017-07-07 14:33:16 -05:00
evazion 400127c090 /saved_searches: make available to banned users. 2017-07-06 19:26:23 -05:00
evazion f5209c7fb9 /favorites: make available to anonymous users. 2017-07-06 19:22:57 -05:00
evazion e6a5d1e9e8 /bulk_update_requests: make available to anonymous users. 2017-07-06 19:20:38 -05:00
evazion 0ed2dafdce /iqdb_queries: make available to anonymous users. 2017-07-06 19:18:45 -05:00
evazion 216243a354 /forum_posts/search: make available to anonymous users. 2017-07-06 19:18:15 -05:00
evazion 3a8cae4de1 /notes/search: make available to anonymous users. 2017-07-06 19:16:43 -05:00