Ir para conteúdo
  • Cadastre-se

[tutorial] - autologin whmcs


Posts Recomendados

Muito obrigado CarllosRA!

Estou fazendo alguns testes mas acho que acabei de encontrar uma solução no link a seguir: https://github.com/JonTheWong/whmcs-autoauth-invoice

Lá informam pra colocar o seguinte código no configuration.php do WHMCS:

$smarty_security_policy = array(
'mail' => array(
'php_modifiers' => array(
'md5',
),
),
);

Adicionando este código meu whmcs está enviando o e-mail e aparentemente o autologin funcionou corretamente!

Fica a dica para quem tiver o mesmo problema e precisar!

Link para o comentário
Compartilhar em outros sites

7 minutos atrás, emberada disse:

Muito obrigado CarllosRA!

Estou fazendo alguns testes mas acho que acabei de encontrar uma solução no link a seguir: https://github.com/JonTheWong/whmcs-autoauth-invoice

Lá informam pra colocar o seguinte código no configuration.php do WHMCS:


$smarty_security_policy = array(
'mail' => array(
'php_modifiers' => array(
'md5',
),
),
);

Adicionando este código meu WHMCS está enviando o e-mail e aparentemente o autologin funcionou corretamente!

Fica a dica para quem tiver o mesmo problema e precisar!

@emberada, a sim, também tem essa configuração para politica de emails personalizados, o meu está ssim:

// Politica de modelo de email personalizada/Autologin:
$smarty_security_policy = array(
    'mail' => array(
        'php_modifiers' => array(
            'escape','count','md5'
        ),
    ),
);

Link para o comentário
Compartilhar em outros sites

WHMCS 7.7.1

Não estou conseguindo fazer esse raio de MD5, funcionar..rsrs

Mensagem que aparece na tela ao enviar fatura:

> Email Sending Failed - Email message rendered empty - please check the email message Smarty markup syntax

 

No log do WHMCS 7.7.1:

Smarty Error: Syntax error in template "mailMessage:mailMessage:plaintext" on line 29 "{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" modifier 'md5' not allowed by security setting

 

Arquivo configuration.php

$smarty_security_policy = array(
		'mail' => array(
			'php_modifiers' => array(
				'md5',
		),
	),
);

 

Alguém sabe como resolver?

Link para o comentário
Compartilhar em outros sites

9 horas atrás, tiagocaus disse:

WHMCS 7.7.1

Não estou conseguindo fazer esse raio de MD5, funcionar..rsrs

Mensagem que aparece na tela ao enviar fatura:

> Email Sending Failed - Email message rendered empty - please check the email message Smarty markup syntax

 

No log do WHMCS 7.7.1:


Smarty Error: Syntax error in template "mailMessage:mailMessage:plaintext" on line 29 "{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" modifier 'md5' not allowed by security setting

 

Arquivo configuration.php


$smarty_security_policy = array(
		'mail' => array(
			'php_modifiers' => array(
				'md5',
		),
	),
);

 

Alguém sabe como resolver?

@tiagocaus, eu uso a versão 7.7.1 e funciona perfeito, o meu está assim, a diferença é o 'escape','count' que está faltando no seu!

// Politica de modelo de email personalizada/Autologin:
$smarty_security_policy = array(
    'mail' => array(
        'php_modifiers' => array(
            'escape','count','md5'
        ),
    ),
);

 

Editado por CarllosRA
Link para o comentário
Compartilhar em outros sites

2 horas atrás, CarllosRA disse:

@tiagocaus, eu uso a versão 7.7.1 e funciona perfeito, o meu está assim, a diferença é o 'escape','count' que está faltando no seu!


// Politica de modelo de email personalizada/Autologin:
$smarty_security_policy = array(
    'mail' => array(
        'php_modifiers' => array(
            'escape','count','md5'
        ),
    ),
);

 

 

Vai entender, aqui não funciona! fica aparecendo essa mensagem no LOG:

Smarty Error: Syntax error in template "mailMessage:mailMessage:plaintext" on line 29 "{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" modifier 'md5' not allowed by security setting

 

Smarty Error: Syntax error in template "mailMessage:mailMessage:message" on line 45 "<p><a style="border: 1px solid #090; background-color: #dfe; text-decoration: none; font-weight: bold; padding: 15px 50px 15px 50px;" href="{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" target="_blank" rel="noopener">CLIQUE AQUI PARA PAGAR</a></p>" modifier 'md5' not allowed by security setting

 

Link para o comentário
Compartilhar em outros sites

@CarllosRA

Veja os arquivos:

CONFIGURATION.PHP

$autoauthkey = '123456';

// Politica de modelo de email personalizada:
$smarty_security_policy = array(
    'mail' => array(
        'php_modifiers' => array(
            'escape','count','md5'
        ),
    ),
);

