[SOLVED] Link not showing

Moderator: crythias

Post Reply
AngelLR
Znuny newbie
Posts: 2
Joined: 18 Oct 2018, 11:07
Znuny Version: 5.0.16
Real Name: Ángel

[SOLVED] Link not showing

Post by AngelLR »

EDIT: The problem was that the link was disabled in system config, in Frontend::Agent::ModuleRegistration. I enabled it and now I see my custom link. The HelloWorld link was also disabled by default.


Hello,

I am new with OTRS and PERL and english is not my native language so I am sorry for any error I can make. I will try to explain what I want to achieve and what I have tried until now.

I need a new link in Ticket's dropdown, for example:

- New phone ticket.
- New email ticket.
- New custom ticket. <- this is my custom link
- Search

I achieved this by editing the file "Ticket.xml" located in /opt/otrs/Kernel/Config/Files but I need to do it in a separate way, I mean I need it working as a new different module so if I update OTRS I don't lose my changes.

I followed the chapter 3 tutorial about how to extend OTRS with the Hello World sample. At first I used my own code creating my own files but I wasn't able to make it working. I just don't see my custom link. I also tried building the package and installing the .opm file generated.

Here is the code of the new link which worked in the Ticket.xml file, I just added the first two lines:

Code: Select all

<?xml version="1.0" encoding="UTF-8" ?>
<otrs_config version="1.0" init="Application">
    <ConfigItem Name="Frontend::Module###AgentTicketVulnerability" Required="0" Valid="1">
        <Description Translatable="1">Frontend module registration for the agent interface.</Description>
        <Group>Ticket</Group>
        <SubGroup>Frontend::Agent::ModuleRegistration</SubGroup>
        <Setting>
            <FrontendModuleReg>
                <Description Translatable="0">Create new custom ticket.</Description>
                <Title Translatable="1">New custom ticket</Title>
                <NavBarName>Ticket</NavBarName>
                <NavBar>
                    <Description Translatable="1">Create new custom ticket.</Description>
                    <Name Translatable="1">New custom ticket</Name>
                    <Link>Action=AgentTicketVulnerability</Link>
                    <LinkOption></LinkOption>
                    <NavBar>Ticket</NavBar>
                    <Type></Type>
                    <Block></Block>
                    <AccessKey>v</AccessKey>
                    <Prio>250</Prio>
                </NavBar>
                <Loader>
                    <JavaScript>Core.Agent.CustomerSearch.js</JavaScript>
                    <JavaScript>Core.Agent.TicketAction.js</JavaScript>
                </Loader>
            </FrontendModuleReg>
        </Setting>
    </ConfigItem>
</otrs_config>
I tried changing the value of "init" to "Config" and "Changes", i also set the value of "Required" to 1 and added the type "Menu". Then I thought the error could be in one of the other files, the .pm or the .tt because I just copied the "AgentTicketPhone.pm" and "AgentTiketPhone.tt" and renamed them (and edited them a bit too).

So I thought the best thing I could do at that moment was try to implement the Hello World sample of the chapter previously mentioned.

I created the directories for the tutorial, copied the first .xml, linked it with "module-tools/link.pl" rebuilded the sysconfig with "/opt/otrs/bin/otrs.Console.pl Maint::Config::Rebuild --cleanup-user-config" but I don't see the link in the OTRS page. Here is the original code:

Code: Select all

<?xml version="1.0" encoding="UTF-8" ?>
<otrs_config version="1.0" init="Application">
        <ConfigItem Name="Frontend::Module###AgentHelloWorld" Required="1" Valid="1">
        <Description Translatable="1">FrontendModuleRegistration for HelloWorld module.</Description>
        <Group>HelloWorld</Group>
        <SubGroup>Frontend::Agent::ModuleRegistration</SubGroup>
        <Setting>
            <FrontendModuleReg>
                <Title>HelloWorld</Title>
                <Group>users</Group>
                <Description>HelloWorld</Description>
                <NavBarName>HelloWorld</NavBarName>
                <NavBar>
                    <Description>HelloWorld</Description>
                    <Name>HelloWorld</Name>
                    <Link>Action=AgentHelloWorld</Link>
                    <NavBar>HelloWorld</NavBar>
                    <Type>Menu</Type>
                    <Prio>8400</Prio>
                    <Block>ItemArea</Block>
                </NavBar>
            </FrontendModuleReg>
        </Setting>
    </ConfigItem>
</otrs_config>
I have tried removing the "<Group>users>/Group>" line but doesn't work.

I am using OTRS 5.0.x.
I don't know if this is important but I have installed the General Catalog and ITSM packages.

The rights of the directories are set as otrs:apache.

I need some help please, don't know what more I can try.

Thank you.
Post Reply