Commit graph

543 commits

Author SHA1 Message Date
Eugen Rochko
a9b5598c97
Change user settings to be stored in a more optimal way ()
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2023-03-30 14:44:00 +02:00
Matt Jankowski
e633b26f4f
Add allow_other_host in redirects which may go outside app () 2023-03-26 00:38:32 +01:00
Christian Schmidt
bd047acc35
Replace Status#translatable? with language matrix in separate endpoint () 2023-03-16 11:07:24 +01:00
Nick Schonning
434770f580
Autofix Rubocop Rails/FindById () 2023-02-21 10:21:48 +09:00
Nick Schonning
717683d1c3
Autofix Rubocop remaining Layout rules () 2023-02-20 06:58:28 +01:00
Nick Schonning
aef0051fd0
Enable Rubocop HTTP status rules () 2023-02-20 11:16:40 +09:00
Nick Schonning
2177daeae9
Autofix Rubocop Style/RedundantBegin () 2023-02-19 07:09:40 +09:00
Nick Schonning
e2a3ebb271
Autofix Rubocop Style/IfUnlessModifier () 2023-02-18 12:37:47 +01:00
Claire
d6930b3847
Add API parameter to safeguard unexpect mentions in new posts () 2023-02-13 16:36:29 +01:00
Nick Schonning
f68bb52556
Apply Rubocop Style/NegatedIfElseCondition () 2023-02-08 07:07:36 +01:00
Eugen Rochko
21780c0204
Change notifications per page from 15 to 40 in REST API () 2023-02-01 11:23:54 +01:00
Claire
4b92e59f4f
Add support for editing media description and focus point of already-posted statuses ()
* Add backend support for editing media attachments of existing posts

* Allow editing media attachments of already-posted toots

* Add tests
2023-01-18 16:33:55 +01:00
Claire
b034dc42be
Fix /api/v1/admin/trends/tags using wrong serializer ()
* Fix /api/v1/admin/trends/tags using wrong serializer

Fix regression from 

* Only use `REST::Admin::TagSerializer` when the user can `manage_taxonomies`

* Fix admin trending hashtag component to not link if `id` is unknown
2023-01-18 16:28:18 +01:00
Carl Schwan
f33e22ae4c
Allow changing hide_collections setting with the api ()
* Allow changing hide_collections setting with the api

This is currently only possible with app/controllers/settings/profiles_controller.rb
and is the only difference in the allowed parameter between the two controllers

* Fix the lint issue

* Use normal indent
2023-01-13 16:40:21 +01:00
Claire
8556a649d5
Fix changing domain block severity not undoing individual account effects ()
* Fix changing domain block severity not undoing individual account effects

Fixes 

* Add tests
2022-12-15 17:45:02 +01:00
Claire
623d3d2e32
Change CSP directives on API to be tight and concise () 2022-12-15 16:40:32 +01:00
nametoolong
63b379c2d9
Fix N+1 queries from in NotificationsController ()
Co-authored-by: Nonexistent <nx@example.org>
2022-12-15 16:18:20 +01:00
Francis Murillo
f6492a7c4d
Log admin approve and reject account ()
* Log admin approve and reject account

* Add unit tests for approve and reject logging
2022-12-07 00:25:18 +01:00
Claire
69137f4a90
Fix irreversible and whole_word parameters handling in /api/v1/filters ()
Fixes 
2022-12-07 00:10:53 +01:00
Claire
51a33ce77a
Fix not being able to follow more than one hashtag ()
Fixes regression from 
2022-11-21 10:35:09 +01:00
trwnh
7fdeed5fbc
Make tag following idempotent () 2022-11-17 10:55:59 +01:00
trwnh
e1f819fd78
Fix pagination of followed tags ()
* Fix missing pagination headers on followed tags

* Fix typo
2022-11-17 10:54:10 +01:00
Daniel Axtens
4d85c27d1a
Add 'private' to Cache-Control, match Rails expectations ()
Several controlers set quite intricate Cache-Control headers in order to
hopefully not be cached by any intermediate proxies or local caches. Unfortunately,
these headers are processed by ActionDispatch::HTTP::Cache in a way that squashes
and discards any values set alongside no-store other than private:
8015c2c2cf/actionpack/lib/action_dispatch/http/cache.rb (L207-L209)

We want to preserve no-store on these responses, but we might as well remove
parts that are going to be dropped anyway. As many of the endpoints in these
controllers are private to a particular user, we should also add "private",
which will be preserved alongside no-store.
2022-11-16 04:56:30 +01:00
trwnh
b59ce0a60f
Move V2 Filter methods under /api/v2 prefix ()
* Move V2 Filter methods under /api/v2 prefix

* move over the tests too
2022-11-14 08:34:07 +01:00
Eugen Rochko
b31afc6294
Fix error when passing unknown filter param in REST API ()
Fix 
2022-11-14 08:06:06 +01:00
Eugen Rochko
167d86d21d
Fix role_ids not accepting arrays in admin API ()
Fix 
2022-11-14 06:56:15 +01:00
Claire
86f6631d28
Remove dead code and refactor status threading code ()
* Remove dead code

