From 0440ad7c09be772d04a3e95cf5f7b6d65150457a Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Tue, 4 May 2021 12:09:35 +0200 Subject: [PATCH] web/admin: add missing plex source view Signed-off-by: Jens Langhammer --- web/src/locales/en.po | 91 ++++++++++---- web/src/locales/pseudo-LOCALE.po | 91 ++++++++++---- web/src/pages/sources/SourceViewPage.ts | 3 + .../pages/sources/plex/PlexSourceViewPage.ts | 119 ++++++++++++++++++ 4 files changed, 254 insertions(+), 50 deletions(-) create mode 100644 web/src/pages/sources/plex/PlexSourceViewPage.ts diff --git a/web/src/locales/en.po b/web/src/locales/en.po index 6e753cb64..08a118191 100644 --- a/web/src/locales/en.po +++ b/web/src/locales/en.po @@ -156,7 +156,7 @@ msgstr "Allow users to use Applications based on properties, enforce Password Cr msgid "Allowed count" msgstr "Allowed count" -#: src/pages/sources/plex/PlexSourceForm.ts:119 +#: src/pages/sources/plex/PlexSourceForm.ts:141 msgid "Allowed servers" msgstr "Allowed servers" @@ -289,8 +289,8 @@ msgstr "Authenticating with Plex..." msgid "Authentication" msgstr "Authentication" -#: src/pages/sources/oauth/OAuthSourceForm.ts:189 -#: src/pages/sources/plex/PlexSourceForm.ts:149 +#: src/pages/sources/oauth/OAuthSourceForm.ts:211 +#: src/pages/sources/plex/PlexSourceForm.ts:171 #: src/pages/sources/saml/SAMLSourceForm.ts:245 msgid "Authentication flow" msgstr "Authentication flow" @@ -489,6 +489,7 @@ msgstr "Change your password" #: src/pages/providers/saml/SAMLProviderViewPage.ts:129 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:113 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:133 +#: src/pages/sources/plex/PlexSourceViewPage.ts:92 #: src/pages/sources/saml/SAMLSourceViewPage.ts:119 #: src/pages/users/UserViewPage.ts:185 msgid "Changelog" @@ -553,7 +554,7 @@ msgstr "Click to copy token" #: src/pages/providers/oauth2/OAuth2ProviderForm.ts:107 #: src/pages/providers/oauth2/OAuth2ProviderViewPage.ts:99 -#: src/pages/sources/plex/PlexSourceForm.ts:113 +#: src/pages/sources/plex/PlexSourceForm.ts:135 msgid "Client ID" msgstr "Client ID" @@ -678,11 +679,11 @@ msgstr "Consider Objects matching this filter to be Groups." msgid "Consider Objects matching this filter to be Users." msgstr "Consider Objects matching this filter to be Users." -#: src/pages/sources/oauth/OAuthSourceForm.ts:126 +#: src/pages/sources/oauth/OAuthSourceForm.ts:148 msgid "Consumer key" msgstr "Consumer key" -#: src/pages/sources/oauth/OAuthSourceForm.ts:132 +#: src/pages/sources/oauth/OAuthSourceForm.ts:154 msgid "Consumer secret" msgstr "Consumer secret" @@ -1062,6 +1063,7 @@ msgstr "Each provider has a different issuer, based on the application slug." #: src/pages/sources/SourcesListPage.ts:83 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:105 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:125 +#: src/pages/sources/plex/PlexSourceViewPage.ts:84 #: src/pages/sources/saml/SAMLSourceViewPage.ts:111 #: src/pages/stages/StageListPage.ts:98 #: src/pages/stages/prompt/PromptListPage.ts:75 @@ -1155,8 +1157,8 @@ msgstr "Enabled" msgid "Enrollment" msgstr "Enrollment" -#: src/pages/sources/oauth/OAuthSourceForm.ts:210 -#: src/pages/sources/plex/PlexSourceForm.ts:170 +#: src/pages/sources/oauth/OAuthSourceForm.ts:232 +#: src/pages/sources/plex/PlexSourceForm.ts:192 #: src/pages/sources/saml/SAMLSourceForm.ts:266 #: src/pages/stages/identification/IdentificationStageForm.ts:106 msgid "Enrollment flow" @@ -1368,20 +1370,20 @@ msgstr "Flow" msgid "Flow Overview" msgstr "Flow Overview" -#: src/pages/sources/oauth/OAuthSourceForm.ts:185 -#: src/pages/sources/plex/PlexSourceForm.ts:145 +#: src/pages/sources/oauth/OAuthSourceForm.ts:207 +#: src/pages/sources/plex/PlexSourceForm.ts:167 #: src/pages/sources/saml/SAMLSourceForm.ts:220 msgid "Flow settings" msgstr "Flow settings" -#: src/pages/sources/oauth/OAuthSourceForm.ts:207 -#: src/pages/sources/plex/PlexSourceForm.ts:167 +#: src/pages/sources/oauth/OAuthSourceForm.ts:229 +#: src/pages/sources/plex/PlexSourceForm.ts:189 #: src/pages/sources/saml/SAMLSourceForm.ts:263 msgid "Flow to use when authenticating existing users." msgstr "Flow to use when authenticating existing users." -#: src/pages/sources/oauth/OAuthSourceForm.ts:228 -#: src/pages/sources/plex/PlexSourceForm.ts:188 +#: src/pages/sources/oauth/OAuthSourceForm.ts:250 +#: src/pages/sources/plex/PlexSourceForm.ts:210 #: src/pages/sources/saml/SAMLSourceForm.ts:284 msgid "Flow to use when enrolling new users." msgstr "Flow to use when enrolling new users." @@ -1525,7 +1527,7 @@ msgstr "Hide managed mappings" #: src/pages/providers/saml/SAMLProviderForm.ts:177 #: src/pages/sources/ldap/LDAPSourceForm.ts:167 #: src/pages/sources/ldap/LDAPSourceForm.ts:193 -#: src/pages/sources/plex/PlexSourceForm.ts:132 +#: src/pages/sources/plex/PlexSourceForm.ts:154 #: src/pages/stages/authenticator_validate/AuthenticatorValidateStageForm.ts:114 #: src/pages/stages/identification/IdentificationStageForm.ts:85 #: src/pages/stages/password/PasswordStageForm.ts:86 @@ -1708,7 +1710,22 @@ msgstr "Let the user identify themselves with their username or Email address." msgid "Library" msgstr "Library" -#: src/pages/sources/plex/PlexSourceForm.ts:137 +#: src/pages/sources/oauth/OAuthSourceForm.ts:128 +#: src/pages/sources/plex/PlexSourceForm.ts:115 +msgid "Link to a user with identical email address. Can have security implications when a source doesn't validate email addresses" +msgstr "Link to a user with identical email address. Can have security implications when a source doesn't validate email addresses" + +#: src/pages/sources/oauth/OAuthSourceForm.ts:134 +#: src/pages/sources/plex/PlexSourceForm.ts:121 +msgid "Link to a user with identical username address. Can have security implications when a username is used with another source." +msgstr "Link to a user with identical username address. Can have security implications when a username is used with another source." + +#: src/pages/sources/oauth/OAuthSourceForm.ts:125 +#: src/pages/sources/plex/PlexSourceForm.ts:112 +msgid "Link users on unique identifier" +msgstr "Link users on unique identifier" + +#: src/pages/sources/plex/PlexSourceForm.ts:159 msgid "Load servers" msgstr "Load servers" @@ -1767,11 +1784,11 @@ msgstr "Loading" #: src/pages/providers/saml/SAMLProviderImportForm.ts:55 #: src/pages/sources/ldap/LDAPSourceForm.ts:164 #: src/pages/sources/ldap/LDAPSourceForm.ts:190 -#: src/pages/sources/oauth/OAuthSourceForm.ts:177 -#: src/pages/sources/oauth/OAuthSourceForm.ts:205 -#: src/pages/sources/oauth/OAuthSourceForm.ts:226 -#: src/pages/sources/plex/PlexSourceForm.ts:165 -#: src/pages/sources/plex/PlexSourceForm.ts:186 +#: src/pages/sources/oauth/OAuthSourceForm.ts:199 +#: src/pages/sources/oauth/OAuthSourceForm.ts:227 +#: src/pages/sources/oauth/OAuthSourceForm.ts:248 +#: src/pages/sources/plex/PlexSourceForm.ts:187 +#: src/pages/sources/plex/PlexSourceForm.ts:208 #: src/pages/sources/saml/SAMLSourceForm.ts:126 #: src/pages/sources/saml/SAMLSourceForm.ts:240 #: src/pages/sources/saml/SAMLSourceForm.ts:261 @@ -1941,6 +1958,7 @@ msgstr "Monitor" #: src/pages/sources/oauth/OAuthSourceForm.ts:100 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:64 #: src/pages/sources/plex/PlexSourceForm.ts:87 +#: src/pages/sources/plex/PlexSourceViewPage.ts:63 #: src/pages/sources/saml/SAMLSourceForm.ts:54 #: src/pages/sources/saml/SAMLSourceViewPage.ts:66 #: src/pages/stages/StageListPage.ts:65 @@ -2250,6 +2268,7 @@ msgstr "Outposts are deployments of authentik components to support different en #: src/pages/providers/saml/SAMLProviderViewPage.ts:58 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:56 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:56 +#: src/pages/sources/plex/PlexSourceViewPage.ts:55 #: src/pages/sources/saml/SAMLSourceViewPage.ts:58 #: src/pages/users/UserViewPage.ts:74 msgid "Overview" @@ -2330,6 +2349,7 @@ msgid "Policy / User / Group" msgstr "Policy / User / Group" #: src/pages/sources/oauth/OAuthSourceViewPage.ts:144 +#: src/pages/sources/plex/PlexSourceViewPage.ts:103 #: src/pages/sources/saml/SAMLSourceViewPage.ts:150 msgid "Policy Bindings" msgstr "Policy Bindings" @@ -2434,8 +2454,8 @@ msgstr "Property mappings used to user creation." #: src/pages/providers/oauth2/OAuth2ProviderForm.ts:81 #: src/pages/providers/proxy/ProxyProviderForm.ts:123 #: src/pages/providers/saml/SAMLProviderForm.ts:78 -#: src/pages/sources/oauth/OAuthSourceForm.ts:122 -#: src/pages/sources/plex/PlexSourceForm.ts:109 +#: src/pages/sources/oauth/OAuthSourceForm.ts:144 +#: src/pages/sources/plex/PlexSourceForm.ts:131 #: src/pages/sources/saml/SAMLSourceForm.ts:76 msgid "Protocol settings" msgstr "Protocol settings" @@ -2457,7 +2477,7 @@ msgstr "Provider" msgid "Provider Type" msgstr "Provider Type" -#: src/pages/sources/oauth/OAuthSourceForm.ts:138 +#: src/pages/sources/oauth/OAuthSourceForm.ts:160 msgid "Provider type" msgstr "Provider type" @@ -2746,7 +2766,7 @@ msgstr "Select users to add" msgid "Select which scopes can be used by the client. The client stil has to specify the scope to access the data." msgstr "Select which scopes can be used by the client. The client stil has to specify the scope to access the data." -#: src/pages/sources/plex/PlexSourceForm.ts:131 +#: src/pages/sources/plex/PlexSourceForm.ts:153 msgid "Select which server a user has to be a member of to be allowed to authenticate." msgstr "Select which server a user has to be a member of to be allowed to authenticate." @@ -3398,6 +3418,7 @@ msgid "These bindings control which users can access this flow." msgstr "These bindings control which users can access this flow." #: src/pages/sources/oauth/OAuthSourceViewPage.ts:146 +#: src/pages/sources/plex/PlexSourceViewPage.ts:105 #: src/pages/sources/saml/SAMLSourceViewPage.ts:152 msgid "" "These bindings control which users can access this source.\n" @@ -3577,6 +3598,7 @@ msgstr "Up-to-date!" #: src/pages/sources/SourcesListPage.ts:70 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:95 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:115 +#: src/pages/sources/plex/PlexSourceViewPage.ts:74 #: src/pages/sources/saml/SAMLSourceViewPage.ts:101 #: src/pages/stages/StageListPage.ts:85 #: src/pages/stages/prompt/PromptListPage.ts:67 @@ -3637,6 +3659,10 @@ msgstr "Update OAuth2 Provider" msgid "Update Outpost" msgstr "Update Outpost" +#: src/pages/sources/plex/PlexSourceViewPage.ts:77 +msgid "Update Plex Source" +msgstr "Update Plex Source" + #: src/pages/stages/prompt/PromptListPage.ts:70 msgid "Update Prompt" msgstr "Update Prompt" @@ -3707,6 +3733,16 @@ msgstr "Use a security key to prove your identity." msgid "Use global settings" msgstr "Use global settings" +#: src/pages/sources/oauth/OAuthSourceForm.ts:131 +#: src/pages/sources/plex/PlexSourceForm.ts:118 +msgid "Use the user's email address, but deny enrollment when the email address already exists." +msgstr "Use the user's email address, but deny enrollment when the email address already exists." + +#: src/pages/sources/oauth/OAuthSourceForm.ts:137 +#: src/pages/sources/plex/PlexSourceForm.ts:124 +msgid "Use the user's username, but deny enrollment when the username already exists." +msgstr "Use the user's username, but deny enrollment when the username already exists." + #: src/elements/events/ObjectChangelog.ts:39 #: src/elements/events/UserEvents.ts:36 #: src/pages/events/EventInfo.ts:83 @@ -3747,6 +3783,11 @@ msgstr "User events" msgid "User fields" msgstr "User fields" +#: src/pages/sources/oauth/OAuthSourceForm.ts:120 +#: src/pages/sources/plex/PlexSourceForm.ts:107 +msgid "User matching mode" +msgstr "User matching mode" + #: src/pages/sources/ldap/LDAPSourceForm.ts:208 msgid "User object filter" msgstr "User object filter" diff --git a/web/src/locales/pseudo-LOCALE.po b/web/src/locales/pseudo-LOCALE.po index 9b2270490..40ddf6a92 100644 --- a/web/src/locales/pseudo-LOCALE.po +++ b/web/src/locales/pseudo-LOCALE.po @@ -156,7 +156,7 @@ msgstr "" msgid "Allowed count" msgstr "" -#: src/pages/sources/plex/PlexSourceForm.ts:119 +#: src/pages/sources/plex/PlexSourceForm.ts:141 msgid "Allowed servers" msgstr "" @@ -285,8 +285,8 @@ msgstr "" msgid "Authentication" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:189 -#: src/pages/sources/plex/PlexSourceForm.ts:149 +#: src/pages/sources/oauth/OAuthSourceForm.ts:211 +#: src/pages/sources/plex/PlexSourceForm.ts:171 #: src/pages/sources/saml/SAMLSourceForm.ts:245 msgid "Authentication flow" msgstr "" @@ -485,6 +485,7 @@ msgstr "" #: src/pages/providers/saml/SAMLProviderViewPage.ts:129 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:113 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:133 +#: src/pages/sources/plex/PlexSourceViewPage.ts:92 #: src/pages/sources/saml/SAMLSourceViewPage.ts:119 #: src/pages/users/UserViewPage.ts:185 msgid "Changelog" @@ -547,7 +548,7 @@ msgstr "" #: src/pages/providers/oauth2/OAuth2ProviderForm.ts:107 #: src/pages/providers/oauth2/OAuth2ProviderViewPage.ts:99 -#: src/pages/sources/plex/PlexSourceForm.ts:113 +#: src/pages/sources/plex/PlexSourceForm.ts:135 msgid "Client ID" msgstr "" @@ -672,11 +673,11 @@ msgstr "" msgid "Consider Objects matching this filter to be Users." msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:126 +#: src/pages/sources/oauth/OAuthSourceForm.ts:148 msgid "Consumer key" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:132 +#: src/pages/sources/oauth/OAuthSourceForm.ts:154 msgid "Consumer secret" msgstr "" @@ -1054,6 +1055,7 @@ msgstr "" #: src/pages/sources/SourcesListPage.ts:83 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:105 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:125 +#: src/pages/sources/plex/PlexSourceViewPage.ts:84 #: src/pages/sources/saml/SAMLSourceViewPage.ts:111 #: src/pages/stages/StageListPage.ts:98 #: src/pages/stages/prompt/PromptListPage.ts:75 @@ -1147,8 +1149,8 @@ msgstr "" msgid "Enrollment" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:210 -#: src/pages/sources/plex/PlexSourceForm.ts:170 +#: src/pages/sources/oauth/OAuthSourceForm.ts:232 +#: src/pages/sources/plex/PlexSourceForm.ts:192 #: src/pages/sources/saml/SAMLSourceForm.ts:266 #: src/pages/stages/identification/IdentificationStageForm.ts:106 msgid "Enrollment flow" @@ -1360,20 +1362,20 @@ msgstr "" msgid "Flow Overview" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:185 -#: src/pages/sources/plex/PlexSourceForm.ts:145 +#: src/pages/sources/oauth/OAuthSourceForm.ts:207 +#: src/pages/sources/plex/PlexSourceForm.ts:167 #: src/pages/sources/saml/SAMLSourceForm.ts:220 msgid "Flow settings" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:207 -#: src/pages/sources/plex/PlexSourceForm.ts:167 +#: src/pages/sources/oauth/OAuthSourceForm.ts:229 +#: src/pages/sources/plex/PlexSourceForm.ts:189 #: src/pages/sources/saml/SAMLSourceForm.ts:263 msgid "Flow to use when authenticating existing users." msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:228 -#: src/pages/sources/plex/PlexSourceForm.ts:188 +#: src/pages/sources/oauth/OAuthSourceForm.ts:250 +#: src/pages/sources/plex/PlexSourceForm.ts:210 #: src/pages/sources/saml/SAMLSourceForm.ts:284 msgid "Flow to use when enrolling new users." msgstr "" @@ -1517,7 +1519,7 @@ msgstr "" #: src/pages/providers/saml/SAMLProviderForm.ts:177 #: src/pages/sources/ldap/LDAPSourceForm.ts:167 #: src/pages/sources/ldap/LDAPSourceForm.ts:193 -#: src/pages/sources/plex/PlexSourceForm.ts:132 +#: src/pages/sources/plex/PlexSourceForm.ts:154 #: src/pages/stages/authenticator_validate/AuthenticatorValidateStageForm.ts:114 #: src/pages/stages/identification/IdentificationStageForm.ts:85 #: src/pages/stages/password/PasswordStageForm.ts:86 @@ -1700,7 +1702,22 @@ msgstr "" msgid "Library" msgstr "" -#: src/pages/sources/plex/PlexSourceForm.ts:137 +#: src/pages/sources/oauth/OAuthSourceForm.ts:128 +#: src/pages/sources/plex/PlexSourceForm.ts:115 +msgid "Link to a user with identical email address. Can have security implications when a source doesn't validate email addresses" +msgstr "" + +#: src/pages/sources/oauth/OAuthSourceForm.ts:134 +#: src/pages/sources/plex/PlexSourceForm.ts:121 +msgid "Link to a user with identical username address. Can have security implications when a username is used with another source." +msgstr "" + +#: src/pages/sources/oauth/OAuthSourceForm.ts:125 +#: src/pages/sources/plex/PlexSourceForm.ts:112 +msgid "Link users on unique identifier" +msgstr "" + +#: src/pages/sources/plex/PlexSourceForm.ts:159 msgid "Load servers" msgstr "" @@ -1759,11 +1776,11 @@ msgstr "" #: src/pages/providers/saml/SAMLProviderImportForm.ts:55 #: src/pages/sources/ldap/LDAPSourceForm.ts:164 #: src/pages/sources/ldap/LDAPSourceForm.ts:190 -#: src/pages/sources/oauth/OAuthSourceForm.ts:177 -#: src/pages/sources/oauth/OAuthSourceForm.ts:205 -#: src/pages/sources/oauth/OAuthSourceForm.ts:226 -#: src/pages/sources/plex/PlexSourceForm.ts:165 -#: src/pages/sources/plex/PlexSourceForm.ts:186 +#: src/pages/sources/oauth/OAuthSourceForm.ts:199 +#: src/pages/sources/oauth/OAuthSourceForm.ts:227 +#: src/pages/sources/oauth/OAuthSourceForm.ts:248 +#: src/pages/sources/plex/PlexSourceForm.ts:187 +#: src/pages/sources/plex/PlexSourceForm.ts:208 #: src/pages/sources/saml/SAMLSourceForm.ts:126 #: src/pages/sources/saml/SAMLSourceForm.ts:240 #: src/pages/sources/saml/SAMLSourceForm.ts:261 @@ -1933,6 +1950,7 @@ msgstr "" #: src/pages/sources/oauth/OAuthSourceForm.ts:100 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:64 #: src/pages/sources/plex/PlexSourceForm.ts:87 +#: src/pages/sources/plex/PlexSourceViewPage.ts:63 #: src/pages/sources/saml/SAMLSourceForm.ts:54 #: src/pages/sources/saml/SAMLSourceViewPage.ts:66 #: src/pages/stages/StageListPage.ts:65 @@ -2242,6 +2260,7 @@ msgstr "" #: src/pages/providers/saml/SAMLProviderViewPage.ts:58 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:56 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:56 +#: src/pages/sources/plex/PlexSourceViewPage.ts:55 #: src/pages/sources/saml/SAMLSourceViewPage.ts:58 #: src/pages/users/UserViewPage.ts:74 msgid "Overview" @@ -2322,6 +2341,7 @@ msgid "Policy / User / Group" msgstr "" #: src/pages/sources/oauth/OAuthSourceViewPage.ts:144 +#: src/pages/sources/plex/PlexSourceViewPage.ts:103 #: src/pages/sources/saml/SAMLSourceViewPage.ts:150 msgid "Policy Bindings" msgstr "" @@ -2426,8 +2446,8 @@ msgstr "" #: src/pages/providers/oauth2/OAuth2ProviderForm.ts:81 #: src/pages/providers/proxy/ProxyProviderForm.ts:123 #: src/pages/providers/saml/SAMLProviderForm.ts:78 -#: src/pages/sources/oauth/OAuthSourceForm.ts:122 -#: src/pages/sources/plex/PlexSourceForm.ts:109 +#: src/pages/sources/oauth/OAuthSourceForm.ts:144 +#: src/pages/sources/plex/PlexSourceForm.ts:131 #: src/pages/sources/saml/SAMLSourceForm.ts:76 msgid "Protocol settings" msgstr "" @@ -2449,7 +2469,7 @@ msgstr "" msgid "Provider Type" msgstr "" -#: src/pages/sources/oauth/OAuthSourceForm.ts:138 +#: src/pages/sources/oauth/OAuthSourceForm.ts:160 msgid "Provider type" msgstr "" @@ -2738,7 +2758,7 @@ msgstr "" msgid "Select which scopes can be used by the client. The client stil has to specify the scope to access the data." msgstr "" -#: src/pages/sources/plex/PlexSourceForm.ts:131 +#: src/pages/sources/plex/PlexSourceForm.ts:153 msgid "Select which server a user has to be a member of to be allowed to authenticate." msgstr "" @@ -3388,6 +3408,7 @@ msgid "These bindings control which users can access this flow." msgstr "" #: src/pages/sources/oauth/OAuthSourceViewPage.ts:146 +#: src/pages/sources/plex/PlexSourceViewPage.ts:105 #: src/pages/sources/saml/SAMLSourceViewPage.ts:152 msgid "" "These bindings control which users can access this source.\n" @@ -3565,6 +3586,7 @@ msgstr "" #: src/pages/sources/SourcesListPage.ts:70 #: src/pages/sources/ldap/LDAPSourceViewPage.ts:95 #: src/pages/sources/oauth/OAuthSourceViewPage.ts:115 +#: src/pages/sources/plex/PlexSourceViewPage.ts:74 #: src/pages/sources/saml/SAMLSourceViewPage.ts:101 #: src/pages/stages/StageListPage.ts:85 #: src/pages/stages/prompt/PromptListPage.ts:67 @@ -3625,6 +3647,10 @@ msgstr "" msgid "Update Outpost" msgstr "" +#: src/pages/sources/plex/PlexSourceViewPage.ts:77 +msgid "Update Plex Source" +msgstr "" + #: src/pages/stages/prompt/PromptListPage.ts:70 msgid "Update Prompt" msgstr "" @@ -3695,6 +3721,16 @@ msgstr "" msgid "Use global settings" msgstr "" +#: src/pages/sources/oauth/OAuthSourceForm.ts:131 +#: src/pages/sources/plex/PlexSourceForm.ts:118 +msgid "Use the user's email address, but deny enrollment when the email address already exists." +msgstr "" + +#: src/pages/sources/oauth/OAuthSourceForm.ts:137 +#: src/pages/sources/plex/PlexSourceForm.ts:124 +msgid "Use the user's username, but deny enrollment when the username already exists." +msgstr "" + #: src/elements/events/ObjectChangelog.ts:39 #: src/elements/events/UserEvents.ts:36 #: src/pages/events/EventInfo.ts:83 @@ -3735,6 +3771,11 @@ msgstr "" msgid "User fields" msgstr "" +#: src/pages/sources/oauth/OAuthSourceForm.ts:120 +#: src/pages/sources/plex/PlexSourceForm.ts:107 +msgid "User matching mode" +msgstr "" + #: src/pages/sources/ldap/LDAPSourceForm.ts:208 msgid "User object filter" msgstr "" diff --git a/web/src/pages/sources/SourceViewPage.ts b/web/src/pages/sources/SourceViewPage.ts index 7ad8fa8fa..7041d54d2 100644 --- a/web/src/pages/sources/SourceViewPage.ts +++ b/web/src/pages/sources/SourceViewPage.ts @@ -9,6 +9,7 @@ import "../../elements/PageHeader"; import "./ldap/LDAPSourceViewPage"; import "./oauth/OAuthSourceViewPage"; import "./saml/SAMLSourceViewPage"; +import "./plex/PlexSourceViewPage"; import { ifDefined } from "lit-html/directives/if-defined"; @customElement("ak-source-view") @@ -37,6 +38,8 @@ export class SourceViewPage extends LitElement { return html``; case "ak-source-saml-form": return html``; + case "ak-source-plex-form": + return html``; default: return html`