AUTOLOGIN.PHP

<?php
# Define WHMCS URL & AutoAuth Key
$whmcsurl = "https://cliente.xxxx.net/dologin.php"; #Substitua aqui o seu dominio e a pasta do seu WHMCS

# Evite o uso de caracteres diferentes de letras (maiusculas e minusculas) e numeros nas variaveis abaixo:
$autoauthkey = "01234"; #AutoAuth Key, ATENCAO: devera ser definida tambem no arquivo configuration.php!
$secret_key = "56789"; #Deve ser a mesma definida no Modelo de Email (Email Template)

if (md5($_GET['email'].$secret_key) != $_GET['hash'])
die(); //Encerrando aqui porque o hash nao esta correto

$timestamp = time(); # Pega o horario atual
$email = $_GET['email']; # Email do Cliente para o Login
# A linhas abaixo esta desativada tambem:
# $goto = "clientarea.php"; # Aqui voce pode definir a sua pagina padrao

# Abaixo foi definida como pagina padrao a fatura desejada. Poderia ser utilizada outra pagina, como na linha comentada acima.
$goto = "viewinvoice.php?id=".$_GET['invoice'];

$hash = sha1($email.$timestamp.$autoauthkey); # Gera o Hash

# Gera a URL do AutoAuth & Redireciona
$url = $whmcsurl."?email=$email&timestamp=$timestamp&hash=$hash&goto=".urlencode($goto);
header("Location: $url");
exit;
?>

 

NOS MODELOS DE EMAILS:

{assign var='hash' value=$client_email|cat:"56789"}

<a style="border: 1px solid #090; background-color: #dfe; text-decoration: none; font-weight: bold; padding: 15px 50px 15px 50px;" href="{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" target="_blank" rel="noopener">CLIQUE AQUI PARA PAGAR</a>


Ou copie link abaixo e cole no seu navegador: <br />
{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}

 

 

 

Link para o comentário
Compartilhar em outros sites

On 2/20/2019 at 10:31 AM, tiagocaus said:

@CarllosRA

Veja os arquivos:

CONFIGURATION.PHP


$autoauthkey = '123456';

// Politica de modelo de email personalizada:
$smarty_security_policy = array(
    'mail' => array(
        'php_modifiers' => array(
            'escape','count','md5'
        ),
    ),
);

AUTOLOGIN.PHP


<?php
# Define WHMCS (link do PDH) URL & AutoAuth Key
$whmcsurl = "https://cliente.xxxx.net/dologin.php"; #Substitua aqui o seu dominio e a pasta do seu WHMCS (link do PDH)

# Evite o uso de caracteres diferentes de letras (maiusculas e minusculas) e numeros nas variaveis abaixo:
$autoauthkey = "01234"; #AutoAuth Key, ATENCAO: devera ser definida tambem no arquivo configuration.php!
$secret_key = "56789"; #Deve ser a mesma definida no Modelo de Email (Email Template)

if (md5($_GET['email'].$secret_key) != $_GET['hash'])
die(); //Encerrando aqui porque o hash nao esta correto

$timestamp = time(); # Pega o horario atual
$email = $_GET['email']; # Email do Cliente para o Login
# A linhas abaixo esta desativada tambem:
# $goto = "clientarea.php"; # Aqui voce pode definir a sua pagina padrao

# Abaixo foi definida como pagina padrao a fatura desejada. Poderia ser utilizada outra pagina, como na linha comentada acima.
$goto = "viewinvoice.php?id=".$_GET['invoice'];

$hash = sha1($email.$timestamp.$autoauthkey); # Gera o Hash

# Gera a URL do AutoAuth & Redireciona
$url = $whmcsurl."?email=$email&timestamp=$timestamp&hash=$hash&goto=".urlencode($goto);
header("Location: $url");
exit;
?>

 

NOS MODELOS DE EMAILS:


{assign var='hash' value=$client_email|cat:"56789"}

<a style="border: 1px solid #090; background-color: #dfe; text-decoration: none; font-weight: bold; padding: 15px 50px 15px 50px;" href="{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}" target="_blank" rel="noopener">CLIQUE AQUI PARA PAGAR</a>


Ou copie link abaixo e cole no seu navegador: <br />
{$whmcs_url}/autologin.php?email={$client_email}&invoice={$quote_number}&hash={$hash|md5}

 

 

 

Atenção para configurar o mesmo número $autoauthkey em AUTOLOGIN.PHP e CONFIGURATION.PHP

Nos modelos de e-mails trocar {$quote_number} por {$invoice_id} 

Feito estas alterações o meu funcionou perfeitamente na versão 7.8.3

Link para o comentário
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Infelizmente, seu conteúdo contém termos que não são permitimos. Edite seu conteúdo para remover as palavras destacadas abaixo.
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?