Merge pull request #11292 from annando/api-visibility
API: We can now post to groups via the Mastodon endpoint
This commit is contained in:
commit
aa28761d38
|
@ -74,7 +74,7 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
|
||||||
|
|
||||||
|
|
||||||
- [`GET /api/v1/instance`](https://docs.joinmastodon.org/methods/instance#fetch-instance)
|
- [`GET /api/v1/instance`](https://docs.joinmastodon.org/methods/instance#fetch-instance)
|
||||||
- GET /api/v1/instance/rules Undocumented, returns Terms of Service
|
- `GET /api/v1/instance/rules` Undocumented, returns Terms of Service
|
||||||
- [`GET /api/v1/instance/peers`](https://docs.joinmastodon.org/methods/instance#list-of-connected-domains)
|
- [`GET /api/v1/instance/peers`](https://docs.joinmastodon.org/methods/instance#list-of-connected-domains)
|
||||||
- [`GET /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
|
- [`GET /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
|
||||||
- [`POST /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
|
- [`POST /api/v1/lists`](https://docs.joinmastodon.org/methods/timelines/lists/)
|
||||||
|
@ -102,6 +102,7 @@ These endpoints use the [Mastodon API entities](https://docs.joinmastodon.org/en
|
||||||
- [`GET /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
- [`GET /api/v1/scheduled_statuses/:id`](https://docs.joinmastodon.org/methods/statuses/scheduled_statuses/)
|
||||||
- [`GET /api/v1/search`](https://docs.joinmastodon.org/methods/search/)
|
- [`GET /api/v1/search`](https://docs.joinmastodon.org/methods/search/)
|
||||||
- [`POST /api/v1/statuses`](https://docs.joinmastodon.org/methods/statuses/)
|
- [`POST /api/v1/statuses`](https://docs.joinmastodon.org/methods/statuses/)
|
||||||
|
- Additionally to the static values `public`, `unlisted` and `private`, the `visibility` parameter can contain a numeric value with a group id.
|
||||||
- [`GET /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/)
|
- [`GET /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/)
|
||||||
- [`DELETE /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/)
|
- [`DELETE /api/v1/statuses/:id`](https://docs.joinmastodon.org/methods/statuses/)
|
||||||
- [`GET /api/v1/statuses/:id/card`](https://docs.joinmastodon.org/methods/statuses/)
|
- [`GET /api/v1/statuses/:id/card`](https://docs.joinmastodon.org/methods/statuses/)
|
||||||
|
@ -150,7 +151,7 @@ They refer to features that don't exist in Friendica yet.
|
||||||
These endpoints won't be implemented at the moment.
|
These endpoints won't be implemented at the moment.
|
||||||
They refer to features or data that don't exist in Friendica yet.
|
They refer to features or data that don't exist in Friendica yet.
|
||||||
|
|
||||||
- POST /api/meta Misskey API endpoint.
|
- `POST /api/meta` Misskey API endpoint.
|
||||||
- [`POST /api/v1/accounts`](https://docs.joinmastodon.org/methods/accounts/)
|
- [`POST /api/v1/accounts`](https://docs.joinmastodon.org/methods/accounts/)
|
||||||
- [`GET /api/v1/accounts/:id/featured_tags`](https://docs.joinmastodon.org/methods/accounts/)
|
- [`GET /api/v1/accounts/:id/featured_tags`](https://docs.joinmastodon.org/methods/accounts/)
|
||||||
- [`POST /api/v1/accounts/:id/pin`](https://docs.joinmastodon.org/methods/accounts/)
|
- [`POST /api/v1/accounts/:id/pin`](https://docs.joinmastodon.org/methods/accounts/)
|
||||||
|
|
|
@ -114,10 +114,17 @@ class Statuses extends BaseApi
|
||||||
DI::mstdnError()->InternalError('Direct messages are currently unsupported');
|
DI::mstdnError()->InternalError('Direct messages are currently unsupported');
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$item['allow_cid'] = $owner['allow_cid'];
|
if (is_numeric($request['visibility']) && Group::exists($request['visibility'], $uid)) {
|
||||||
$item['allow_gid'] = $owner['allow_gid'];
|
$item['allow_cid'] = '';
|
||||||
$item['deny_cid'] = $owner['deny_cid'];
|
$item['allow_gid'] = '<' . $request['visibility'] . '>';
|
||||||
$item['deny_gid'] = $owner['deny_gid'];
|
$item['deny_cid'] = '';
|
||||||
|
$item['deny_gid'] = '';
|
||||||
|
} else {
|
||||||
|
$item['allow_cid'] = $owner['allow_cid'];
|
||||||
|
$item['allow_gid'] = $owner['allow_gid'];
|
||||||
|
$item['deny_cid'] = $owner['deny_cid'];
|
||||||
|
$item['deny_gid'] = $owner['deny_gid'];
|
||||||
|
}
|
||||||
|
|
||||||
if (!empty($item['allow_cid'] . $item['allow_gid'] . $item['deny_cid'] . $item['deny_gid'])) {
|
if (!empty($item['allow_cid'] . $item['allow_gid'] . $item['deny_cid'] . $item['deny_gid'])) {
|
||||||
$item['private'] = Item::PRIVATE;
|
$item['private'] = Item::PRIVATE;
|
||||||
|
|
Loading…
Reference in a new issue