Commit Graph

54 Commits

Author SHA1 Message Date
edshot99
4928747b83 add transcript support
it could be possible to load closed captions and subtitles from the transcript div via javascript, but I hate javascript so perhaps some other time.
2024-11-10 13:58:15 -06:00
edshot99
caf7d12da9 Merge branch 'master' into master2 2024-11-03 23:51:48 -06:00
edshot99
b7fee5fe2f add title support 2024-10-30 18:52:53 -05:00
clragon
567ec94e5a
[PostVersions] Reimplement Query as subclass of ElasticQueryBuilder (#772) 2024-10-28 12:51:15 -07:00
Donovan Daniels
cffc480b23
[PostVersions] Allow querying by updated_at (#762)
Resolves #753
2024-09-29 13:07:00 -07:00
Earlopain
fc7d84affd
[RuboCop] Enable Style/FrozenStringLiteralComment
This reduces allocations on the posts page by about 5%, from basic testing
2024-02-25 18:15:55 +01:00
Donovan Daniels
465a91a69f
[PostVersions] Allow searching for only uploads (#595)
* [PostVersions] Allow searching for only uploads

* include_blank: true
2024-01-22 17:30:42 +01:00
Earlopain
1b982f64e1
[PostVersions] Downcase tag query
Allows searches like `Hi_res` to function
2024-01-21 17:56:47 +01:00
Earlopain
ae96db548e
[Cleanup] Avoid nested methods
These are redefined every time the enclosing method is called
2024-01-21 17:55:11 +01:00
Earlopain
f8098721ec
[Misc] Remove memoist gem dependency
The author has passed away and  some functionality is broken with recent
ruby versions already. We only use a subset of it, so it's easy to replace.

Some places:
* Didn't even use it
* Used it but the method was already cached through memcached
* Just don't need it

Some places I question if it is needed but I'll just leave them there
since I don't want to benchmark
2023-11-08 22:21:11 +01:00
Earlopain
e4ce4f312f
[PostVersions] Remove code for handling nil posts
The post_id column is not nullable
2023-11-08 22:11:46 +01:00
Earlopain
3373dd51de
[PostVersions] Organize api only methods
Remove memoization, they are only called once
Remove the two with_fields methods as they are unused
2023-11-08 20:13:53 +01:00
Earlopain
0bd651c08b
[Elasticsearch] Remove elasticsearch-model gem
This should be the bulk of the work to integrate with opensearch-ruby
2023-09-16 15:52:05 +02:00
Earlopain
c8d7bebd72
[QueryBuilder] Move parsing code into own class
Introduces the concept of "free" tags to account for automatically added tags.
Introduce `resolve_aliases` which can be used instead of `raw_tag_match`
2023-08-24 13:16:44 +02:00
Earlopain
d579c845f3
[Cleanup] Remove duplicate tag query scan method 2023-08-19 11:20:00 +02:00
Earlopain
79bada3392
[Search] Unify user lookup
There was lots of duplication between id/name searching, with a plethora
of different approaches. Now it's all in one place.
A few places that didn't have name/id search previously now do.
2023-08-04 20:46:59 +02:00
Earlopain
42abd4ca33
[UserRevert] Fix error when user has uploaded a post
Extended version of #530

Co-authored-by: Donovan Daniels <hewwo@yiff.rocks>
2023-08-01 18:20:39 +02:00
Earlopain
52bc715a28
[Posts] Add edit reason when reverting/undoing a version 2023-08-01 17:24:14 +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
Kira
5d8494caac Replace post archive service with inline code 2019-05-10 16:08:08 -07:00
evazion
03abbd0683 Fix #2894: Use [[:space:]] instead of \s in regexes. 2018-09-20 19:24:38 -05: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
BrokenEagle
d829ab3a00
Move all order logic to models
- Have a default order for each model
-- The overall default is ID DESC
- Allow for custom orderings
-- When comma-separated IDs are used
2018-01-29 11:42:53 -08:00
evazion
0ca726802f Fix #3430: Accept the search[id] param in all controllers.
* Allow every controller to take the `search[id]` param.

* Parse the `search[id]` param the same way that the `id:<N>` metatag is
  parsed. So `search[id]=1,2,3`, `search[id]=<42`, `search[id]=1..10`, for
  example, are all accepted.
2017-12-17 17:36:52 -06:00
evazion
c1834ab8dd Inherit models from ApplicationRecord instead of ActiveRecord::Base. 2017-06-16 13:28:31 -05:00
Albert Yi
5404c1d231 implement postarchive 2017-02-21 13:40:52 -08:00
evazion
ec653dce71 app/presenters: remove unused forum_post/note/post_version presenters. 2017-02-06 19:07:02 -06:00
Albert Yi
79842f7a3b restrict min level constraints for forum topics to mod+admin and restrict options based on current user's level. check privileges for visiblity in forum posts and topics. deprecate serializable_hash (undocumented, internal) for as_json, refactor to use hidden_attributes and method_attributes #2658 2016-10-25 15:05:55 -07:00
r888888888
aab03422bc performance tweaks for rails 4.1 2014-04-24 22:24:42 -07:00
r888888888
fad0ab7c93 fixes #2133 2014-04-16 17:43:34 -07:00
r888888888
b77c5ee62c fixes #1955 2014-03-19 15:35:09 -07:00
Toks
347561c838 fixes #1439 2013-12-09 15:05:12 -05:00
Toks
2c80f9bcc4 fixes #357 2013-08-13 13:15:07 -04:00
Toks
d4060a647d Fix undo not undoing parent additions 2013-08-13 13:03:48 -04:00
Toks
2d0c3d16a3 fix #1724 for posts 2013-06-09 15:18:09 -04:00
Toks
9d8330e905 fixes #748 2013-04-20 12:17:13 -04:00
Toks
92177ae240 fixes #1370 2013-04-18 21:17:54 -04:00
Toks
eff0041729 adds proper obsolete rating/parent/source logic 2013-04-05 20:34:02 -04:00
Toks
fab493bf40 fixes #1162 2013-04-01 20:53:39 -04:00
albert
85a5fcc658 fixes #1133 2013-03-29 16:45:59 -04:00
小太
cba839ba76 Kill trailing whitespace in ruby files 2013-03-19 23:10:10 +11:00
albert
7ca8635051 fixes #691 2013-03-02 21:13:21 -05:00
albert
8911738909 fix post version diff method 2013-02-23 16:04:09 -05:00
albert
56dd8707fd controller tweaks 2013-02-23 15:58:21 -05:00
albert
e0fdda3103 fixes to model searches 2013-02-19 12:27:17 -05:00
albert
e0c563373a added more legacy api endpoints 2013-01-22 17:42:00 -05:00
albert
8749c43b3e refactored search 2013-01-10 17:45:52 -05:00
albert
d5569bed5b fixes #299 2012-02-24 17:47:15 -05:00
albert
69044f3389 reverted post version tag change for danbooru2 2011-10-22 21:34:32 -04:00
albert
e42ea9c608 added popular exploration, added order:rank 2011-08-11 15:39:51 -04:00