Commit graph

209 commits

Author SHA1 Message Date
Eugen Rochko
4e1afef6f9
Add openRegistrations attribute to nodeinfo endpoint () 2019-10-02 21:02:48 +02:00
ThibG
3babf8464b Add voters count support ()
* Add voters count to polls

* Add ActivityPub serialization and parsing of voters count

* Add support for voters count in WebUI

* Move incrementation of voters count out of redis lock

* Reword “voters” to “people”
2019-09-29 22:58:01 +02:00
Eugen Rochko
5f69eb89e2
Add a nodeinfo endpoint ()
* Add nodeinfo endpoint

* dont commit stuff from my local dev

* consistant naming since we implimented 2.1 schema

* Add some additional node info stuff

* Add nodeinfo endpoint

* dont commit stuff from my local dev

* consistant naming since we implimented 2.1 schema

* expanding this to include federation info

* codeclimate feedback

* CC feedback

* using activeserializers seems like a good idea...

* get rid of draft 2.1 version

* Reimplement 2.1, also fix metaData -> metadata

* Fix metaData -> metadata here too

* Fix nodeinfo 2.1 tests

* Implement cache for monthly user aggregate

* Useless

* Remove ostatus from the list of supported protocols

* Fix nodeinfo's open_registration reading obsolete setting variable

* Only serialize domain blocks with user-facing limitations

* Do not needlessly list noop severity in nodeinfo

* Only serialize domain blocks info in nodeinfo when they are set to be displayed to everyone

* Enable caching for nodeinfo endpoints

* Fix rendering nodeinfo

* CodeClimate fixes

* Please CodeClimate

* Change InstancePresenter#active_user_count_months for clarity

* Refactor NodeInfoSerializer#metadata

* Remove nodeinfo 2.1 support as the schema doesn't exist

* Clean-up
2019-09-29 21:31:51 +02:00
ThibG
18b451c0e6 Change silences to always require approval on follow ()
* Change silenced accounts to require approval on follow

* Also require approval for follows by people explicitly muted by target accounts

* Do not auto-accept silenced or muted accounts when switching from locked to unlocked

* Add `follow_requests_count` to verify_credentials

* Show “Follow requests” menu item if needed even if account is locked

* Add tests

* Correctly reflect that follow requests weren't auto-accepted when local account is silenced

* Accept follow requests from user-muted accounts to avoid leaking mutes
2019-09-27 21:13:51 +02:00
ThibG
b359974d9b Show user what options they have voted ()
* Add own_votes field to poll results in REST API

Fixes 

* Display user votes in WebUI

* Update styling

* Add vote checkmark to public pages
2019-09-22 14:15:18 +02:00
Eugen Rochko
3ed94dcc1a
Add account migration UI ()
Fix 

- Change data export to be available for non-functional accounts
- Change non-functional accounts to include redirecting accounts
2019-09-19 20:58:19 +02:00
tsia
5ded2de3a0 fix rss enclosure length () 2019-09-19 13:24:50 +02:00
Eugen Rochko
18331fefa2
Remove deprecated GET /api/v1/search API ()
Use `GET /api/v2/search` instead
2019-09-13 16:11:13 +02:00
Takeshi Umeda
9c9dcf580a Add featured tags API ()
* Add featured tags API

* Remove show and update, change scope, fix code style
2019-09-09 10:50:33 +02:00
Eugen Rochko
e445a8af64
Add timeline read markers API ()
Fix 
2019-09-06 13:55:51 +02:00
Yamagishi Kazutoshi
cf643d0060 Add method and enctype to manifest () 2019-09-05 15:51:51 +02:00
ThibG
692c5b439a Fix ActivityPub context not being dynamically computed ()
* Fix contexts not being dynamically included

Fixes 

* Refactor Note context in serializer

* Refactor Actor serializer
2019-09-03 22:52:32 +02:00
Eugen Rochko
cb447b28c4
Add profile directory to web UI ()
* Add profile directory to web UI

* Add a line of bio to the directory
2019-08-30 00:14:36 +02:00
Takeshi Umeda
9e1d28f48e Add an RSS feed tagged to a public profile page ()
* Add featured tag support to rss feed on public account page

* fix codeing style
2019-08-18 20:54:36 +02:00
ThibG
53071389ee Fix multiple issues with replies collection for pages further than self-replies ()
* Fix the replies collection returning snowflakes ids rather than URIs

Fixes 

