core: add flag to globally disable impersonation
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
		| @ -7,10 +7,10 @@ import { until } from "lit/directives/until.js"; | ||||
| import PFAlert from "@patternfly/patternfly/components/Alert/alert.css"; | ||||
| import PFDescriptionList from "@patternfly/patternfly/components/DescriptionList/description-list.css"; | ||||
|  | ||||
| import { CoreApi, User } from "@goauthentik/api"; | ||||
| import { CapabilitiesEnum, CoreApi, User } from "@goauthentik/api"; | ||||
|  | ||||
| import { AKResponse } from "../../api/Client"; | ||||
| import { DEFAULT_CONFIG, tenant } from "../../api/Config"; | ||||
| import { DEFAULT_CONFIG, config, tenant } from "../../api/Config"; | ||||
| import { me } from "../../api/Users"; | ||||
| import { uiConfig } from "../../common/config"; | ||||
| import { PFColor } from "../../elements/Label"; | ||||
| @ -143,9 +143,19 @@ export class RelatedUserList extends Table<User> { | ||||
|                         <i class="fas fa-edit"></i> | ||||
|                     </button> | ||||
|                 </ak-forms-modal> | ||||
|                 <a class="pf-c-button pf-m-tertiary" href="${`/-/impersonation/${item.pk}/`}"> | ||||
|                     ${t`Impersonate`} | ||||
|                 </a>`, | ||||
|                 ${until( | ||||
|                     config().then((config) => { | ||||
|                         if (config.capabilities.includes(CapabilitiesEnum.Impersonate)) { | ||||
|                             return html`<a | ||||
|                                 class="pf-c-button pf-m-tertiary" | ||||
|                                 href="${`/-/impersonation/${item.pk}/`}" | ||||
|                             > | ||||
|                                 ${t`Impersonate`} | ||||
|                             </a>`; | ||||
|                         } | ||||
|                         return html``; | ||||
|                     }), | ||||
|                 )}`, | ||||
|         ]; | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -7,10 +7,10 @@ import { until } from "lit/directives/until.js"; | ||||
| import PFAlert from "@patternfly/patternfly/components/Alert/alert.css"; | ||||
| import PFDescriptionList from "@patternfly/patternfly/components/DescriptionList/description-list.css"; | ||||
|  | ||||
| import { CoreApi, User } from "@goauthentik/api"; | ||||
| import { CapabilitiesEnum, CoreApi, User } from "@goauthentik/api"; | ||||
|  | ||||
| import { AKResponse } from "../../api/Client"; | ||||
| import { DEFAULT_CONFIG, tenant } from "../../api/Config"; | ||||
| import { DEFAULT_CONFIG, config, tenant } from "../../api/Config"; | ||||
| import { me } from "../../api/Users"; | ||||
| import { uiConfig } from "../../common/config"; | ||||
| import { PFColor } from "../../elements/Label"; | ||||
| @ -149,9 +149,19 @@ export class UserListPage extends TablePage<User> { | ||||
|                         <i class="fas fa-edit"></i> | ||||
|                     </button> | ||||
|                 </ak-forms-modal> | ||||
|                 <a class="pf-c-button pf-m-tertiary" href="${`/-/impersonation/${item.pk}/`}"> | ||||
|                     ${t`Impersonate`} | ||||
|                 </a>`, | ||||
|                 ${until( | ||||
|                     config().then((config) => { | ||||
|                         if (config.capabilities.includes(CapabilitiesEnum.Impersonate)) { | ||||
|                             return html`<a | ||||
|                                 class="pf-c-button pf-m-tertiary" | ||||
|                                 href="${`/-/impersonation/${item.pk}/`}" | ||||
|                             > | ||||
|                                 ${t`Impersonate`} | ||||
|                             </a>`; | ||||
|                         } | ||||
|                         return html``; | ||||
|                     }), | ||||
|                 )}`, | ||||
|         ]; | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -2,6 +2,7 @@ import { t } from "@lingui/macro"; | ||||
|  | ||||
| import { CSSResult, LitElement, TemplateResult, html } from "lit"; | ||||
| import { customElement, property } from "lit/decorators.js"; | ||||
| import { until } from "lit/directives/until.js"; | ||||
|  | ||||
| import AKGlobal from "../../authentik.css"; | ||||
| import PFButton from "@patternfly/patternfly/components/Button/button.css"; | ||||
| @ -15,9 +16,9 @@ import PFDisplay from "@patternfly/patternfly/utilities/Display/display.css"; | ||||
| import PFFlex from "@patternfly/patternfly/utilities/Flex/flex.css"; | ||||
| import PFSizing from "@patternfly/patternfly/utilities/Sizing/sizing.css"; | ||||
|  | ||||
| import { CoreApi, User } from "@goauthentik/api"; | ||||
| import { CapabilitiesEnum, CoreApi, User } from "@goauthentik/api"; | ||||
|  | ||||
| import { DEFAULT_CONFIG } from "../../api/Config"; | ||||
| import { DEFAULT_CONFIG, config } from "../../api/Config"; | ||||
| import { EVENT_REFRESH } from "../../constants"; | ||||
| import "../../elements/CodeMirror"; | ||||
| import { PFColor } from "../../elements/Label"; | ||||
| @ -239,14 +240,22 @@ export class UserViewPage extends LitElement { | ||||
|                                 ${t`Reset Password`} | ||||
|                             </ak-action-button> | ||||
|                         </div> | ||||
|                         <div class="pf-c-card__footer"> | ||||
|                             <a | ||||
|                                 class="pf-c-button pf-m-tertiary" | ||||
|                                 href="${`/-/impersonation/${this.user.pk}/`}" | ||||
|                             > | ||||
|                                 ${t`Impersonate`} | ||||
|                             </a> | ||||
|                         </div> | ||||
|  | ||||
|                         ${until( | ||||
|                             config().then((config) => { | ||||
|                                 if (config.capabilities.includes(CapabilitiesEnum.Impersonate)) { | ||||
|                                     return html` <div class="pf-c-card__footer"> | ||||
|                                         <a | ||||
|                                             class="pf-c-button pf-m-tertiary" | ||||
|                                             href="${`/-/impersonation/${this.user?.pk}/`}" | ||||
|                                         > | ||||
|                                             ${t`Impersonate`} | ||||
|                                         </a> | ||||
|                                     </div>`; | ||||
|                                 } | ||||
|                                 return html``; | ||||
|                             }), | ||||
|                         )} | ||||
|                     </div> | ||||
|                     <div | ||||
|                         class="pf-c-card pf-l-grid__item pf-m-12-col pf-m-9-col-on-xl pf-m-9-col-on-2xl" | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Jens Langhammer
					Jens Langhammer