Jump to content

Hook: pin - whmcs.red


LucianoZ
 Share

Recommended Posts

Fala galera tudo bem? pela falta de tempo do @Joel Emanoel estou eu aqui fazendo o post para ele sobre um hook novo para WHMCS, este hook servirá para melhor localização do cliente via PIN (uma sequência de números), onde você pode estar adicionando o pin nos templates de e-mail para ser enviado aos clientes, o mesmo estará disponível na área do cliente e no perfil do cliente na administração.
Isto deverá facilitar muito atendimentos por e-mail no qual somente informando o PIN já é possível localizar o cliente pelo search do whmcs(administração).

Para maiores informações como imagens, explicações, como instalar e como baixar acesse:
http://whmcs.red/hook-pin/

Deixe seus comentários, e caso tiver sugestões de melhoras ou para novos módulos/hooks ficamos a disposição.

Link to comment
Share on other sites

4 horas atrás, Matheus Oliveira disse:

Estava procurando por algo do tipo, obrigado!

 

21 minutos atrás, Guto disse:

@LucianoZ Primeiramente parabéns, realmente faz toda a diferença no momento de realizar certo tipo de atendimento por chat online.

As ordem.

Se tiverem sugestões ficamos a disposição.

Link to comment
Share on other sites

9 minutos atrás, LucianoZ disse:

 

As ordem.

Se tiverem sugestões ficamos a disposição.

Fiz uma pequena alteração para o meu uso, porque alguns clientes ao verem escrito PIN: 00000 não saberão do que se trata e outros até poderão abrir tickets, apenas para saber o que é (sim, acontece), então já prefiro deixar algum tipo de informação, da utilidade do código PIN, como no exemplo da imagem (É apenas um exemplo).

Não coloquei o código alterado aqui para não atrapalhar o seu Post e porque é algo relativamente simples de inserir/alterar, mas se autorizar, insiro aqui ou lhe envio.

2017-03-01_1526.png.7d30f97186cefb12e93a3d128ebfdcb2.png

Link to comment
Share on other sites

Fiz uma pequena alteração para o meu uso, porque alguns clientes ao verem escrito PIN: 00000 não saberão do que se trata e outros até poderão abrir tickets, apenas para saber o que é (sim, acontece), então já prefiro deixar algum tipo de informação, da utilidade do código PIN, como no exemplo da imagem (É apenas um exemplo).
Não coloquei o código alterado aqui para não atrapalhar o seu Post e porque é algo relativamente simples de inserir/alterar, mas se autorizar, insiro aqui ou lhe envio.
2017-03-01_1526.png.7d30f97186cefb12e93a3d128ebfdcb2.png


Claro, poste a linha que alterou assim outros poderiam fazer o mesmo.

Enviado de meu MotoG3 usando Tapatalk

Link to comment
Share on other sites

1 minuto atrás, LucianoZ disse:

 


Claro, poste a linha que alterou assim outros poderiam fazer o mesmo.

Enviado de meu MotoG3 usando Tapatalk
 

1. Código completo do arquivo pin.php já com a modificação:

<?php
// Desenvolvido por Joel - WHMCS.RED || Modificações de search inteligente feita por Luciano - WHMCS.RED
// Pegar Session
use WHMCS\Session;
// Pegar Conexão com Banco de Dados
use WHMCS\Database\Capsule;
// Bloqueia o acesso direto ao arquivo
if (!defined("WHMCS")){
	die("Acesso restrito!");
}
// Monta o PIN
function montar_pin($id){
	$limite = 10;
	$montar = md5($id);
	$montar = preg_replace("/[^0-9]/", "", $montar);
	$quantidade_numeros = mb_strlen($montar);
	$contar = $limite - quantidade_numeros;
	$resultado = substr($montar, $limite, $contar);
	return $resultado;
}
// Página de Administrador
add_hook("AdminAreaClientSummaryPage", 1, function($vars){
	return "</br><div class='alert alert-success'><strong>C&Oacute;DIGO PIN: ".montar_pin($vars["userid"])."</strong></div>";
});
// Página do Cliente
add_hook("ClientAreaHomepage", 2, function($vars){
	return "<div class='alert alert-success'><i class=\"fa fa-lock\"></i> <strong>C&Oacute;DIGO PIN: ".montar_pin($_SESSION["uid"])."</strong></strong></br></br>Forne&ccedil;a este c&oacute;digo, quando solicitado pela nossa equipe de atendimento. Por quest&otilde;es de seguran&ccedil;a, ele ser&aacute; solicitado em determinados tipos de atendimentos, por exemplo em atendimentos via Chat Online.</div>";
});
// Adicionando função de pesquisa do PIN
add_hook("IntelligentSearch", 1, function($vars){
	$pesquisa = array();
	foreach (Capsule::table("tblclients")->get() as $clientes){
		$resultado = montar_pin($clientes->id);
		if($resultado == $vars["searchTerm"]){
			$idcliente = $clientes->id;
			$pin = $resultado;
		}
	}
	foreach (Capsule::table("tblclients")->WHERE("id", $idcliente)->get() as $cliente){
		$pesquisa[] = '
		<div class="searchresult">
			<a href="clientssummary.php?userid='.$cliente->id.'">
				<strong>'.$cliente->firstname.' '.$cliente->lastname.'</strong>
				(PIN: '.$pin.')<br />
				<span class="desc">' . $cliente->email . '</span>
			</a>
		</div>';
	}
	return $pesquisa;
});
// Adiciona string para os templates de email
add_hook("EmailPreSend", 1, function($vars){
	$pinstring = array();
	$pinstring["pin"] = montar_pin($vars['relid']);
	return $pinstring;
});

 

2. Linha alterada: 27

- Linha Original

	return "<div class='alert alert-success'><strong>PIN: ".montar_pin($_SESSION["uid"])."</strong></div>";

- Linha Modificada

	return "<div class='alert alert-success'><i class=\"fa fa-lock\"></i> <strong>C&Oacute;DIGO PIN: ".montar_pin($_SESSION["uid"])."</strong></strong></br></br>Forne&ccedil;a este c&oacute;digo, quando solicitado pela nossa equipe de atendimento. Por quest&otilde;es de seguran&ccedil;a, ele ser&aacute; solicitado em determinados tipos de atendimentos, por exemplo em atendimentos via Chat Online.</div>";

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...