* Remove unneeded/broken parameters and refactor descendant computation
2022-11-10 22:30:00 +01:00
Claire
1615c3eb6e
Change logged out /api/v1/statuses/:id/context logged out limits () 2022-11-10 21:06:08 +01:00
James Tucker
78a6b871fe
Improve performance by avoiding regex construction ()
```ruby
10.times { p /#{FOO}/.object_id }
10.times { p FOO_RE.object_id }
```
2022-11-10 05:49:30 +01:00
Eugen Rochko
0cd0786aef
Revert filtering public timelines by locale by default () 2022-11-10 05:34:42 +01:00
trwnh
89e1974f30
Make account endorsements idempotent (fix ) ()
* Make account endorsements idempotent (fix )

* Accept suggestion to use exists? instead of find_by + nil check

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>

* fix logic (unless, not if)

* switch to using `find_or_create_by!`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-11-08 16:39:15 +01:00
trwnh
68d9dcd425
Fix uncaught 500 error on invalid replies_policy (Fix ) () 2022-11-08 16:37:28 +01:00
Claire
4cb2323458
Fix crash in legacy filter creation controller () 2022-11-07 03:38:53 +01:00
Eugen Rochko
3a41fccc43
Change AUTHORIZED_FETCH to not block unauthenticated REST API access ()
New environment variable `DISALLOW_UNAUTHENTICATED_API_ACCESS`
2022-11-05 22:56:03 +01:00
Claire
c2170991c7
Fix reblogs being discarded after the reblogged status () 2022-11-04 16:31:44 +01:00
Eugen Rochko
15bae3e0e4
Change post-processing to be deferred only for large media types () 2022-11-01 15:27:58 +01:00
Eugen Rochko
26478f461c
Remove language filtering from hashtag timelines () 2022-10-30 21:29:23 +01:00
Eugen Rochko
276b85bc91
Fix admin APIs returning deleted object instead of empty object upon delete ()
Fix 
2022-10-30 02:43:57 +02:00
Eugen Rochko
5724da0780
Fix language not being saved when editing status ()
Fix 
2022-10-30 02:43:27 +02:00
Eugen Rochko
3e18e05330
Fix uncaught error when invalid date is supplied to API ()
Fix 
2022-10-27 14:30:52 +02:00
Eugen Rochko
1ae508bf2f
Change unauthenticated search to not support pagination in REST API ()
- Only exact search matches for queries with < 5 characters
- Do not support queries with `offset` (pagination)
- Return HTTP 401 on truthy `resolve` instead of overriding to false
2022-10-26 12:10:02 +02:00
Takeshi Umeda
74ead7d106
Change featured tag updates to add/remove activity ()
* Change featured tag updates to add/remove activity

* Fix to check for the existence of feature tag

* Rename service and worker

* Merge AddHashtagSerializer with AddSerializer

* Undo removal of sidekiq_options
2022-10-22 18:30:55 +02:00
Takeshi Umeda
b0e3f0312c
Add synchronization of remote featured tags ()
* Add LIMIT of featured tag to instance API response

* Add featured_tags_collection_url to Account

* Add synchronization of remote featured tags

* Deliver update activity when updating featured tag

* Remove featured_tags_collection_url

* Revert "Add featured_tags_collection_url to Account"

This reverts commit cff349fc27b104ded2df6bb5665132dc24dab09c.

* Add hashtag sync from featured collections

* Fix tag name normalize

* Add target option to fetch featured collection

* Refactor fetch_featured_tags_collection_service

* Add LIMIT of featured tag to v1/instance API response
2022-10-20 09:15:52 +02:00
Eugen Rochko
1bd00036c2
Change about page to be mounted in the web UI () 2022-10-13 14:42:37 +02:00
Eugen Rochko
45ebdb72ca
Add support for language preferences for trending statuses and links () 2022-10-08 16:45:40 +02:00
Eugen Rochko
a2ba011326
Change privacy policy to be rendered in web UI, add REST API ()
Source string no longer localized, Markdown instead of raw HTML
2022-10-08 06:01:11 +02:00
Eugen Rochko
9f65909f42
Change public timelines to be filtered by current locale by default ()
In the absence of an opt-in to multiple specific languages in the
preferences, it makes more sense to filter by the user's presumed
language only (interface language or `lang` override)
2022-10-05 03:48:06 +02:00
Eugen Rochko
d2528b26b6
Add server banner to web app, add GET /api/v2/instance to REST API () 2022-10-05 03:47:56 +02:00
Claire
cedcece0cc
Fix deleted pinned posts potentially counting towards the pinned posts limit ()
Fixes 
2022-10-05 00:16:40 +02:00
Eugen Rochko
0d6b878808
Add user content translations with configurable backends () 2022-09-23 23:00:12 +02:00