* Fix min_id in replies queries once self-replies are exhausted

* Fix `next` attribute of replies collection being nil when there are no self-replies

* Rename other_accounts param to only_other_accounts
2019-08-16 22:58:51 +02:00
Eugen Rochko
e5cee8062f
Fix blurhash and autoplay not working on public pages () 2019-08-16 19:15:05 +02:00
Eugen Rochko
c09ecbc53e
Add indicator of unread content to window title when web UI is out of focus ()
Fix 
2019-08-13 12:22:16 +02:00
Eugen Rochko
9072fe5ab6
Add trends UI with admin and user settings () 2019-08-06 17:57:52 +02:00
Eugen Rochko
8b9d0a0533
Remove XML version of Webfinger and remove links to Atom feeds ()
Fix 
2019-08-01 19:14:02 +02:00
Eugen Rochko
b9b0313c78
Revert "Remove conversation URI ()" ()
This reverts commit 75f7f9930e.
2019-07-28 17:47:37 +02:00
Eugen Rochko
75f7f9930e
Remove conversation URI ()
It is not part of ActivityPub and will free up a lot of space
2019-07-28 17:30:12 +02:00
Eugen Rochko
043d52f785
Fix alerts booleans not being typecast correctly in push subscription ()
* Fix `alerts` booleans not being typecast correctly in push subscription

Fix 

* Fix typo
2019-07-21 18:10:07 +02:00
ThibG
730c4053d6 Add ActivityPub actor representing the entire server ()
* Add support for an instance actor

* Skip username validation for local Application accounts

* Add migration script to create instance actor

* Make Codeclimate happy

* Switch to id -99 for instance actor

* Remove unused `icon` and `image` attributes from instance actor

* Use if/elsif/else instead of return + ternary operator

* Add instance actor to fresh installs

* Use instance actor as instance representative

Use instance actor for forwarding reports, relay operations, and spam
auto-reporting.

* Seed database in test environment

* Fix single-user mode

* Fix tests

* Fix specs to accomodate for an extra `Account`

* Auto-reject follows on instance actor

Following an instance actor might make sense, but we are not handling that
right now, so auto-reject.

* Fix webfinger lookup and serialization for instance actor

* Rename instance actor

* Make it clear in the HTML view that the instance actor should not be blocked

* Raise cache time for instance actor as there's no dynamic content

* Re-use /about/more with a flash message for instance actor profile
2019-07-19 01:44:42 +02:00
Eugen Rochko
9b1d3e4acb
Add option to disable real-time updates in web UI ()
Fix 
Fix 
2019-07-16 06:30:47 +02:00
ThibG
d04c584159 Drop magic-public-key from webfinger replies as it's only used for OStatus () 2019-07-10 17:10:43 +02:00
Eugen Rochko
6172263a63
Fix activity being rendered within activity due to caching ()
Fix 
2019-07-10 00:43:30 +02:00
Eugen Rochko
63c7fe8e48
Refactor controllers for statuses, accounts, and more () 2019-07-08 12:03:45 +02:00
Eugen Rochko
b851456139
Remove Atom feeds and old URLs in the form of GET /:username/updates/:id () 2019-07-07 16:16:51 +02:00
Eugen Rochko
23aeef52cc
Remove Salmon and PubSubHubbub ()
* Remove Salmon and PubSubHubbub endpoints

* Add error when trying to follow OStatus accounts

* Fix new accounts not being created in ResolveAccountService
2019-07-06 23:26:16 +02:00
Eugen Rochko
e64e6a03dd
Add categories for custom emojis ()
Fix 
2019-06-28 15:54:10 +02:00
ThibG
9a90ec3b3b Fix account URI in UpdatePollSerializer ()
* Fix account URI in UpdatePollSerializer

Fixes 

* Add specs
2019-06-27 19:41:55 +02:00
ThibG
3086c645fd Add option to disable blurhash previews ()
* Add option to disable blurhash previews

* Update option text

* Change options order
2019-06-26 19:33:04 +02:00
Eugen Rochko
d61d164685
Add short_description and approval_required to GET /api/v1/instance () 2019-06-22 12:08:16 +02:00
Eugen Rochko
aa9b37822b
Fix audio not being downloaded from remote servers () 2019-06-22 02:50:36 +02:00
Eugen Rochko
7696f77245
Add moderation API ()
Fix 
Fix 
2019-06-20 02:52:34 +02:00
Eugen Rochko
f7f23b4a19
Add audio uploads ()
* Add audio uploads

