A palavra ofuscar parece até palavrão (xingamento). Mas significa: Impedir de ver; ocultar, encobrir, obscurecer. Conforme sempre venho escrevendo aqui cada dia aparece um cliente precisando de uma solução para resolver problemas/necessidades individuais. Hoje irei mostrar como ocultar a senha ou melhor substituir um resultado com asteristicos ou qualquer caracter que desejarmos.
Quando acessamos os detalhes de um produto o mesmo exibe para nós o usuário/senha.
Seria simples editar o arquivo clientareaproductdetails.tpl e remover os campos {$LANG.serverpassword} e {$password} mas o cliente gostaria de exibir a senha mas ofuscando ela.
Após aplicarmos uma “máscara” ele irá exibir apenas o primeiro e o último {$password|mask:1}
Outro exemplo {$password|mask:2}
Exemplo mais radical {$password|mask:0}
Criei um arquivo modifier.mask.php e envie para /seuwhmcs/libs/plugins/
<?php
function smarty_modifier_mask($str, $endChars = 1) {
$start = $endChars;
$length = strlen($str) – (2 * $endChars);$mask = preg_replace ( "/\S/", "*", $str );
if ( is_null ( $length )) {
$mask = substr ( $mask, $start );
$str = substr_replace ( $str, $mask, $start );
} else {
$mask = substr ( $mask, $start, $length );
$str = substr_replace ( $str, $mask, $start, $length );
}
return $str;
}
?>
Depois edite qualquer arquivo TPL, usamos como exemplo o clientareaproductdetails.tpl localizamos o campo $password e aplicamos a mascara: {$variavel|mask:0} você pode personalizar com 0,1,2.
Caso queira trocar o * por outro símbolo basta ir na linha 7 do arquivo modifier.mask.php e substituir pelo símbolo de sua preferência ("/\S/", "#", $str );
Dúvidas ? Basta comentar!










