Commit Graph

1746 Commits

Author SHA1 Message Date
Earlopain
c2adf1bf31
[Users] Reset account level on deletion 2022-10-13 18:37:52 +02:00
Earlopain
e7b155cb85
[Cleanup] Remove where_regex
Only artist_url matching was using this.
2022-10-13 18:22:07 +02:00
Earlopain
7816c8562e
[Users] Fix exception on users?name=non_existant_name
Just redirect to the show page unconditionally, it handles it already
2022-10-13 15:36:56 +02:00
Earlopain
696ae62ef6
[Votes] Deduplicate Comment/Post vote code 2022-10-08 12:04:17 +02:00
Earlopain
33dba98cf5
[Cleanup] Simplify/Remove some post set code 2022-09-30 14:23:54 +02:00
Earlopain
999e410665
[Tests] A bunch of fixes, again 2022-10-01 19:11:46 +02:00
Earlopain
8a6fb57cc2
[Tests] Remove note_count 2022-10-01 19:11:40 +02:00
Earlopain
668c1baccb
[Tests] Fix a few failing ones because of pr #430 2022-09-28 19:00:26 +02:00
Earlopain
6801742487
[Cleanup] Remove promote message code 2022-09-26 20:20:20 +02:00
Earlopain
a6f79a6a2d
Merge branch 'master' into ticket-cleanup 2022-09-25 14:16:02 +02:00
Earlopain
3fe4b718cc
[Posts] Prevent adding specific tags when base tag is locked
Closes #399
2022-09-24 20:43:49 +02:00
Earlopain
9089290eb5
[Tests] Fix not reloading post to update is_flagged 2022-09-24 20:43:48 +02:00
Earlopain
12d32bb1fb
[Tickets] Add tests and fix found issues 2022-09-21 21:17:29 +02:00
Kira
fb1fb87047 [Posts] When approving your own uploads, don't increment approval count
This brings the behavior of approvals on your own uploads in line with uploading
with the automatic approvals enabled.
2022-09-20 02:13:00 -07:00
Kira
d56334ea4c [Posts] Prevent automatic flag removal when approving posts
In order to prevent mistakes where posts are approved from the index page
flags are no longer automatically resolved on approval.