Fix 

Accept uploads of OGG, WAV, FLAC, OPUS and MP3 files, and converts
them to OGG. Media attachments get a new `audio` type. In the UI,
audio uploads are displayed identically to video uploads.

* Improve code style
2019-06-19 23:42:38 +02:00
Eugen Rochko
1e5532e693
Add responsive panels to the single-column layout ()
* Add responsive panels to the single-column layout

* Fixes

* Fix not being able to save the preference

* Fix code style issues

* Set max-height on the compose textarea and add a link to relationship manager
2019-05-25 21:27:00 +02:00
ThibG
6d44f2441b Add toot source to delete result to ease Delete & Redraft ()
* Return Status with raw text in raw_content when deleting a status

* Use raw content if available on delete & redraft

* Rename raw_content to text; do not serialize formatted content when source is requested
2019-05-11 06:46:43 +02:00
Eugen Rochko
fba96c808d
Add blurhash ()
* Add blurhash

* Use fallback color for spoiler when blurhash missing

* Federate the blurhash and accept it as long as it's at most 5x5

* Display unknown media attachments as blurhash placeholders

* Improve style of embed actions and spoiler button

* Change blurhash resolution from 3x3 to 4x4

* Improve dependency definitions

* Fix code style issues
2019-04-27 03:24:09 +02:00
Sho Kusano
3e6c7f3617 Configrationable repository url ()
* config: Add GITHUB_REPOSITORY for repository name

* config: Add SOURCE_BASE_URL for repository url

* Show source_url and repository name on getting started
2019-04-21 04:41:34 +02:00
Eugen Rochko
67b3b62b98
Improve blocked view of profiles ()
* Revert "Fix filtering of favourited_by, reblogged_by, followers and following ()"

This reverts commit 120544067f.

* Revert "Hide blocking accounts from blocked users ()"

This reverts commit 62bafa20a1.

* Improve blocked view of profiles

- Change "You are blocked" to "Profile unavailable"
- Hide following/followers in API when blocked
- Disable follow button and show "Profile unavailable" on public profile as well
2019-04-07 04:59:13 +02:00
ThibG
62bafa20a1 Hide blocking accounts from blocked users ()
* Revert "Add indication that you have been blocked in web UI ()"

This reverts commit bd02ec6daa.

* Revert "Add `blocked_by` relationship to the REST API ()"

This reverts commit 9745de883b.

* Hide blocking accounts from search results

* Filter blocking accouts from account followers

* Filter blocking accouts from account's following accounts

* Filter blocking accounts from “reblogged by” and “favourited by” lists

* Remove blocking account from URL search

* Return 410 on trying to fetch user data from a user who blocked us

* Return 410 in /api/v1/account/statuses for suspended or blocking accounts

* Fix status filtering when performing URL search

* Restore some React improvements

Restore some cleanup from bd02ec6daa

* Refactor by adding `without_blocking` scope
2019-04-01 20:06:13 +02:00
Eugen Rochko
1714ea5978
Add ActivityPub representation for identity proofs ()
* Add ActivityPub representation for identity proofs

* Add tests
2019-03-30 02:12:06 +01:00
Alex Gessner
69141dca26 squashed identity proof updates () 2019-03-28 18:01:09 +01:00
Eugen Rochko
f1bc90ab50
Rename :poll to :preloadable_poll and :owned_poll to :poll on Status ()
Also, fix some n+1 queries

Resolve 
2019-03-28 04:44:59 +01:00
Eugen Rochko
11fe293e1b
Remove unused ActivityPub @context values depending on response ()
Fix 
2019-03-27 15:55:23 +01:00
Eugen Rochko
9745de883b
Add blocked_by relationship to the REST API () 2019-03-26 01:24:09 +01:00
rinsuki
d8b6431aa7 Add allowfullscreen attribute to oembed iframe ()
for video player full screen button.
2019-03-25 15:01:09 +01:00
Eugen Rochko
3411fbef19
Improve config serializer for Keybase ()
- Regex must no longer be surrounded by `/`
- Description must be short and cannot contain HTML tags
2019-03-21 23:33:28 +01:00
ThibG
80f0910e21 Add support for custom emojis in poll options ()
* Backend changes for custom emoji support in poll options

* Serialize poll emojis in REST API

* Render custom emojis in poll options

* Render custom emoji in poll options on public pages
2019-03-20 17:29:12 +01:00