Commit Graph
1865 Commits
Author SHA1 Message Date
r888888888 216ca06fee fixes #3100 2017-05-30 15:38:01 -07:00
r888888888 6eb5a4c017 fixes #3096 2017-05-30 12:13:08 -07:00
Albert Yi 2e78542a68 Merge pull request #3095 from evazion/fix-3091
Fix #3091: Inconsistency between pool_string and pool.post_ids.
2017-05-30 11:14:46 -07:00
Albert Yi 5b56596de1 Merge pull request #3092 from evazion/opt-reltags
Optimize related tags calculation
2017-05-30 11:12:24 -07:00
evazion 31b58e17b1 pools: lock pool when adding/removing posts (fixes #3091).
Adding a post id to a pool's post_ids string is non-atomic, hence we
must lock the pool to avoid a race condition.

Adding a pool to a post's pool_string is likewise non-atomic, hence we
must lock the post as well.
2017-05-26 18:35:33 -05:00
evazion a401b1f570 posts: fix nil source tests; fix source:none metatag. 2017-05-26 15:12:39 -05:00
evazion 991d5cbf6d related tags: optimize calculate_from_sample.
calculate_from_sample is called when clicking the General / Artist /
Copyright / Characters buttons during tag editing. Currently it's slow
because it counts up the tags in ruby, and because it makes repeated
calls to memcache in the inner loop when filtering tags by category.

This changes it to do the counting and filtering entirely in SQL using a
GROUP BY tag / COUNT(*) aggregation. This is faster and makes larger
sample sizes more feasible.
2017-05-26 12:41:48 -05:00
r888888888 f38810bd1c fixes #3086 2017-05-24 15:57:06 -07:00
r888888888 6023abf087 remove delayed job count constraint when calculating related tags (fixes #3087) 2017-05-24 15:47:15 -07:00
evazion 1a52f9db2b wiki pages: add wildcard support to "other names" search. 2017-05-24 14:59:00 -05:00
Albert Yi f93cd11fb5 Merge pull request #3085 from evazion/feat-bur-search
Add search form to /bulk_update_requests.
2017-05-23 16:55:17 -07:00
evazion 614bf44086 /bulk_update_requests: add search form. 2017-05-23 17:23:32 -05:00
evazion 02b3622f12 api: allow search[*_id] params to accept lists of ids in more places. 2017-05-23 15:45:40 -05:00
evazion 8988f9cde8 /forum_topics.json: add search[id]=<ids> param. 2017-05-23 15:27:15 -05:00
evazion 3aa405eac1 Post#favorited_by?: fix to cast to a boolean. 2017-05-23 13:12:10 -05:00
evazion c5de983f61 Post#favorited_by?: fix to return a boolean. 2017-05-23 11:53:03 -05:00
Albert Yi 3be06364fa Merge pull request #3077 from evazion/fix-dmail-title-search
Fix case sensitivity bug in dmail title search.
2017-05-22 11:59:22 -07:00
evazion c31d11b095 bans: fix case sensitivity bug in ban reason search. 2017-05-21 20:13:43 -05:00
evazion 3f760069b3 dmails: fix case sensitivity bug in dmail title search. 2017-05-21 13:52:56 -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 9f1096e67f post replacement: rescale notes. 2017-05-17 00:14:41 -05:00
evazion 402caf6168 post replacement: don't send @mention dmails to replacer. 2017-05-17 00:14:41 -05:00
evazion a3db5ba346 post replacement: move presenter methods to post_replacement.rb. 2017-05-17 00:14:41 -05:00
Albert Yi 0131847e55 Merge pull request #3059 from evazion/fix-artist-api
Don't return `domains` in /artists.json.
2017-05-15 16:31:22 -07:00
Albert Yi 6ddf0821d8 Merge pull request #3055 from evazion/feat-post-replacement-controller
Add post replacements controller.
2017-05-15 16:19:34 -07:00
Albert Yi d658d41c53 Merge pull request #3050 from evazion/fix-user-name-changes
Fix username changes forcing new name to lowercase.
2017-05-15 16:13:16 -07:00
evazion 648cc9ecb7 Move post replacement create action to post replacements controller. 2017-05-14 21:31:01 -05:00
evazion cb09b6661d Add /post_replacements.json, /posts/1234/replacements.json. 2017-05-14 18:49:57 -05:00
evazion 2c29a7ac19 /artists: only include domains in /artists/1234.json, not /artists.json. 2017-05-14 10:38:26 -05:00
evazion 087ce001e7 user name changes: don't force new name to lowercase. 2017-05-14 09:53:49 -05:00
evazion 71a19c28f1 forum topics: don't record a topic visit for api requests. 2017-05-13 13:50:20 -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
r888888888 5ad7f1af91 cache artist domains, show artist domains in wiki excerpt on post listing 2017-05-12 14:50:37 -07:00
r888888888 aa5a1eca6f fixes #3035 2017-05-11 16:06:39 -07:00
Albert Yi f623aafc04 Merge pull request #3038 from evazion/fix-upload-commentary
Fix commentary box on upload page (fixes #3037)
2017-05-10 16:29:39 -07:00
evazion b2f62482a1 Remove artist commentary handling from download rewrite strategies. 2017-05-10 18:01:51 -05:00
Albert Yi b4097dbc8a Merge pull request #3034 from evazion/fix-comment-order
Fix /comments.json returning results in undefined order.
2017-05-10 15:21:52 -07:00
evazion a3a9a78015 /comments.json: default to id_desc order instead undefined order. 2017-05-09 18:12:37 -05:00
Albert Yi f803137106 Merge pull request #3030 from evazion/feat-backups
Backup posts to S3 on creation/replacement
2017-05-08 13:39:41 -07:00
Albert Yi 0018a09f30 Merge pull request #3027 from evazion/feat-flag-cooldown
Add 3 day cooldown between flags
2017-05-08 13:05:38 -07:00
Albert Yi 646a2b3762 Merge pull request #3022 from evazion/fix-api-pretty-names
Fix #2352: Return raw usernames in API instead of pretty names.
2017-05-08 12:49:01 -07:00
Albert Yi 92c4c043f0 Merge pull request #3032 from evazion/fix-expired-bans
Fix exception when user with expired ban logs in.
2017-05-08 11:33:44 -07:00
evazion fd291c8b42 bans: fix exception when user with expired ban logs in.
`ban.destroy` fails because users have many `bans`, not a single `ban`.
Destroying the expired ban isn't necessary anyway.
2017-05-07 12:13:19 -05:00
r888888888 1b5d409c0c remove usage of postgres now() in token bucket check 2017-05-06 20:54:54 -07:00
evazion 30a1f204e9 backups: add stub backup service. 2017-05-05 22:18:28 -05:00
evazion d40da8c5c9 post replacement: leave a system comment after replacement. 2017-05-05 16:10:43 -05:00