Страница 1 из 1

код Perl если пользователь такой ID компании

Добавлено: 27 фев 2020, 09:27
wss
Здравствуйте. отрс 5 . Вообщем нужно условие на языке Perl на странице пользователя (авторизация через AD): Если пользователь принадлежит такой компании, то то-то, иначе то-то.

Re: код Perl если пользователь такой ID компании

Добавлено: 27 фев 2020, 22:41
alexus

Re: код Perl если пользователь такой ID компании

Добавлено: 03 мар 2020, 10:09
wss
Спасибо. Но этого мало, как вставить на странице CustomerTicketMessage.tt perl-код ? Через [% Data. %] можно брать данные ? Пользователь на данной странице уже зарегистрированный, поэтому нужно узнать его компанию.

Код: Выделить всё

 my $Company = $CustomerUserObject->CustomerID(
        UserLogin => 'some-login', # вот в этой строке тоже не понятно как написать CUSTOMER_ID из  таблицы customer_user
        
    );

Re: код Perl если пользователь такой ID компании

Добавлено: 17 мар 2020, 09:52
wss
Не работает код в файле CustomerTicketMessage.tt

Код: Выделить всё

if ([% Env('CustomerID') %]== 'КУИ') {
  print('got a b');
}

else {
  print('hit the "else" clause');
}
в браузере выводит просто как текст if (ЦМИРиТ== 'КУИ') { print('got a b'); } else { print('hit the "else" clause'); }

Я так понимаю это условие нужно прописать в файле /opt/otrs/Kernel/System/CustomerCompany.pm или можно как-нить прямо в CustomerTicketMessage.tt сделать ?

Re: код Perl если пользователь такой ID компании

Добавлено: 06 апр 2020, 11:42
alex.t
Делайте в коде Perl проверку, например:

Код: Выделить всё

$TestCustomerData = $Ticket{CustomerID} eq 'КУИ' ? 'got a b' : 'hit the "else" clause';

        $LayoutObject->Block(
            Name => 'TestBlock',
            Data => {
                TestData => $TestCustomerData ,
            },
        ); 


В самом шаблоне tt добавьте блок:

Код: Выделить всё

[% RenderBlockStart("TestBlock") %]
    <p>[% Data.TestData %]</p>
[% RenderBlockEnd("TestBlock") %]