Commit Graph
7822 Commits
Author SHA1 Message Date
evazion 1f73e60514 sources: add methods for customizing new artist entries.
* Rename `unique_id` to `tag_name`.

* Add `other_names` and `profile_urls` methods that sources can override
  to provide extra names or urls when creating new artist entries.
2018-12-27 15:03:11 -06:00
evazion 2170961f47 artists: improve prefilling of new artist form (#4028)
* When creating an artist by clicking the '?' next to the artist tag in
  the tag list, prefill the new artist form by finding the artist's last
  upload and fetching its source data.

  Previously we filled the urls with the source of the artist's last
  upload, which was wrong because it was usually a direct image URL (#3078).

* Fix the other names field not escaping spaces within names to underscores.

* Fix the other names field being potentially prefilled with duplicate names.
2018-12-27 15:03:11 -06:00
evazion 286bf2f285 artists: filter out duplicates from other names (#4028). 2018-12-27 15:03:11 -06:00
evazion 0dd44e64a4 artists: add notice about separating other names with spaces (#4028). 2018-12-27 15:03:11 -06:00
evazion 3c9b26c247 tests: fix *_(cosplay) tagging test (fixup for 51b08d224). 2018-12-26 20:16:59 -06:00
evazion 719f556dd5 aliases: warn about conflicting wikis when alias is requested.
* Warn about conflicting wiki pages during secondary validation.

* Only warn about missing wiki if both tags are missing a wiki page.
2018-12-26 17:30:07 -06:00
evazion 365e04b5f9 implications: fix validation of circular implications.
Fix bug where circular chains like `a -> b && b -> c && c -> a` were
allowed.
2018-12-26 17:30:07 -06:00
evazion 51b08d2243 implications: ensure antecedent/consequent tags exist. 2018-12-26 17:30:07 -06:00
evazion c27ba02b88 aliases/implications: clean up validations.
* Don't return true/false in validations (does nothing).
* Prefer `errors[:base]` over `self.errors[:base]`.
* Add antecedent_wiki / consequent_wiki associations.
* Factor out antecedent_and_consequent_are_different validation.
2018-12-26 17:30:07 -06:00
Albert Yi ca7c56f95f fix: url normalization for non-project artist subdomains (maybe fixes #4021) 2018-12-19 15:19:00 -08:00
Albert Yi 372338e0e5 fix: #4022 Gifting someone a gold account shows "You are now a Builder level account." 2018-12-19 15:19:00 -08:00
evazion 3e382bd831 Fix #4014: Incorrect tag type counts on posts. 2018-12-19 12:20:29 -06:00
evazion 3adf24c0aa tag edit dialog: fix popout link not always being bound.
Fix the popout link not being bound on the upload page when uploading
without the bookmarklet.
2018-12-18 19:23:59 -06:00
evazion b24ccb0595 tag edit dialog: fix clicking button before handler is bound.
https://danbooru.donmai.us/forum_topics/9127?page=265#forum_post_153180:

> I'm not sure how to reproduce this, but sometimes on the upload page
> when I click the button to pop out the tag box, the screen scrolls up to
> the picture but the box doesn't pop out, and I have to scroll back down
> and click it again

https://danbooru.donmai.us/forum_topics/9127?page=266#forum_post_153183:

> Yes, this was brought up by Unbreakable on Discord a while back. It's
> due to the fact that the event handler that pops out the dialog box has
> not yet been bound by the time you click it. Since that clickable
> control has an empty anchor link of "#" which goes nowhere, it therefore
> redirects the user to the top of the page.
2018-12-18 19:10:23 -06:00
Albert Yi f859f4babc Merge pull request #4019 from lllusion3469/patch-3
#3767: Prioritize md5 check over source download
2018-12-17 10:07:46 -08:00
evazion d52d5ff260 Fix #4018: Drag and drop upload errors
Disable upload timeout. This timeout caused uploads to silently fail when
the timeout was exceeded (ref: https://gitlab.com/meno/dropzone/issues/23).
2018-12-16 17:45:26 -06:00
evazion 8408c0bf80 Fix #3815: Adjust notes positions/sizes after post replacement
Bug: Notes weren't rescaled when the 'final_source' field was given
during replacement.

The cause was that the notes were rescaled after the source was saved,
but saving the source clobbered `image_{width,height}_before_last_save`
inside `rescale_notes`.

Regressed in b0c2ddba.
2018-12-16 13:55:35 -06:00
evazion d2f92b7aa7 artists: fix quick search to search urls.
ref: https://danbooru.donmai.us/forum_topics/9127?page=265#forum_post_153124
2018-12-16 12:07:50 -06:00
evazion 004f1e630d binstubs: revert to rails binstubs (77b42310)
Silence complaints from rails about using Bundler-generated binstubs.
2018-12-16 11:50:16 -06:00
evazion c700ea4b5f Fix #4016: Translated tags failing to find some tags.
* Normalize spaces to underscores when saving other names. Preserve case
  since case can be significant.

* Fix WikiPage#other_names_include to search case-insensitively (note:
  this prevents using the index).

* Fix sources to return the raw tags in `#tags` and the normalized tags
  in `#normalized_tags`. The normalized tags are the tags that will be
  matched against other names.
2018-12-16 11:37:57 -06:00
evazion a1df1abf0b Fix #4020: Flagger name information leak. 2018-12-14 18:08:43 -06:00
lllusion3469 e21f067fab #3767: Prioritize md5 check over source download
in case both an upload from disk and a source were specified, this caused
an md5 mismatch error to be thrown
2018-12-14 22:23:47 +01:00
evazion 9de5857032 Fix #4015: Exception: undefined method `level_class' for nil:NilClass. 2018-12-12 17:57:29 -06:00
Albert Yi 8ac530a909 fixes #4006: Bring back the "edit tags" button to the sidebar
fixes #4011: Comment input field under posts is too big, goes slightly beyond view boundaries
fixes #4010: Incorrect dynamic tag counts
2018-12-12 11:44:25 -08:00
Albert Yi 77b42310eb update gems 2018-12-12 11:20:22 -08:00
evazion 79ec053cef Fix #4009: Tag list is empty when editing tags, causing destructive changes. 2018-12-12 13:02:04 -06:00
Albert Yi 49acf39f13 Merge pull request #4008 from r888888888/user-flags-for-feedback-and-flagging
Add user permissions for flagging and for giving user feedback
2018-12-12 10:47:23 -08:00
Albert Yi 4706cae114 Add user permissions for flagging and for giving user feedback 2018-12-11 17:08:31 -08:00
Albert Yi c34df49f0f Merge pull request #4000 from r888888888/tag-counts
add dynamic tag counts on upload form
2018-12-11 17:02:28 -08:00
evazion 957d1527d1 autocomplete: add order:*_count metatags. 2018-12-11 18:10:20 -06:00
evazion ea9c3576d8 search: add synonyms for *_count metatags.
Allow e.g. `deleted_comments` as a synonym for `deleted_comment_count`.
2018-12-11 18:10:20 -06:00
evazion b1335616dd search: add {flag,appeal,approval,replacement,child,pool}_count metatags (#4004). 2018-12-11 18:10:20 -06:00
evazion 4a1f0523a4 search: add comment_count, note_count metatags (#4004).
Add these metatags:

* comment_count
* deleted_comment_count
* active_comment_count
* note_count
* deleted_note_count
* active_note_count
* order:comment_count
* order:deleted_comment_count
* order:active_comment_count
* order:note_count
* order:deleted_note_count
* order:active_note_count
2018-12-11 18:10:20 -06:00
evazion 37b2214472 post_tags_match: replace joins with subqueries.
Refactor various post_tag_match methods to use subqueries instead of joins.

This simplifies things inside PostQueryBuilder, since now we can assume
we're always dealing with a Post relation, rather than some other table
joined with the posts table.
2018-12-11 18:10:20 -06:00
evazion cacc899a4d autocomplete: limit static metatags to 10 matches.
Prevents autocomplete menu from becoming excessively long when
completing order: metatags.
2018-12-11 12:02:18 -06:00
Albert Yi 79dfa6c28f fix migration for circleci 2018-12-10 17:51:57 -08:00
Albert Yi 3893926048 add dynamic tag counts on upload form 2018-12-10 17:51:28 -08:00
evazion 28f32abe24 Fix migrations. 2018-12-10 19:38:56 -06:00
evazion fe60672ef3 Fix #4005: Add confirmation for unbanning a post. 2018-12-10 00:39:02 -06:00
evazion 61f6de5ff3 artist versions: rearrange layout to better fit small screens.
* Move group name beneath the artist name.
* Replace 'Active' column with '(deleted)' notice next to artist name.
* Combine updater, updated at, and ip address fields in single column.
* Combine templates for standard listing and revert listing (only
  difference is presense of 'Revert to' column).
2018-12-10 00:30:05 -06:00
evazion c75aef38ed set diff: fix obsolete_{added,removed} not including changed items. 2018-12-10 00:17:01 -06:00
evazion 161b3bb8ef diffs.scss: readd styles removed in e25e8d564.
The <ins> and <del> tags are still used in /post_versions and /reports/upload_tags.
2018-12-10 00:17:01 -06:00
Albert Yi a66f9837ec Merge pull request #4003 from evazion/fix-3946
Artist versions: improve diffing of urls and other names (#3946)
2018-12-08 20:43:27 -08:00
evazion d213173d3d Fix #4002: Always include "updated by" line when creator != updater 2018-12-08 11:30:11 -06:00
evazion e25e8d564a artist versions: refactor diffs. 2018-12-07 12:45:51 -06:00
Albert Yi 75e7177167 clarifiaction on sock puppet account rules 2018-12-05 16:57:05 -08:00
Albert Yi 486d794089 Merge pull request #4001 from evazion/fix-3995
Fix #3995: Automatically imply *_school_uniform -> school_uniform.
2018-12-05 12:17:45 -08:00
evazion 7ae27c370d Fix #3995: Automatically imply *_school_uniform -> school_uniform. 2018-12-05 12:19:27 -06:00
evazion 7bbe4e8ac1 moebooru: don't exclude artists from translated tags (#3969). 2018-12-05 11:53:26 -06:00
evazion fd2d56a388 Fix #3996: Some direct artstation urls cause the bookmarklet to fail.
* Don't fail on urls that don't contain the project id (direct image urls).
* Don't fail when the work is deleted.
* Parse artist name from url when possible. This way the artist finder works on bad_artstation_id posts.
* Set canonical source url to `https://artist.artstation.com/projects/12345` instead of
  `https://www.artstation.com/artwork/1235` (this way we preserve the artist name).
* Cache api call.
* Include api call results in /source.json.
2018-12-03 15:48:29 -06:00