Создал свой первый модуль в OTRS.
Суть модуля в том, чтобы добавить один пункт меню (Назовем этот пункт "RunTask") в конец меню Frontend::Agent::Ticket::MenuModule
Вот настройка конфига:
Код: Выделить всё
<?xml version="1.0" encoding="UTF-8" ?>
<otrs_config version="1.0" init="Application">
<ConfigItem Name="Ticket::Frontend::MenuModule###999-RunTask" Required="0" Valid="1">
<Description Translatable="1">FrontendModuleRegistration for custom menu module.</Description>
<Group>Ticket</Group>
<SubGroup>Frontend::Agent::Ticket::MenuModule</SubGroup>
<Setting>
<Hash>
<Item Key="Module">Kernel::Output::HTML::TicketMenuCustom::MenuModuleCustom</Item>
<Item Key="Name">RunTask</Item>
<Item Key="Action">AgentRunTask</Item>
</Hash>
</Setting>
</ConfigItem>
</otrs_config>
Код: Выделить всё
package Kernel::Output::HTML::TicketMenuCustom::MenuModuleCustom;
use strict;
use warnings;
sub new {
my ( $Type, %Param ) = @_;
# allocate new hash for object
my $Self = {};
bless ($Self, $Type);
return $Self;
}
sub Run {
my ( $Self, %Param ) = @_;
# return item
return {
Name => 'RunTask',
Description => 'Click on me & run task!',
};
}
1;
Проблема в другом,
Как мне "навесить" на клик по этому пункту меню, какое то действие?
Я сначала думал, что это делается через тэг Action в XML-конфигурации модуля.
Но как видно из примера, в XML я и указал этот самый Action,
где Action = AgentRunTask
AgentRunTask.pm лежит в каталоге /otrs/Custom/Kernel/Modules/
но толку от него никакого.
Т.е. я даже имя файла менял на gentRunTask.pm (чтобы вызвать ошибку), но то ли система его упорно не видит, то ли я что-то указал не так?
Подскажите плз. Где грабли?