Commit Graph

216 Commits

Author SHA1 Message Date
Eugen Rochko
f86ee4b59f
Fix IDN mentions not being processed, IDN domains not being rendered ()
This changes the REST API to return unicode domains in the `acct`
attribute instead of punycode, and to render unicode instead of
punycode on public HTML pages as well.

Fix , fix 
2019-12-30 19:20:43 +01:00
Takeshi Umeda
f43f1e0184 Add basic support for group actors ()
* Show badge on group actor in WebUI

* Do not notify in case of  by following group actor

* If you mention group actor, also mention group actor followers

* Relax characters that can be used in username (same as Application)

* Revert "Relax characters that can be used in username (same as Application)"

This reverts commit 7e10a137b878d0db1b5252c52106faef5e09ca4b.

* Delete display_name method
2019-12-04 20:36:33 +01:00
trwnh
4354936a39 Return discoverable via REST API (fix ) () 2019-12-03 19:56:34 +01:00
Eugen Rochko
07da35c17c
Fix n+1 query for bookmarks on statuses () 2019-11-28 04:08:00 +01:00
ThibG
dfea7368c9 Add bookmarks ()
* Add backend support for bookmarks

Bookmarks behave like favourites, except they aren't shared with other
users and do not have an associated counter.

* Add spec for bookmark endpoints

* Add front-end support for bookmarks

* Introduce OAuth scopes for bookmarks

* Add bookmarks to archive takeout

* Fix migration

* Coding style fixes

* Fix rebase issue

* Update bookmarked_statuses to latest UI changes

* Update bookmark actions to properly reflect status changes in state

* Add bookmarks item to single-column layout

* Make active bookmarks red
2019-11-13 23:02:10 +01:00
Faye Duxovni
48f75b86ae Add setting for whether to crop images in unexpanded toots () 2019-10-24 22:51:41 +02:00
Takeshi Umeda
a6269b2f83 Split AccountsHelper from StatusesHelper () 2019-10-24 22:50:09 +02:00
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