This does not modify the approval behavior of clearing flags from the post
page itself, where the action is explicitly performed by jan+.
2022-09-20 02:08:45 -07:00
Earlopain
e1e9324c84
[Tests] A few fixes 2022-09-17 19:32:21 +02:00
Earlopain
978afa5138
[Misc] Return 406 for 404 requests with invalid format 2022-09-17 17:17:29 +02:00
Earlopain
34bece584c
[Posts] Simplify tag list generation
There were a bunch of parameters being passed around, now there aren't.
Also gave the methods more descriptive names.
2022-09-17 13:18:33 +02:00
Earlopain
94e3dac343
[TagAliases] Don't change category of the target tag when non-general on approve 2022-09-16 19:22:28 +02:00
Earlopain
eb5d001b55
[Posts] Remove the modqueue
Truly the end of an era. This page was trash and nobody was using it.
This will make it easier to make changes to the approval flow people actually use.
2022-09-13 16:14:00 +02:00
Earlopain
a46da28840
[ForumPosts] Fix being able to respond in hidden topic
Also remove some unused logic regarding forum post creation
2022-09-12 20:07:18 +02:00
Earlopain
0cd5391d3c
[Users] Fix double dot in account to new message 2022-09-11 18:54:43 +02:00
Earlopain
b78d55fdd3
[Posts] Add new flag reason for pending posts 2022-08-20 18:19:08 +02:00
Earlopain
77fe1ef42b
[Replacements] Fully use vue for creating new replacement 2022-08-20 17:13:36 +02:00
Earlopain
0a03bea16c
Merge branch 'master' into pools-is-deleted 2022-08-07 16:29:47 +02:00
Earlopain
4cb88300c7
[Versions] Rename post/pool archive classes to versions
This just makes sense, and was confusing beforehand.
Case-in-point: Two test classes for pools: pool_versions and pool_archive
2022-08-06 18:58:24 +02:00
Earlopain
8c842fef7e
[Posts] Move popular posts route to /popular 2022-08-06 11:07:25 +02:00
Earlopain
7e33ea8271
[Cleanup] Remove pool is_deleted
Pools are hard-deleted now. There are also a few pools with this flag
which can't be properly deleted at the moment
2022-07-11 22:52:26 +02:00
Earlopain
7531fc9894
[Cleanup] Remove an assortment of unused code 2022-07-11 20:17:24 +02:00
Earlopain
2b8173e05a
[Tests] Small amount of fixes 2022-05-26 22:49:43 +02:00
Earlopain
10cc7e7dba
[Cleanup] Remove iqdb test helper 2022-05-26 19:35:46 +02:00
Earlopain
eff1500059
[Cleanup] Remove some unusted dev/test gems 2022-05-26 19:23:25 +02:00
Earlopain
b05a8a5a51
[Cleanup] Replace ruby-imagespec with Vips::Image
ImageSpec is also capable of providing sizes for flash, but that isn't
exactly relevant anymore
2022-05-26 18:10:20 +02:00
Earlopain
3b714dd726
[EmailBlacklist] Only unverify exact domain matches 2022-05-23 08:10:54 +02:00
Earlopain
b2a733d0c4
[Replacements] Fix duration when replacing gif -> webm 2022-05-22 21:39:21 +02:00
Earlopain
2af251b387
[Uploads] Allow denying uploads per user level 2022-05-22 21:17:12 +02:00
Earlopain
3187ee169b
[TagRelations] Require a reason on create 2022-05-22 18:59:45 +02:00
Earlopain
98ab543e59
[TagRelations] Refactor alias/implication request code 2022-05-22 17:05:12 +02:00
Earlopain
3108613b0e
[EmailBlacklist] Unverify existing users on create 2022-05-22 15:21:41 +02:00
Earlopain
2b079eabb9
[PostEvent] Fix unflag event on approve not being created 2022-05-22 14:47:11 +02:00
Earlopain
93cd28c0e1
[Posts] Change comment locked to disabled
Instead of just preventing new comments hide everything completly.
2022-05-16 15:53:39 +02:00
Earlopain
2f5b55a0bc
[Comments] Hide a few buttons on sticky 2022-05-16 14:42:44 +02:00
Earlopain
6d3f272e90
[Posts] Allow locking comment sections 2022-05-16 14:20:11 +02:00
Earlopain
c9f14e7836
[Replacements] Run full file validation on create 2022-05-08 20:47:11 +02:00
Earlopain
bd864449aa
[Uploads] Extract video methods 2022-05-08 20:01:39 +02:00
Earlopain
61f06cde5d
[Uploads] Extract some more file methods 2022-05-08 19:05:12 +02:00
Jason Gronn
23253d6766
[Comments] Disable downvoting own comment (#397)
* Disable downvoting own comment; hide vote buttons for own comment

* Revert hiding buttons; merge upvote/downvote paths; fix tests that relied on previous behaviour

* Undo some changes I did not mean to make

* Fix a mistake I made

* Fix some other unit tests
2022-04-30 12:48:53 +02:00
Earlopain
e18a2602b6
[Tests] Small amount of fixes 2022-04-21 21:23:33 +02:00
Earlopain
20146b106d
[Tests] A bunch of more fixes 2022-04-13 08:54:50 +02:00
Earlopain
5528f43b0d
[Sessions] Remove GET logout route
No more accidentally logging out just because you clicked on a link
https://e621.net/forum_topics/31292
2022-04-09 22:45:00 +02:00
Earlopain
0e60ac29f9
[Cleanup] Remove mb_chars usage
Ruby 2.4 supports this natively
2022-04-09 14:23:12 +02:00
Earlopain
029fabc279
[Cleanup] Remove merge_version? 2022-04-08 11:49:58 +02:00
Earlopain
0d50202bbd
[Tests] Fix a bunch
1269 runs, 2237 assertions, 68 failures, 27 errors, 0 skips
2022-04-07 18:23:20 +02:00
Earlopain
10d09700fb
[Cleanup] Remove TagChangeNoticeService 2022-04-07 18:14:15 +02:00
Earlopain
ec658c4cb3
[Tests] Improve some factories
A forum topic must always contain a forum post, and creating things shouldn't
run into throttles. If I want to test that I opt in explicitly.
2022-04-07 17:52:35 +02:00
Earlopain
841610cd90
[Tests] Fix a few tests related to elasticsearch
Namespace the indicies, this should stop the search being messed up
after running tests. Also refresh the index immediately, this slows down
tests a bit but gets rid of a few failures. This whole search testing needs
to be revised some time.

Run this to fix your development setup:
```
Post.__elasticsearch__.create_index!
Post.import
PostArchive.__elasticsearch__.create_index!
PostArchive.import
```
2022-04-05 19:24:31 +02:00
Earlopain
3740599920
[Tests] Fix a bunch of tests 2022-04-05 18:50:34 +02:00
Earlopain
4c44b3aa32
[Search] Remove instance variables named search
They seem to have special meaning in `simple_form_for?`
2022-04-02 17:43:16 +02:00
Earlopain
f7d1ad0810
[Tests] Fix apng tests 2022-03-29 19:40:01 +02:00
Earlopain
ec559f1a34
[Tests] Fix some comment tests 2022-03-28 21:17:34 +02:00
Earlopain
d4d37a7cd2
[Tests] Remove unused tests
Looks like I forgot to remove this some time.
Also remove stray `puts`
2022-03-21 15:39:27 +01:00
Earlopain
2a4f97610e
[Cleanup] Remove more upload attributes 2022-03-16 18:34:23 +01:00
Earlopain
92a0a36589
[Cleanup] Remove upload referer_url 2022-03-16 17:39:58 +01:00
Earlopain
3aa731c408
[Cleanup] Don't return strategy on download 2022-03-16 17:15:45 +01:00
Earlopain
ee8fb64861
[Cleanup] Remove ugoira 2022-03-16 17:08:40 +01:00
Earlopain
2b84f3a4cd
[Tests] Fix disapproval tests
Also updates the reason search dropdown
2022-03-16 15:55:24 +01:00
Earlopain
dd8aa8199b
[Cleanup] Remove modqueue random 2022-03-16 15:48:29 +01:00
Earlopain
55443873a3
[Cleanup] Remove no_feedback 2022-03-16 15:32:24 +01:00
Earlopain
6902434a90
[Replacements] Remove hourly limit
The normal upload limit is still in effect though.
Fixes #379 by completly ignoring the actual problem.
2022-03-05 17:23:53 +01:00
Earlopain
5a88be7d2d
[Cleanup] Remove spam detection
Checked for is_gold, which doesn't work anyways
2022-03-05 16:05:53 +01:00
Earlopain
e01ab43577
[Cleanup] Remove janitor trials 2022-03-05 15:58:30 +01:00
Earlopain
8edd1b2864
[Cleanup] Remove min_level for topics
This isn't used a single time, forum categories handle access checks
instead.
2022-03-05 16:27:37 +01:00
Earlopain
8007881660
[Tests] Fix some password reset tests 2022-02-19 17:34:50 +01:00
Earlopain
2802623642
[Tests] Fix post flag tests 2022-02-19 17:34:14 +01:00
Earlopain
caa51c4f2c
[Cleanup] Remove remaining upload preprocess code 2022-02-19 17:30:49 +01:00
Earlopain
de0311a268
[Cleanup] Remove a few unused files 2022-02-19 17:19:44 +01:00
Earlopain
348827de5d
[Tests] Fix artist tests 2022-02-19 17:07:58 +01:00
Earlopain
e3728546c7
[Cleanup] Remove artist banning 2022-02-19 16:54:26 +01:00
Earlopain
2d94167fab
[Cleanup] Remove Artist.new_with_defaults 2022-02-19 16:04:33 +01:00
Earlopain
ac5e8673ca
[Cleanup] Remove most source strategy code 2022-02-19 15:55:26 +01:00
Earlopain
3857eeccf3
[Cleanup] Remove some storage manager code 2022-02-19 14:25:13 +01:00
Earlopain
451e23c121
[Cleanup] Remove dead related tags code 2022-02-19 14:11:49 +01:00
Zwagoth
91d32607f0
Merge pull request #375 from zwagoth/remove-appeals
[Cleanup] Remove post appeals
2022-02-19 02:22:25 -05:00
Earlopain
f7ba9c5043
[Cleanup] Remove post appeals 2022-02-11 17:05:09 +01:00
Earlopain
924e519b4c
[Tests] Fix user feedback tests 2022-02-10 17:58:20 +01:00
Earlopain
51e3d7d50d
[Tests] Fix vote tests 2022-02-10 17:56:27 +01:00
Earlopain
c6dae231f0
[Tests] Remove remaining sqs stubs 2022-02-10 17:55:48 +01:00
Earlopain
553a861bef
[Tests] Remove unused post archive helper 2022-02-10 17:55:32 +01:00
Earlopain
b1a8c4960c
[Tests] Fix pool tests 2022-02-10 17:53:51 +01:00
Earlopain
533b2c5c1c
[Cleanup] Remove unused maintenance tasks 2022-02-09 15:41:15 +01:00
Earlopain
7ffabd3447
[Cleanup] Remove reports 2022-02-09 15:40:06 +01:00
Earlopain
7aa6adeae4
[Cleanup] Remove donmai specifics 2022-02-09 15:39:18 +01:00
Earlopain
a135c2a592
[Cleanup] Remove reportbooru 2022-02-09 15:39:07 +01:00
Earlopain
96d9b7e310
[Cleanup] Remove recommender service 2022-02-09 15:37:44 +01:00
Earlopain
e9f7ac85bf
[Cleanup] Remove artist commentaries 2022-02-03 17:02:49 +01:00
Earlopain
5ebc8756c9
[Cleanup] Remove more danbooru specific code 2022-02-03 16:41:10 +01:00
Earlopain
6f8b4001e0
[Cleanup] Remove danbooru cloudflare purge cache functionality 2021-11-20 21:18:29 +01:00
Earlopain
ca370d29be
[Posts] Remove dead source normalization code 2021-11-20 21:49:53 +01:00
Earlopain
b1f10089d2
[Cleanup] Remove sources controller 2021-11-20 22:03:59 +01:00
Zwagoth
37a9137096
Merge pull request #364 from zwagoth/post-events-log
Post events log
2022-01-31 13:05:05 -05:00
Earlopain
1c6b2dcba9
[Users] Remove special casing for name change feedback
Part of old danbooru code, these feedbacks where never created on e6.
Also remove name change approve/reject controller actions, it's all automatic
2022-01-22 16:20:49 +01:00
Earlopain
c8bbfb93b9
[Posts] Address postevent review 2022-01-09 01:47:06 +01:00
Earlopain
22d04f6cb1
[Posts] Add postevent tests 2022-01-07 12:29:11 +01:00
Earlopain
05c704b83d
Merge pull request #353 from zwagoth/docker-iqdb
[Docker] Add iqdb/s to composer
2022-01-05 14:03:26 +01:00
Earlopain
65383ca5c1
[Docker] Another batch of review improvements
* Fix boolean value in compose file. I just removed the variable altogether,
the iqdb site already checked against iqdbs_server.present? anyways
* Add checksum check for iqbd download
* Fix newline in iqdb patchfile
2021-11-18 19:13:00 +01:00
Zwagoth
b2b5938d5c
Merge pull request #325 from zwagoth/replacement-search
[Search] Add pending replacements field
2021-11-17 00:44:19 -05:00
Earlopain
061176e095
[Setup] Ignore limits when seeding
This makes the environment config understand booleans. If something
ends with "?" it tries to interpret it as a boolean. A bunch of
existing configs where changed to reflect this change.
2021-11-14 22:16:36 +01:00
Earlopain
572b61c85c
[Forum] Prevent voting on your own requests
Removing the votes is still possible but adding new ones  isn't.
Closes #341
2021-11-02 16:36:05 +01:00
Earlopain
147ec019e8
[Search] Add pending replacements field 2021-10-05 21:14:00 +02:00
Earlopain
bdeb4b3501
[IQDB] Remove dead code 2021-10-02 21:15:48 +02:00
Earlopain
852141a2dd
[ForumTopics] Remove thread atom feed 2021-10-02 21:03:38 +02:00
Earlopain
776c4ad6d9
[ForumTopics] Remove index atom feed 2021-10-02 12:24:17 +02:00
Earlopain
d9f7bec1ee
[Comments] Remove atom feed 2021-10-02 12:13:27 +02:00
Earlopain
1c0c3c2475
[Flags] Allow viewing flags on own uploaded posts
Apparently  this was a attempt to hide some undesirable information from mods
I personally think this isn't needed and if someone really wanted to
they could just use the other search options which didn't have this limitation
2021-08-06 19:54:18 +02:00
Earlopain
2f3ac660d1
[ModActions] Remove category and description
category was not maintained at all and would fallback to 2000, it was
also not exposed in any way.
Same for description, it's always null
2021-07-18 19:33:37 +02:00
Earlopain
bcccec6778
[Replacements] Add test for upload limit changes 2021-06-27 00:21:01 +02:00
Earlopain
4b7242005a
[Replacements] Fix broken state when rescaling notes
After the note will be saved it reloaded the post, throwing the
previous changes like new md5, size etc. away
2021-06-24 16:22:04 +02:00
Earlopain
eb1f432fc5
Merge branch 'master' into style-changes 2021-06-02 14:28:22 +02:00
Earlopain
8d8a0802a5
[User] Remove memoization of throttles
This interfered with tests and doesn't seem to give much of an advantage
2021-05-15 12:36:29 +02:00
Earlopain
9df05e7ba8
[Tests] Add test for forum post throttles 2021-05-14 17:54:46 +02:00
Earlopain
11f4b5e15b
[Tests] Fix user tests 2021-05-14 17:12:51 +02:00
Earlopain
015c238dca
[Config] Remove member_comment_time_threshold
This was only stubbed in tests and not used anywhere else
2021-05-14 17:07:43 +02:00
Earlopain
a023c2806e
[Tests] Fix forum post/topic tests 2021-05-14 15:04:03 +02:00
Earlopain
bb56d14221
[Favorites] Use limit parameter and update tests
Some tests still fail because of is_last_page/is_first_page, but the syntax is fine now

Fixes #267
2021-05-09 18:57:01 +02:00
Zwagoth
af7f7f9d10
Merge pull request #256 from Earlopain/remove-useless-config
Remove useless config entries
2021-04-18 17:41:12 -04:00
Kira
96c7a76bb8 [Replacements] Do not post comment on replacement 2021-04-16 18:05:22 -07:00
Kira
3bcaa6dacf [Replacement] Add post replacement promote test 2021-04-07 10:33:19 -07:00
Kira
173294fb56 [Replacements] Testing 2021-04-07 10:33:19 -07:00
Kira
2298beaa6c [Tests] Fix post replacement controller tests 2021-04-07 10:33:19 -07:00
Kira
43ffb7925f [temp] tests 2021-04-07 10:33:19 -07:00
Kira
c2e6b16796 Tests and fixes 2021-04-07 10:33:18 -07:00
Earlopain
e7b03a84e9
[Config] remove dead keys 2021-04-03 20:14:15 +02:00
Earlopain
fa1fbcd72f
[Autocomplete] Remove unused files 2021-03-31 20:14:03 +02:00
Kira
8ea9419045 [Pools] Fix pool name validator for '_-_'
A bad regex was added which was flagging pool names as invalid
if they contained _-_ in them or ' - '. As these are heavily used
in pool names they should be allowed. But consequitive characters
should still be not allowed.
2021-03-11 00:06:20 -08:00
Kira
5c90693338 [Posts] Allow copying source/tags on delete 2021-03-10 22:39:12 -08:00
Kira
9c6939c302 [Tag Aliases] Don't update locked tag categories on alias approval. 2021-02-28 13:30:28 -08:00
Kira
9da8e1b1ad [Tests] Fix test breakage because of lack of seeds 2021-02-28 13:28:22 -08:00
Kira
784890ca3e [Posts] Fix tag set presenter using broken memoist gem 2021-02-25 12:08:09 -08:00
Kira
76d1999ade [Rails] Upgrade to rails 6.1 + fix tests 2021-02-25 12:08:09 -08:00
Kira
e685fb87c2 [Tests] Update tests and fix deprecations 2021-02-25 12:08:09 -08:00
Kira
12cdec9642 [Tests] Remove test for removed class 2021-02-25 12:08:09 -08:00
Kira
fd635ff197 [Tests] Fix vote tests 2021-02-25 12:08:09 -08:00
Kira
e2a7fa1e27 [Tests] Fix favorite tests 2021-02-25 12:08:09 -08:00
Kira
2f416b51b4 [Tests] Fix pool tests
The atomic add! and remove! methods were not properly resetting
the skip_sync property once the pool was updated. This was causing
pool test behavior to fail because later syncronize methods would
fail to sync.
2021-02-25 12:08:09 -08:00
Kira
dbb5870d93 [Tests] Fix pool related errors in tests 2021-02-25 12:08:09 -08:00
Kira
46fe5f1164 [Pools] Pool tests 2021-02-25 12:08:09 -08:00
Kira
c246cd68a2 More test fixes 2021-02-25 12:08:08 -08:00
Kira
8364af65c5 More test fixing 2021-02-25 12:08:08 -08:00
Kira
58e8fe22fd Tests and fixes 2021-02-25 12:08:08 -08:00
Kira
32e81770ef Update tests 2021-02-25 12:00:09 -08:00
Kira
4d996fed54 Update allowed tag naming patterns 2020-12-20 11:31:52 -08:00
Kira
436d2aea38 [Ruby 3] Fix up some deprecations involving ruby 3
Still pending are gems that make poor choices and need to be removed,
replaced, or fixed up.

Memoist
ActiveModelSerializers
2020-11-11 21:06:12 -08:00
Kira
db8d4c4773 Normalize EOL style + newline at end of files. 2020-10-24 05:50:32 -07:00
Kira
3d82cc3430 [Tag Relations] Remove secondary validations 2020-07-17 01:34:12 -07:00
Kira
160b0cb22e Remove saved searches 2019-10-21 02:57:03 -07:00
Kira
6f74ef28bf Remove broken bulk revert tool 2019-09-28 22:10:23 -07:00
Kira
71baa0ac82 Remove post version report 2019-09-28 22:00:52 -07:00
Kira
bb9e30dc74 Remove user inviter system 2019-09-16 13:50:47 -07:00
Kira
81a1b4b544 Make tests about 300x faster by not doing expensive ops 2019-09-09 12:58:18 -07:00
Kira
6fb1e3ceaf Fix up users being broken in tests and fix a few basic tests 2019-09-09 12:58:18 -07:00
Kira
55cb64acf7 Fix deprecated use of update_attributes 2019-09-09 12:58:18 -07:00
Kira
3bb09d778c Remove test for functional removed in saved searches controller 2019-09-09 12:58:18 -07:00
Kira
8659b908ed Disable user limits when testing 2019-09-09 12:58:18 -07:00
Kira
fffe6b1c19 Fix test fixtures and seeds 2019-09-09 12:58:18 -07:00
Kira
a665b526a1 Don't nuke the main data folder when cleaning up tests, mmkay? 2019-09-09 12:58:18 -07:00
evazion
aae3a8edfb artists: reduce queries in artist summaries.
Avoid a few queries when searching for single artist tags.
2019-09-05 06:03:33 -07:00
Kira
532e2c1e04 Update to rails 6 2019-08-28 21:50:40 -07:00
evazion
ae5d039745 app controller: move safe mode from app controller to SessionLoader. 2019-08-28 21:09:37 -07:00
evazion
4dd6e86b0c api: disable csrf protection for api requests.
Fixes POST/PUT API requests failing with InvalidAuthenticityToken errors
due to missing CSRF tokens.

CSRF protection is only necessary for cookie-based authentication. For
non-cookie-based authentication we can safely disable it. That is, if
the user is already passing their login + api_key, then we don't need
to additionally verify the request with a CSRF token.

ref: 2e407fa476 (comments)
2019-08-28 21:00:54 -07:00
evazion
971307ea44 tests: move authentication tests out of post tests. 2019-08-28 20:56:44 -07:00
evazion
3949c184f7 tests: fix authentication in controller tests.
Fix controller tests to login for real instead of faking it.
2019-08-28 20:52:21 -07:00
evazion
4e39ef572e Fix #4125: Detect forum and comment spam. 2019-08-28 20:51:14 -07:00
evazion
30ee20a570 dmails: factor out spam detector service. 2019-08-28 20:48:31 -07:00
evazion
531b5c9845 models: drop various unused #named methods. 2019-08-18 13:35:11 -07:00
evazion
89e7a6dec8 sessions: remove nonexistent GET /session route. 2019-08-15 04:26:49 -07:00
evazion
9fbf208e44 posts: fix error on /posts?md5=<does_not_exist>. 2019-08-15 04:26:23 -07:00
evazion
aa966ced71 wiki pages: fix error in /wiki_pages/does_not_exist.json 2019-08-15 04:25:59 -07:00
Kira
a63a5c3131 Remove caching from tag aliases 2019-08-13 06:04:42 -07:00
evazion
ef806bf340 tests: fix ip ban test regression. 2019-08-13 03:28:27 -07:00
evazion
6beb8a81e1 Fix #4106: Allow moderators to IP ban subnets. 2019-08-13 03:24:26 -07:00
evazion
f6bb5f26e3 Remove tag alias corrections controller tests (fixup 18a216c67). 2019-08-13 03:19:15 -07:00
evazion
2cd0355665 Fix #4130: Remove tag alias corrections. 2019-08-13 03:18:39 -07:00
evazion
ec0ae03aef nijie: update for new image urls.
Nijie moved from this:

    https://pic03.nijie.info/nijie_picture/236014_20170620101426_0.png (page: https://www.nijie.info/view.php?id=218856)

to this:

    https://pic.nijie.net/03/nijie_picture/236014_20170620101426_0.png (page: https://www.nijie.info/view.php?id=218856)
2019-08-10 05:40:31 -07:00
evazion
3931fb454b Fix #4053: Add disapproval index improvements.
Add search form to /moderator/post/disapprovals.
2019-08-10 05:39:04 -07:00
evazion
1e7b70c476 Fix #4107: Can't create artist entry if tag already has a wiki #4107 2019-08-10 05:33:43 -07:00
evazion
5d13562b06 application controller: fix bad file extension errors.
Fix requests with bad file extensions not always returning errors correctly:

* https://danbooru.donmai.us/posts.jpg
* https://danbooru.donmai.us/posts.blah
* https://danbooru.donmai.us/posts/bad.jpg
* https://danbooru.donmai.us/posts/bad.blah
2019-08-10 05:16:44 -07:00
Kira
4024108f1c Convert builder -> janitor for user rank 2019-06-29 12:58:28 -07:00
Kira
16af051931 Convert platinum -> contributor for user rank 2019-06-29 12:06:13 -07:00
Kira
9fa294ba31 Convert gold -> privileged for user level 2019-06-29 08:45:58 -07:00
Kira
bf100446b9 Teach uploaders and editor pages about multiple sources
This somewhat gimps the current source information fetching tool,
however it was already a bit suspect, and needs to be reworked before
being released as a public tool because it relies on API calls.
2019-04-26 07:27:06 -07:00
Zwagoth
4a46874a50 Revert "Remove post disapproval"
This reverts commit c6df9a33e0.
2019-04-11 23:39:44 -04:00
Kira
5083e6d92e Remove favorite groups 2019-03-23 00:57:37 -07:00
Kira
f4f030f726 Password migration/upgrade
NOTE: All existing passwords in development no longer work after
this change! Change your users password using the rails console.

Automatically convert and ugrade old passwords to using bcrypt
Removed the seemingly pointless transformation and hashing on top
of the actual password with a static salt.
Disabled logging in using password hashes, because that's just not
secure in any way, and negates cracking passwords at all.
Disabled sending the password hash to the client as a cookie, even
if it was signed.
Disabled legacy API logins.
2019-02-21 21:10:20 -08:00
Kira
c6df9a33e0 Remove post disapproval
This simplifies the approval system to be a single user with an
auditing table. The disapproval system was confusing and outright
post deletion replaces it on e6.

Slightly changes the rules of how post approvals work to remove
a few limits that are not reflected on e6.
2019-02-19 20:20:15 -08:00
Kira
3e8483eaf0 Tests for at least some of the new jobs 2019-02-18 16:29:13 -08:00
Kira
bd69a08179 Convert remaining delay jobs to activejob 2019-02-18 14:32:18 -08:00
Kira
22a077a2dd Convert delayed_jobs to activejob
Add sidekiq and create jobs for the majority of delayed actions.

Temporary hookup of sidekiq UI in routes for testing purposes.
2019-02-17 19:28:40 -08:00
Kira
43cad3f5e7 Remove post banning functionality
The distinction between file deletion and banning is pretty weird
and there are a bunch of edge cases that make this not worth
trying to maintain a distinction.

Left in the automatic implication code on banned artists because
it looked useful for automating some of the basic tasks that are
done surrounding DNP artists.
2019-02-14 01:44:54 -08:00
Kira
f9d9fc0c72 Unlink voting and favorite actions
E621 uses a decoupled voting and favorite system to give users
more choices about how they interact with these systems.
2019-02-13 20:36:55 -08:00
Kira
cfd65dc20b Add DNS email blacklist support
Look up the MX records for domains when validating blacklists.

A common trick is to register a domain and point it at a spam
email provider to bypass lists.
2019-02-09 18:57:35 -08:00
Kira
0bd76687a6 Add email blacklist controller 2019-02-09 18:42:43 -08:00
Kira
143e428bab Add email blacklist to user model
Thi allows prevent specific email addresses from being used during
signup or email change.
2019-02-09 14:00:37 -08:00
Kira
21aaa2a185 Add upload whitelist model + controller
Allow preventing uploads from unknown sources by having a whitelist
of allowed domains and patterns that can be directly fetched from.
2019-02-06 21:08:03 -08:00
Zwagoth
73572fa316
Merge pull request #1 from zwagoth/locked_tags
Locked tags
2019-02-05 18:53:27 -05:00
Kira
4d1f436266 Add locked tags feature
It is desirable for administrators to be able to shape what tags
can and can not be applied to specific posts to cut down on how
many tickets need to be handled about tag vandalism.

TODO: Tell users which tags were not updated if they hit any
locked tags.
2019-02-02 18:03:47 -08:00
Albert Yi
d8aabff77b remove post keeper references 2019-01-31 15:45:06 -08:00
Albert Yi
33063a72de Add a listing page for post disapprovals (accessible to approvers only) 2019-01-24 16:14:57 -08:00
Albert Yi
1550538dc1 Tag change notices
This adds a small notice at the bottom of post searches if a single tag search is the target of any tag change request.
2019-01-22 17:22:07 -08:00
evazion
8cadef2dd7 pixiv: fix illust id parsing (fix #4043).
* Tighten up illust id parsing to avoid misparsing ids from
  non-illust urls (sketch urls and novel urls).

* Move id parsing tests from post_test.rb to sources/pixiv_test.rb.

* Drop support for touch.pixiv.net urls. These urls are no longer used
  by Pixiv and aren't present as the source of any posts on Danbooru.
2019-01-13 14:28:51 -06:00
Albert Yi
f33b23d035 add post count estimates for bulk update requests 2019-01-09 15:54:55 -08:00
Albert Yi
844b1a81ba
Merge pull request #4039 from evazion/fix-4038
Fix #4038: Attempting to create an IP-ban bans the creator.
2019-01-09 14:47:32 -08:00
Albert Yi
d97622d1bb
Merge pull request #4007 from evazion/fix-4004
Fix #4004: Add additional order by metatags for posts
2019-01-09 14:43:15 -08:00
evazion
80f43f9a7c Fix #4038: Attempting to create an IP-ban bans the creator.
* Rename comments.ip_addr to comments.creator_ip_addr.
* Fix belongs_to_creator to not clobber ip_addr field.
2019-01-09 16:20:34 -06:00
Albert Yi
8b0af19f7f fixes #3824: render tag requests dynamically in the forum post
refactoring
2019-01-08 12:57:37 -08:00
evazion
5c54c61d65 Fix #4035: The Related Tag JSON endpoint is returning the wrong information
* Fix /related_tags.json to return a list of tags in the `other_wikis` field.

* Add support for /related_tags.xml.
2019-01-07 13:30:10 -06:00
evazion
04d5b16da7 pixiv: fix failure to upload bad pixiv id images (fix #4031)
Bug: Uploading bad pixiv id images failed because the pixiv strategy
raised a BadIDError exception when the upload service checked for the
ugoira frame data.
2019-01-03 18:01:20 -06:00
evazion
886096b47a BURs: fix remove alias command removing inactive aliases.
Fix the `remove alias` and `remove implication` commands to only remove
active aliases or implications, not pending/deleted/retired ones.
2019-01-03 16:30:39 -06:00
Albert Yi
f78ff57884 fix forum topic test 2019-01-02 12:33:56 -08:00
Albert Yi
6f30c99ac3 fix tag alias correction tests
also removes references to distributed memcached servers in tag alias correction
2019-01-02 11:52:35 -08:00
evazion
d32882e1ee aliases/implications: fix controller tests. 2018-12-31 19:08:15 -06:00
evazion
d393d67a9b aliases/implications: don't destroy removed aliases (#4024). 2018-12-31 17:07:14 -06:00
evazion
f5116c5ce2 aliases/implications: allow duplicate inactive aliases/implications.
Allow multiple pending, deleted or retired aliases/implications for the
same tag.

This is so that deleted or retired aliases can be resubmitted as new
pending requests.
2018-12-31 17:07:14 -06:00
evazion
44a54f75cd tests: don't automatically approve aliases/implications on creation.
Automagically approving inactive aliases makes testing more difficult.
2018-12-31 17:07:14 -06:00
evazion
341403c7bb tests: fix broken bulk update request test. 2018-12-31 17:07:14 -06:00
evazion
6a77b68b74 tumblr: fix tests. 2018-12-27 15:03:11 -06:00
evazion
0f513d1a1b twitter: include intent url in new artist entries (#4028). 2018-12-27 15:03:11 -06:00
evazion
2129e60b2b pixiv: include stacc url in new artist entries (#4028). 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
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
evazion
3e382bd831 Fix #4014: Incorrect tag type counts on posts. 2018-12-19 12:20:29 -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
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
Albert Yi
4706cae114 Add user permissions for flagging and for giving user feedback 2018-12-11 17:08:31 -08: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
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
Albert Yi
79dfa6c28f fix migration for circleci 2018-12-10 17:51:57 -08:00
evazion
7ae27c370d Fix #3995: Automatically imply *_school_uniform -> school_uniform. 2018-12-05 12:19:27 -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
evazion
e8c3d92696 Fix #3977: DeviantArt: Support new wixmp.com urls. 2018-11-30 00:10:59 -06:00
evazion
8da3474a8b Fix #3994: Some deviantart images mistakenly choosing preview image. 2018-11-29 23:01:08 -06:00
Albert Yi
60cee5f452
Merge pull request #3989 from evazion/fix-3987
Wiki pages: convert other_names column to array (#3987)
2018-11-19 16:23:32 -08:00
evazion
d82418ed43 Fix #3988: ordpool:<name> fails for large pools.
Also fixes ordpool:<name> not returning all posts in the correct order
when searching for series pools that contain duplicate posts.
2018-11-16 22:48:17 -06:00
evazion
41ff05c121 artists: convert other_names to array (#3987). 2018-11-15 14:31:16 -06:00
Albert Yi
0508b127fd continue refactoring savedsearch 2018-11-15 12:06:13 -08:00
evazion
741462ae68 artist versions: convert other_names, url_string to arrays (#3987). 2018-11-14 14:25:02 -06:00