Commit Graph

52 Commits

Author SHA1 Message Date
Albert Yi
da34c95da5 add expiry parameter 2018-05-22 14:57:46 -07:00
Albert Yi
72d72fd3d0 eliminate usage of localstorage to cache tag autocomplete results (fixes #3543) 2018-05-17 09:54:37 -07:00
r888888888
abce4d2551 Raise error on unpermitted params.
Fail loudly if we forget to whitelist a param instead of silently
ignoring it.

misc models: convert to strong params.

artist commentaries: convert to strong params.

* Disallow changing or setting post_id to a nonexistent post.

artists: convert to strong params.

* Disallow setting `is_banned` in create/update actions. Changing it
  this way instead of with the ban/unban actions would leave the artist in
  a partially banned state.

bans: convert to strong params.

* Disallow changing the user_id after the ban has been created.

comments: convert to strong params.

favorite groups: convert to strong params.

news updates: convert to strong params.

post appeals: convert to strong params.

post flags: convert to strong params.

* Disallow users from setting the `is_deleted` / `is_resolved` flags.

ip bans: convert to strong params.

user feedbacks: convert to strong params.

* Disallow users from setting `disable_dmail_notification` when creating feedbacks.
* Disallow changing the user_id after the feedback has been created.

notes: convert to strong params.

wiki pages: convert to strong params.

* Also fix non-Builders being able to delete wiki pages.

saved searches: convert to strong params.

pools: convert to strong params.

* Disallow setting `post_count` or `is_deleted` in create/update actions.

janitor trials: convert to strong params.

post disapprovals: convert to strong params.

* Factor out quick-mod bar to shared partial.
* Fix quick-mod bar to use `Post#is_approvable?` to determine visibility
  of Approve button.

dmail filters: convert to strong params.

password resets: convert to strong params.

user name change requests: convert to strong params.

posts: convert to strong params.

users: convert to strong params.

* Disallow setting password_hash, last_logged_in_at, last_forum_read_at,
  has_mail, and dmail_filter_attributes[user_id].

* Remove initialize_default_image_size (dead code).

uploads: convert to strong params.

* Remove `initialize_status` because status already defaults to pending
  in the database.

tag aliases/implications: convert to strong params.

tags: convert to strong params.

forum posts: convert to strong params.

* Disallow changing the topic_id after creating the post.
* Disallow setting is_deleted (destroy/undelete actions should be used instead).
* Remove is_sticky / is_locked (nonexistent attributes).

forum topics: convert to strong params.

* merges https://github.com/evazion/danbooru/tree/wip-rails-5.1
* lock pg gem to 0.21 (1.0.0 is incompatible with rails 5.1.4)
* switch to factorybot and change all references

Co-authored-by: r888888888 <r888888888@gmail.com>
Co-authored-by: evazion <noizave@gmail.com>

add diffs
2018-04-06 18:09:57 -07:00
evazion
58018aeb2b artists: move artist finding code from controller to model. 2017-11-14 23:27:47 -06:00
r888888888
d12f082f9a fixes #3300 2017-09-14 11:37:42 -07:00
evazion
10614d2152 artists: show success/error message when updating artists. 2017-07-29 01:44:05 -05:00
Albert Yi
1cc9abc2db Merge pull request #3204 from evazion/fix-3203
Fix #3203: Overly restrictive permissions
2017-07-07 18:59:13 -07:00
evazion
0c79d2f09e Removed unused controllers actions / routes (#3206). 2017-07-07 15:38:06 -05:00
evazion
cc54c16fac /artists/show_or_new: make public; add "artist doesn't exist" page.
* Fix access denied error when anonymous users open /artists/show_or_new.

* When the artist doesn't exist, take user to "artist doesn't exist"
  page instead of redirecting to /artists/new.
2017-07-06 18:37:13 -05:00
evazion
2c29a7ac19 /artists: only include domains in /artists/1234.json, not /artists.json. 2017-05-14 10:38:26 -05:00
r888888888
68f057e7ba refactor how artist notes are updated 2017-04-18 17:07:12 -07:00
evazion
6b462c865e /artists: sort autocomplete by post count.
* Add search[order]=post_count param to /artists.
* Make autocomplete do a prefix match ordered by post count, so that it
  works the same way that tag autocomplete does elsewhere.
2017-04-07 18:25:31 -05:00
evazion
674028588c /artists: avoid COUNT(*), avoid N+1 queries on artist urls.
* The /artists page issued a `SELECT count(*) FROM artists` because
  .paginate was missing search_count.

* /artists.json had an N+1 problem on artist urls. This slowed down
  autocomplete.
2017-04-07 18:25:30 -05:00
evazion
c46b31aa9c Prevent reverting to foreign versions (fixes #2711). 2016-10-11 06:57:46 +00:00
r888888888
fc7afd44ea refactor source pixiv test
refactor pixiv download tests
refactor upload test
refactor nico seiga test
refactor twitter tests
2016-09-28 11:25:29 -07:00
r888888888
b8f14b6fee hide more pages for banned artists #2132 2016-01-27 17:06:13 -08:00
Toks
f94d297149 #2404 fix artist finder 2015-06-12 12:07:50 -04:00
evazion
dcbe061809 Move normalize_for_artist_finder! into model.
Move the call to normalize_for_artist_finder! from the artist
controller into Artist#find_all_by_url. This makes testing easier.
It also makes it so that URLs are normalized when using the search
form on the artist listing page.
2014-10-05 14:11:32 -05:00
evazion
7f3b98969f Refactor normalize_for_artist_finder!
Refactors things such that Sources::Site has a normalize_for_artist_finder!
method that delegates to the strategy for the appropriate site. This way
any site that needs to normalize URLs for the artist finder can do so.
2014-10-05 14:11:31 -05:00
evazion
ec0f226f46 Make the artist finder work with new Pixiv URLs. 2014-10-04 12:45:37 -05:00
r888888888
0724f6ca06 fixes #1383 2014-03-07 16:42:20 -08:00
Toks
42b362d545 fixes #2081 2014-01-08 14:47:54 -05:00
Toks
3a9a6c6658 #1866: Normalize urls in artist finder 2013-12-25 12:43:54 -05:00
Toks
11871d88b6 fixes #1844
closes #1653
2013-10-26 00:08:37 -04:00
r888888888
bd370da2fc fixes #1708 2013-06-05 15:00:15 -07:00
Toks
b7607e2284 fix artist deletion notifications 2013-06-05 13:12:18 -04:00
Toks
6f2d57882e fixes #1672 2013-06-05 13:09:14 -04:00
r888888888
b0d70ede4c fixes #1653 2013-05-31 15:34:25 -07:00
r888888888
4dff618863 Use webmock instead of fakeweb for VCR; Fix tests; Use Timecop to speed up tests previously using sleep; Move artist rename into seperate operation 2013-05-24 12:59:13 -07:00
Toks
9ccf1e0f8f add limit parameter to everything 2013-05-15 01:01:19 -04:00
Toks
42cb4db339 fixes #1204 2013-04-05 16:44:25 -04:00
albert
cf6fd1af64 fixes #1178 2013-04-03 17:27:41 -04:00
albert
541dabaaf6 fixes #1108 2013-03-29 15:37:28 -04:00
小太
cba839ba76 Kill trailing whitespace in ruby files 2013-03-19 23:10:10 +11:00
albert
c62b8ee46e fixes #547 2013-02-23 12:36:45 -05:00
albert
6bc5b96d8e moved artist ban to separate action/button 2013-02-23 10:56:27 -05:00
albert
78f1d0f69a fixes to user search 2013-02-21 12:42:41 -05:00
albert
13271e9bf5 work on refactoring search 2013-01-08 15:53:21 -05:00
albert
06c259188d fix 2012-12-24 17:03:53 -05:00
albert
f07bf9b2cc deleted posts are now hidden 2011-10-22 13:25:22 -04:00
albert
ba9aa94e31 implemented find artist 2011-10-03 15:02:12 -04:00
albert
2b7a8f2d67 view changes 2011-08-22 16:28:31 -04:00
albert
4e19d98047 changes 2011-06-26 01:52:42 -04:00
albert
28d179708f changes 2011-06-25 16:33:30 -04:00
albert
42627be1d3 moved out search pages 2011-03-15 19:19:49 -04:00
albert
2053e6ad8c * Renamed Post.find_by_tags into Post.tag_match, made into a full fledged scope
* Post.tag_match no longer takes an options hash (use other arel builders instead)
2011-01-28 17:40:22 -05:00
albert
541163685d implemented forum post controller 2011-01-13 18:16:39 -05:00
albert
976a25a6c6 additional functional tests, some controller fixes 2010-12-01 18:50:04 -05:00
albert
c6304c6e08 views 2010-11-19 16:24:17 -05:00
albert
f051e04550 sync 2010-10-08 18:42:26 -04:00