quarta-feira, 2 de maio de 2012

GLPI - CONFIGURANDO NOVOS TIPOS DE TICKET



O GLPI é um dos muitos tipos de aplicativos helpdesk free existentes na internet. O fórum do mesmo pode ser encontrado neste link:


Recentemente tive a necessidade de acrescentar mais opções aos tipos de chamado do mesmo para um cliente. O que consegui descobrir pesquisando no fórum é que isso só seria possível mexendo no núcleo do PHP da aplicação. Apesar de não entender muito de PHP consegui encontrar os pontos onde as mudanças eram necessárias.

Vamos a elas!

Primeiro, precisamos alterar o ticket.class.php (pasta inc da aplicação) e acrescentar mais constantes de tipo de ticket. No meu caso, coloquei mais oito tipos:

  // Request type
   const INCIDENT_TYPE = 1;
   // Demand type
   const DEMAND_TYPE   = 2;
   // defeitos - Normal
   const TEST_TYPE = 3;
   // defeitos - Defeitos - Urgente
   const DEF_URGENTE = 4;
   // Dem. Op - Normal
   const DEM_OP = 5;
   // Dem. Op - Urgente
   CONST DEM_URG = 6;
   // Melhorias - Normal
   CONST MELHORIA_NORMAL = 7;
   // Melhorias - Urgente
   CONST MELHORIA_URG = 8;

Depois disso, é preciso alterar a função GetTypes () localizada neste mesmo arquivo:

static function getTypes() {
      global $LANG;

      $options[self::INCIDENT_TYPE]     = $LANG['job'][1];
      $options[self::DEMAND_TYPE]       = $LANG['job'][2];
      $options[self::TEST_TYPE]         = $LANG['job'][57];
      $options[self::DEF_URGENTE]       = $LANG['job'][58];
      $options[self::DEM_OP]            = $LANG['job'][59];
      $options[self::DEM_URG]           = $LANG['job'][60];
      $options[self::MELHORIA_NORMAL]   = $LANG['job'][61];
      $options[self::MELHORIA_URG]       = $LANG['job'][62];

      return $options;
   }

Veja que acrescentamos mais tipos $LANG.

O $LANG tem a ver com a linguagem utilizada pelo GLPI. No meu caso é português. Assim sendo é preciso acrescentar esses novos tipos de $LANG definidos acima no arquivo pt-BR.php.

Vá até a pasta locales e abra o arquivo pt-BR.PHP. Localize neste arquivo o ['job'] associado acima e acrescentes os novos tipos que definiu:


$LANG['job'][57]="Defeitos - Normal";
$LANG['job'][58]="Defeitos - Urgente";
$LANG['job'][59]="Dem. Op - Normal";
$LANG['job'][60]="Dem. Op - Urgente";
$LANG['job'][61]="Melhorias - Normal";
$LANG['job'][62]="Melhorias - Urgente";

Feito isso, os novos tipos de ticket estarão definidos para o GLPI. Para ver os mesmos, abra um novo chamado e clique no combo Tipo.


Para alterar os arquivos PHP utilizei o aplicativo Textpad que é free e você baixa em qualquer site de downloads da internet.








Sucesso a todos!



 

9 comentários:

Anônimo disse...

Esses novos tipos, também então em relatórios?

Anônimo disse...

Sim. Estão em relatórios.

By
Leonardo Metelys

Anônimo disse...

Bom dia,

gostaria que você pudesse me ajudar, eu preciso implementar mais dois tipos de status.

Cancelado e Suspenso.

Queria só que você me informasse quais serão os arquivos e métodos que terei que modificar.

por favor me ajude

certo de sua ajuda

att Israel

Anônimo disse...


Olá, Israel!

Seria fazer a mesma coisa.

Unknown disse...

Bom dia,

Seria a mesma coisa se eu fosse adicionar TIPOS, mais não é isso que eu quero.

O que quero é adicionar STATUS! envolve outros métodos que terei que modificar... é isso que quero saber quais seriam esses métodos e em que arquivos.

O que posso deduzir é que seria nos mesmos 2 arquivos apresentados no post...

mais cada arquivo desse tem mais de 7000 linhas de código.

certo de ajuda

Israel

Anônimo disse...


Olá, Israel.

Acho que é realmente no mesmo módulo que citei em meu posto.

Mesmo com 7000 linhas seu edito deve te permitir buscar uma palavra.

Pesquisa STATUS no arquivo ou um dos Status que você sabe que existem na aplicação.

Você terá que fazer exatamente o que fiz aqui, mas em outros pontos referentes ao Status.

Espero ter ajudado.

Sucesso!

By
Leonardo Metelys

Unknown disse...

Bom dia Leonardo Metelys,

tive que modificar 3 arquivos e adicionar uma figura para cada status.

Tenho uma outra dúvida e essa eu não encontrei em canto nenhum, não sei se você poderá me ajudar mais tente por favor!

Agora o que preciso fazer é o seguinte:
1. Tenho um chamado em execução
2. Vou fecha-lo.
3. Só poderei fecha-lo se eu tiver alguma solução inserida nele.
repetindo só posso fechar qualquer tipo de chamado se o mesmo conter uma solução, enquanto isso o glpi deve impedir o fechamento.

att

Anônimo disse...

Olá, Israel!

Desculpe a demora na resposta.

Fiz este trabalho para uma empresa na época de sua postagem.

Infelizmente hoje não tenho mais contato com o GLPI porque estou em outra empresa.

Acredito que seja possível realizar o que você deseja analisando os arquivos que citei aqui, mas em algum momento você terá que criar algo a mais nas linhas em PHP do GLPI.

Sucesso em sua empreitada!


Atenciosamente,

Leonardo Metelis

Anônimo disse...

Olá, Israel!

Desculpe a demora na resposta.

Fiz este trabalho para uma empresa na época de sua postagem.

Infelizmente hoje não tenho mais contato com o GLPI porque estou em outra empresa.

Acredito que seja possível realizar o que você deseja analisando os arquivos que citei aqui, mas em algum momento você terá que criar algo a mais nas linhas em PHP do GLPI.

Sucesso em sua empreitada!


Atenciosamente,

Leonardo Metelis

UM APLICATIVO PARA LEITURA DEVOCIONAL ANUAL DA BIBLIA EM ANDROID

Olá, pessoal!  Este novo projeto foi criado em Visual Studio 2019 em C#.Net com o Xamarin. Já está disponível no Google Play para vocês baix...