From cc90f9719bcb7ea5d084da04010f14151f2fccfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20H=C3=A4rter?= Date: Tue, 10 Oct 2023 18:57:05 +0200 Subject: [PATCH] Prepared dynamic field delete command. --- .../Command/Admin/DynamicField/Delete.pm | 60 +++++++++++-------- 1 file changed, 34 insertions(+), 26 deletions(-) diff --git a/Kernel/System/Console/Command/Admin/DynamicField/Delete.pm b/Kernel/System/Console/Command/Admin/DynamicField/Delete.pm index 5d3bb7c..4e7405b 100644 --- a/Kernel/System/Console/Command/Admin/DynamicField/Delete.pm +++ b/Kernel/System/Console/Command/Admin/DynamicField/Delete.pm @@ -25,40 +25,48 @@ use warnings; # OTOBO modules -our @ObjectDependencies = ( +use parent qw(Kernel::System::Console::BaseCommand); +our @ObjectDependencies = ( + 'Kernel::System::DynamicField', ); -=head1 NAME +sub Configure { + my ( $Self, %Param ) = @_; -[name_placeholder] + $Self->Description('Delete an existing dynamic field.'); + $Self->AddArgument( + Name => 'name', + Description => 'Delete dynamic field by name.', + Required => 0, + ValueRegex => qr/([A-Za-z0-9]+\-)?[A-Za-z0-9]+/smx, + ); + $Self->AddArgument( + Name => 'id', + Description => 'Delete dynamic field by field id.', + Required => 0, + ValueRegex => qr/\d+/smx, + ); + $Self->AddOption( + Name => 'dry-run', + Description => 'Perform a dry run and show which field whould be deleted.', + Required => 0, + HasValue => 0, + ); + $Self->AddOption( + Name => 'execute', + Description => 'Execute the deletion.', + Required => 0, + HasValue => 0, + ); -=head1 DESCRIPTION - -[description_placeholder] - -=head1 PUBLIC INTERFACE - -=head2 new() - -create an object. Do not use it directly, instead use: - -my $DeleteObject = $Kernel::OM->Get('Kernel::System::Console::Command::Admin::DynamicField::Delete'); - -=cut - -sub new { -my ( $Type, %Param ) = @_; - -# allocate new hash for object -my $Self = {%Param}; -bless( $Self, $Type ); - -return $Self; + return; } sub Run { -my ( $Self, %Param ) = @_; + my ( $Self, %Param ) = @_; + + return; } 1;