Invalid source type ${this.source.component}

`; } diff --git a/web/src/pages/sources/plex/PlexSourceViewPage.ts b/web/src/pages/sources/plex/PlexSourceViewPage.ts new file mode 100644 index 000000000..2640cd11d --- /dev/null +++ b/web/src/pages/sources/plex/PlexSourceViewPage.ts @@ -0,0 +1,119 @@ +import { t } from "@lingui/macro"; +import { CSSResult, customElement, html, LitElement, property, TemplateResult } from "lit-element"; + +import PFPage from "@patternfly/patternfly/components/Page/page.css"; +import PFContent from "@patternfly/patternfly/components/Content/content.css"; +import PFGallery from "@patternfly/patternfly/layouts/Gallery/gallery.css"; +import PFCard from "@patternfly/patternfly/components/Card/card.css"; +import PFDescriptionList from "@patternfly/patternfly/components/DescriptionList/description-list.css"; +import PFSizing from "@patternfly/patternfly/utilities/Sizing/sizing.css"; +import PFFlex from "@patternfly/patternfly/utilities/Flex/flex.css"; +import PFDisplay from "@patternfly/patternfly/utilities/Display/display.css"; +import AKGlobal from "../../../authentik.css"; +import PFBase from "@patternfly/patternfly/patternfly-base.css"; +import PFButton from "@patternfly/patternfly/components/Button/button.css"; + +import "../../../elements/buttons/SpinnerButton"; +import "../../../elements/CodeMirror"; +import "../../../elements/Tabs"; +import "../../../elements/events/ObjectChangelog"; +import "../../../elements/forms/ModalForm"; +import "../../policies/BoundPoliciesList"; +import "./PlexSourceForm"; +import { PlexSource, SourcesApi } from "authentik-api"; +import { DEFAULT_CONFIG } from "../../../api/Config"; +import { EVENT_REFRESH } from "../../../constants"; + +@customElement("ak-source-plex-view") +export class PlexSourceViewPage extends LitElement { + + @property({ type: String }) + set sourceSlug(value: string) { + new SourcesApi(DEFAULT_CONFIG).sourcesPlexRead({ + slug: value + }).then((source) => { + this.source = source; + }); + } + + @property({ attribute: false }) + source?: PlexSource; + + static get styles(): CSSResult[] { + return [PFBase, PFPage, PFButton, PFFlex, PFDisplay, PFGallery, PFContent, PFCard, PFDescriptionList, PFSizing, AKGlobal]; + } + + constructor() { + super(); + this.addEventListener(EVENT_REFRESH, () => { + if (!this.source?.pk) return; + this.sourceSlug = this.source?.slug; + }); + } + + render(): TemplateResult { + if (!this.source) { + return html``; + } + return html` +
+
+
+
+
+
+
+
+ ${t`Name`} +
+
+
${this.source.name}
+
+
+
+
+ +
+
+
+
+
+
+
+ + +
+
+
+
+
+
${t`These bindings control which users can access this source. + You can only use policies here as access is checked before the user is authenticated.`}
+
+ + +
+
+
+
`; + } +}