diff options
Diffstat (limited to 'apps/provisioning_api')
7 files changed, 49 insertions, 0 deletions
diff --git a/apps/provisioning_api/lib/Controller/AUserDataOCSController.php b/apps/provisioning_api/lib/Controller/AUserDataOCSController.php index 8c0763f4378..d321adf7c8f 100644 --- a/apps/provisioning_api/lib/Controller/AUserDataOCSController.php +++ b/apps/provisioning_api/lib/Controller/AUserDataOCSController.php @@ -164,6 +164,7 @@ abstract class AUserDataOCSController extends OCSController { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, diff --git a/apps/provisioning_api/lib/Controller/UsersController.php b/apps/provisioning_api/lib/Controller/UsersController.php index 1d1d0e8d2f9..513a27c7df8 100644 --- a/apps/provisioning_api/lib/Controller/UsersController.php +++ b/apps/provisioning_api/lib/Controller/UsersController.php @@ -788,6 +788,7 @@ class UsersController extends AUserDataOCSController { $permittedFields[] = IAccountManager::PROPERTY_ADDRESS; $permittedFields[] = IAccountManager::PROPERTY_WEBSITE; $permittedFields[] = IAccountManager::PROPERTY_TWITTER; + $permittedFields[] = IAccountManager::PROPERTY_BLUESKY; $permittedFields[] = IAccountManager::PROPERTY_FEDIVERSE; $permittedFields[] = IAccountManager::PROPERTY_ORGANISATION; $permittedFields[] = IAccountManager::PROPERTY_ROLE; @@ -974,6 +975,7 @@ class UsersController extends AUserDataOCSController { $permittedFields[] = IAccountManager::PROPERTY_ADDRESS; $permittedFields[] = IAccountManager::PROPERTY_WEBSITE; $permittedFields[] = IAccountManager::PROPERTY_TWITTER; + $permittedFields[] = IAccountManager::PROPERTY_BLUESKY; $permittedFields[] = IAccountManager::PROPERTY_FEDIVERSE; $permittedFields[] = IAccountManager::PROPERTY_ORGANISATION; $permittedFields[] = IAccountManager::PROPERTY_ROLE; @@ -987,6 +989,7 @@ class UsersController extends AUserDataOCSController { $permittedFields[] = IAccountManager::PROPERTY_ADDRESS . self::SCOPE_SUFFIX; $permittedFields[] = IAccountManager::PROPERTY_WEBSITE . self::SCOPE_SUFFIX; $permittedFields[] = IAccountManager::PROPERTY_TWITTER . self::SCOPE_SUFFIX; + $permittedFields[] = IAccountManager::PROPERTY_BLUESKY . self::SCOPE_SUFFIX; $permittedFields[] = IAccountManager::PROPERTY_FEDIVERSE . self::SCOPE_SUFFIX; $permittedFields[] = IAccountManager::PROPERTY_ORGANISATION . self::SCOPE_SUFFIX; $permittedFields[] = IAccountManager::PROPERTY_ROLE . self::SCOPE_SUFFIX; @@ -1030,6 +1033,7 @@ class UsersController extends AUserDataOCSController { $permittedFields[] = IAccountManager::PROPERTY_ADDRESS; $permittedFields[] = IAccountManager::PROPERTY_WEBSITE; $permittedFields[] = IAccountManager::PROPERTY_TWITTER; + $permittedFields[] = IAccountManager::PROPERTY_BLUESKY; $permittedFields[] = IAccountManager::PROPERTY_FEDIVERSE; $permittedFields[] = IAccountManager::PROPERTY_ORGANISATION; $permittedFields[] = IAccountManager::PROPERTY_ROLE; @@ -1177,6 +1181,7 @@ class UsersController extends AUserDataOCSController { case IAccountManager::PROPERTY_ADDRESS: case IAccountManager::PROPERTY_WEBSITE: case IAccountManager::PROPERTY_TWITTER: + case IAccountManager::PROPERTY_BLUESKY: case IAccountManager::PROPERTY_FEDIVERSE: case IAccountManager::PROPERTY_ORGANISATION: case IAccountManager::PROPERTY_ROLE: @@ -1224,6 +1229,7 @@ class UsersController extends AUserDataOCSController { case IAccountManager::PROPERTY_ADDRESS . self::SCOPE_SUFFIX: case IAccountManager::PROPERTY_WEBSITE . self::SCOPE_SUFFIX: case IAccountManager::PROPERTY_TWITTER . self::SCOPE_SUFFIX: + case IAccountManager::PROPERTY_BLUESKY . self::SCOPE_SUFFIX: case IAccountManager::PROPERTY_FEDIVERSE . self::SCOPE_SUFFIX: case IAccountManager::PROPERTY_ORGANISATION . self::SCOPE_SUFFIX: case IAccountManager::PROPERTY_ROLE . self::SCOPE_SUFFIX: diff --git a/apps/provisioning_api/lib/ResponseDefinitions.php b/apps/provisioning_api/lib/ResponseDefinitions.php index d41a78746b5..62ae4ca577b 100644 --- a/apps/provisioning_api/lib/ResponseDefinitions.php +++ b/apps/provisioning_api/lib/ResponseDefinitions.php @@ -67,6 +67,8 @@ namespace OCA\Provisioning_API; * subadmin: list<string>, * twitter: string, * twitterScope?: Provisioning_APIUserDetailsScope, + * bluesky: string, + * blueskyScope?: Provisioning_APIUserDetailsScope, * website: string, * websiteScope?: Provisioning_APIUserDetailsScope, * } diff --git a/apps/provisioning_api/openapi-administration.json b/apps/provisioning_api/openapi-administration.json index 84b1a12d2dd..08bba7a05a1 100644 --- a/apps/provisioning_api/openapi-administration.json +++ b/apps/provisioning_api/openapi-administration.json @@ -106,6 +106,7 @@ "role", "subadmin", "twitter", + "bluesky", "website" ], "properties": { @@ -267,6 +268,12 @@ "twitterScope": { "$ref": "#/components/schemas/UserDetailsScope" }, + "bluesky": { + "type": "string" + }, + "blueskyScope": { + "$ref": "#/components/schemas/UserDetailsScope" + }, "website": { "type": "string" }, diff --git a/apps/provisioning_api/openapi-full.json b/apps/provisioning_api/openapi-full.json index cde7eeaa557..3684e7cbc41 100644 --- a/apps/provisioning_api/openapi-full.json +++ b/apps/provisioning_api/openapi-full.json @@ -153,6 +153,7 @@ "role", "subadmin", "twitter", + "bluesky", "website" ], "properties": { @@ -314,6 +315,12 @@ "twitterScope": { "$ref": "#/components/schemas/UserDetailsScope" }, + "bluesky": { + "type": "string" + }, + "blueskyScope": { + "$ref": "#/components/schemas/UserDetailsScope" + }, "website": { "type": "string" }, diff --git a/apps/provisioning_api/openapi.json b/apps/provisioning_api/openapi.json index 29272f34956..cec2f7f86f1 100644 --- a/apps/provisioning_api/openapi.json +++ b/apps/provisioning_api/openapi.json @@ -153,6 +153,7 @@ "role", "subadmin", "twitter", + "bluesky", "website" ], "properties": { @@ -314,6 +315,12 @@ "twitterScope": { "$ref": "#/components/schemas/UserDetailsScope" }, + "bluesky": { + "type": "string" + }, + "blueskyScope": { + "$ref": "#/components/schemas/UserDetailsScope" + }, "website": { "type": "string" }, diff --git a/apps/provisioning_api/tests/Controller/UsersControllerTest.php b/apps/provisioning_api/tests/Controller/UsersControllerTest.php index e838cd16633..0c0a0ae3d74 100644 --- a/apps/provisioning_api/tests/Controller/UsersControllerTest.php +++ b/apps/provisioning_api/tests/Controller/UsersControllerTest.php @@ -1143,6 +1143,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS => ['value' => 'address'], IAccountManager::PROPERTY_PHONE => ['value' => 'phone'], IAccountManager::PROPERTY_TWITTER => ['value' => 'twitter'], + IAccountManager::PROPERTY_BLUESKY => ['value' => 'bluesky'], IAccountManager::PROPERTY_FEDIVERSE => ['value' => 'fediverse'], IAccountManager::PROPERTY_WEBSITE => ['value' => 'website'], IAccountManager::PROPERTY_ORGANISATION => ['value' => 'organisation'], @@ -1219,6 +1220,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'groups' => ['group0', 'group1', 'group2'], 'language' => 'de', @@ -1332,6 +1334,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS => ['value' => 'address'], IAccountManager::PROPERTY_PHONE => ['value' => 'phone'], IAccountManager::PROPERTY_TWITTER => ['value' => 'twitter'], + IAccountManager::PROPERTY_BLUESKY => ['value' => 'bluesky'], IAccountManager::PROPERTY_FEDIVERSE => ['value' => 'fediverse'], IAccountManager::PROPERTY_WEBSITE => ['value' => 'website'], IAccountManager::PROPERTY_ORGANISATION => ['value' => 'organisation'], @@ -1364,6 +1367,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'groups' => [], 'language' => 'da', @@ -1516,6 +1520,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS => ['value' => 'address'], IAccountManager::PROPERTY_PHONE => ['value' => 'phone'], IAccountManager::PROPERTY_TWITTER => ['value' => 'twitter'], + IAccountManager::PROPERTY_BLUESKY => ['value' => 'bluesky'], IAccountManager::PROPERTY_FEDIVERSE => ['value' => 'fediverse'], IAccountManager::PROPERTY_WEBSITE => ['value' => 'website'], IAccountManager::PROPERTY_ORGANISATION => ['value' => 'organisation'], @@ -1547,6 +1552,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'groups' => [], 'language' => 'ru', @@ -1894,6 +1900,7 @@ class UsersControllerTest extends TestCase { public static function selfEditChangePropertyProvider(): array { return [ [IAccountManager::PROPERTY_TWITTER, '@oldtwitter', '@newtwitter'], + [IAccountManager::PROPERTY_BLUESKY, 'old.bluesky', 'new.bluesky'], [IAccountManager::PROPERTY_FEDIVERSE, '@oldFediverse@floss.social', '@newFediverse@floss.social'], [IAccountManager::PROPERTY_PHONE, '1234', '12345'], [IAccountManager::PROPERTY_ADDRESS, 'Something street 2', 'Another street 3'], @@ -1970,6 +1977,7 @@ class UsersControllerTest extends TestCase { [IAccountManager::PROPERTY_DISPLAYNAME, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], [IAccountManager::PROPERTY_EMAIL, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], [IAccountManager::PROPERTY_TWITTER, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], + [IAccountManager::PROPERTY_BLUESKY, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], [IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], [IAccountManager::PROPERTY_PHONE, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], [IAccountManager::PROPERTY_ADDRESS, IAccountManager::SCOPE_LOCAL, IAccountManager::SCOPE_FEDERATED], @@ -3856,6 +3864,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'organisation' => 'organisation', 'role' => 'role', @@ -3877,6 +3886,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'organisation' => 'organisation', 'role' => 'role', @@ -3944,6 +3954,7 @@ class UsersControllerTest extends TestCase { 'address' => 'address', 'website' => 'website', 'twitter' => 'twitter', + 'bluesky' => 'bluesky', 'fediverse' => 'fediverse', 'displayname' => 'Demo User', 'display-name' => 'Demo User', @@ -4286,6 +4297,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4301,6 +4313,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4317,6 +4330,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4331,6 +4345,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4346,6 +4361,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4360,6 +4376,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4375,6 +4392,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, @@ -4389,6 +4407,7 @@ class UsersControllerTest extends TestCase { IAccountManager::PROPERTY_ADDRESS, IAccountManager::PROPERTY_WEBSITE, IAccountManager::PROPERTY_TWITTER, + IAccountManager::PROPERTY_BLUESKY, IAccountManager::PROPERTY_FEDIVERSE, IAccountManager::PROPERTY_ORGANISATION, IAccountManager::PROPERTY_ROLE, |