evazion
d8eef6ef2b
Fix #1563 : Warn users attempting to upload with very few tags.
2017-12-27 15:04:00 -06:00
evazion
8c44789fbc
Fix #3440 : Implications aren't applied to automatic tags.
...
Apply implications after adding automatic tags.
2017-12-19 14:37:12 -06:00
Albert Yi
8d5f1bccaf
Merge pull request #3403 from evazion/fix-favgroup-race
...
Fix race condition when adding posts to favgroups
2017-12-13 14:28:38 -08:00
Albert Yi
1d901e9307
Merge pull request #3357 from evazion/feat-soft-post-validations
...
Post editing: add warning when creating new tags (#3352 )
2017-12-13 14:24:51 -08:00
evazion
d6d73404a9
Apply aliases to characters in <character>_(cosplay) tags ( #3409 ).
2017-12-06 12:47:27 -06:00
evazion
acd49be4cc
Fix #3419 : Deleting a post doesn't clear parent's "parent" status.
...
Bug: when deleting a child post and the "Move favorites to parent?" option is
set, the parent's has_active_children flag is not cleared.
`give_favorites_to_parent` moves the votes, and moving the votes has the
side effect of reloading the post (to get the new score). But reloading
the post wipes out the is_deleted_changed? flag, which is used by `update_parent_on_save`.
Fix: update the `is_deleted` flag *before* moving favorites, so that the
`update_parent_on_save` callback runs before `give_favorite_to_parent` runs.
2017-12-05 19:35:15 -06:00
evazion
3c6a613964
Fix #3410 : Unable to create a new wiki page.
...
Fix `Post.fast_count(nil)` failing when the user had the "safe mode" or
"deleted post filter" options turned on.
2017-11-29 12:34:07 -06:00
evazion
4939c0345a
Fix test failures when removing posts from deleted pools.
...
These tests failed because removing posts from deleted pools is now
Builder-only.
2017-11-26 18:10:08 -06:00
evazion
80e115b600
favgroups: fix race condition when adding posts to favgroups.
...
Adding or removing a post id to a favgroup's post_ids string is
non-atomic. Lock it to prevent simultaneous updates to the same favgroup
from clobbering each other.
Same bug as #3091 .
2017-11-26 11:02:39 -06:00
evazion
bc3e2438d9
posts: add tests for warning validations.
2017-11-25 17:03:33 -06:00
evazion
a14c492020
Fix #3396 : Pixiv novel cover IDs are parsed incorrectly.
2017-11-21 13:03:03 -06:00
evazion
b3a9cd6c06
Fix Post.fast_count("pool:1537") == 0 (fixup 134958d1).
...
Fixup for a bug in 134958d1 . `Post.fast_count("pool:1537")` still
returned zero because `Tag.is_simple_tag?` incorrectly parsed
"pool:1537" as a simple tag, so Post.fast_count still looked for it in
the tags table and found the empty "pool:1537" tag.
2017-11-20 21:21:36 -06:00
r888888888
502f1298a9
fix unit tests
2017-11-20 16:30:07 -08:00
Albert Yi
f11992bd91
Merge pull request #3391 from evazion/fix-3390
...
Fix #3390 : Searching certain metatags results in an empty paginator
2017-11-20 14:23:27 -08:00
evazion
134958d137
Fix #3390 : Searching certain metatags results in an empty paginator
...
Fixes Post#get_count_from_cache to only lookup the count in the tags
table when the search is for a single "simple" tag.
Check memcache when the search is not a simple tag:
* multi-tag searches (touhou rating:s)
* single metatag searches (rating:s, source:"foo bar")
* negated tags (-touhou)
* wildcard tags (*touhou*)
* or searches (~touhou)
2017-11-20 14:41:02 -06:00
evazion
9b887c3c3a
Fix #3387 : Safebooru: Two tag searches fail for members.
...
Makes the `rating:s` and `-status:deleted` tags not count against the
tag limit.
2017-11-19 20:58:22 -06:00
r888888888
3ad332ad3d
fix post test
2017-11-16 14:20:32 -08:00
r888888888
73f257ec63
disable manual post count expiration, rely solely on timed expiries ( fixes #3376 )
2017-11-16 13:43:38 -08:00
r888888888
2c56a19dec
rework how category metatags work #3307
2017-10-09 16:08:14 -07:00
r888888888
b66773086c
add failing test #3307
2017-10-09 15:03:53 -07:00
r888888888
28c3f8321a
add failing test for #3307
2017-10-09 13:23:45 -07:00
r888888888
1f3bafc061
delegate removal from favorites and updating of user fav counts to delayed job
2017-09-13 14:19:54 -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
Albert Yi
e4bc01533b
Merge pull request #3245 from evazion/fix-2344
...
Fix #2344 : Negating status metatag breaks deleted post filter.
2017-07-31 12:50:21 -07:00
Albert Yi
fe6ae4b3d1
Merge pull request #3233 from evazion/feat-order-metatags
...
Add order:{tagcount,gentags,arttags,chartags,copytags} metatags.
2017-07-31 11:56:06 -07:00
evazion
1c38fbbf64
Fix #2344 : Negating status metatag breaks deleted post filter.
2017-07-28 19:52:35 -05:00
evazion
fffc107d4f
Add order:{tagcount,gentags,arttags,chartags,copytags} metatags.
2017-07-21 23:11:02 -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
r888888888
d48ed95191
favoritescontroller#destroy should work even if the post doesn't exist, remove from favorites on expunge ( fixes #3222 )
2017-07-19 13:39:24 -07:00
evazion
3e3844a796
Remove unused tag subscription code ( #2956 , #3206 ).
2017-07-13 13:44:26 -05:00
evazion
d84feaa4bb
posts: fix expunging posts not removing image from iqdb.
...
`File.exists?(preview_file_path)` is always false because the file has
already been deleted by this point. Remove the check entirely.
2017-06-14 21:31:30 -05:00
evazion
a844a1daf4
posts: fix expunging posts not deleting files.
...
Fix expungement to ignore the "file still in use" check.
2017-06-14 21:31:24 -05:00
r888888888
bffa1f3dc3
fix unit tests
2017-05-30 17:37:42 -07:00
evazion
a401b1f570
posts: fix nil source tests; fix source:none metatag.
2017-05-26 15:12:39 -05:00
evazion
2259506bc2
flags: disallow flagging pending posts.
2017-05-19 14:37:38 -05:00
Albert Yi
a4220854a3
Merge pull request #3063 from evazion/fix-post-delete
...
Fix flagging cooldown preventing manual deletions.
2017-05-18 13:44:27 -07:00
evazion
3570ace017
flags: ignore flagging rate-limits when deleting posts.
2017-05-17 23:48:37 -05:00
evazion
565945ab7b
flags: move flagging inside Post#delete!
2017-05-17 23:48:37 -05:00
evazion
cd3914f17c
post replacement: move tests to post_replacement_test.rb.
2017-05-17 00:14:41 -05:00
r888888888
78b08d8394
add new model for post replacements, add undo functionality
2017-05-12 17:11:40 -07:00
Albert Yi
dc02dcf0e0
Merge pull request #3015 from evazion/feat-replace-images
...
Fix #2949 : Sample image replacement ability
2017-05-12 17:11:29 -07:00
evazion
d40da8c5c9
post replacement: leave a system comment after replacement.
2017-05-05 16:10:43 -05:00
Albert Yi
b6e1958917
Merge pull request #3017 from evazion/fix-deviantart-links
...
Fix links to DeviantArt sources
2017-05-03 15:49:16 -07:00
evazion
5f2219a005
post replacement: add tests.
2017-05-02 20:42:41 -05:00
evazion
93c9b622a1
post_approval.rb: log correct post id when approving deleted posts.
2017-05-02 00:01:21 -05:00
evazion
1baffb31ff
Link dA sources as http://$artist.deviantart.com/art/$title-$id in sidebar.
...
Previously we used 'http://$artist.deviantart.com/gallery/#/d$id '. This
relied on a javascript redirect on Deviantart's end, which didn't work
for people with javascript disabled.
2017-05-01 23:29:16 -05:00
Albert Yi
d7e83bef79
Merge pull request #3003 from evazion/feat-noter-any-metatag
...
Add noter:<any|none>, commenter:<any|none> metatags
2017-05-01 14:52:30 -07:00
r888888888
48e9856f37
fixes #3007 : Eliminate Janitor role
2017-05-01 14:38:30 -07:00