disable user entity action

This commit is contained in:
Mads Rasmussen
2024-03-03 20:29:17 +01:00
parent 57fbefa6e6
commit c63d5d9951
2 changed files with 12 additions and 13 deletions

View File

@@ -1,23 +1,20 @@
import type { UmbDisableUserRepository } from '../../repository/disable/disable-user.repository.js';
import { UmbUserItemRepository } from '../../repository/item/user-item.repository.js';
import { UmbDisableUserRepository } from '../../repository/index.js';
import type { UmbEntityActionArgs } from '@umbraco-cms/backoffice/entity-action';
import { UmbEntityActionBase } from '@umbraco-cms/backoffice/entity-action';
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
import { umbConfirmModal } from '@umbraco-cms/backoffice/modal';
export class UmbDisableUserEntityAction extends UmbEntityActionBase<UmbDisableUserRepository> {
#itemRepository: UmbUserItemRepository;
constructor(host: UmbControllerHost, repositoryAlias: string, unique: string, entityType: string) {
super(host, repositoryAlias, unique, entityType);
this.#itemRepository = new UmbUserItemRepository(this);
export class UmbDisableUserEntityAction extends UmbEntityActionBase<never> {
constructor(host: UmbControllerHost, args: UmbEntityActionArgs<never>) {
super(host, args);
}
async execute() {
if (!this.unique) throw new Error('Unique is not available');
if (!this.repository) return;
if (!this.args.unique) throw new Error('Unique is not available');
const { data } = await this.#itemRepository.requestItems([this.unique]);
const itemRepository = new UmbUserItemRepository(this);
const { data } = await itemRepository.requestItems([this.args.unique]);
if (data) {
const item = data[0];
@@ -29,7 +26,10 @@ export class UmbDisableUserEntityAction extends UmbEntityActionBase<UmbDisableUs
confirmLabel: 'Disable',
});
await this.repository?.disable([this.unique]);
const disableUserRepository = new UmbDisableUserRepository(this);
await disableUserRepository.disable([this.args.unique]);
}
}
destroy(): void {}
}

View File

@@ -56,7 +56,6 @@ const entityActions: Array<ManifestTypes> = [
meta: {
icon: 'icon-block',
label: 'Disable',
repositoryAlias: UMB_DISABLE_USER_REPOSITORY_ALIAS,
entityTypes: [UMB_USER_ENTITY_TYPE],
},
conditions: [