public function substituirVariaveis($mensagem, Evento $evento = null, Pessoa $pessoa = null, Inscricao $inscricao = null)
 {
     // Evento
     if ($evento != null) {
         $mensagem = str_replace('%evento_titulo%', $evento->titulo, $mensagem);
         $mensagem = str_replace('%evento_data_hora%', mb_strtolower(PLib::date_relative($evento->data . " " . $evento->hora, true, false)), $mensagem);
         if (function_exists('get_permalink')) {
             $mensagem = str_replace('%link_evento%', get_permalink($evento->id), $mensagem);
         }
         // Evento Local
         if ($evento->id_local != null) {
             $mensagem = str_replace('%evento_local%', $evento->local()->titulo, $mensagem);
             $mensagem = str_replace('%evento_local_endereco%', $evento->getLocal()->endereco, $mensagem);
             $mensagem = str_replace('%evento_local_telefone%', $evento->getLocal()->telefone, $mensagem);
         }
     }
     // Pessoa
     if ($pessoa != null) {
         $mensagem = str_replace('%pessoa_nome%', mb_convert_case(mb_strtolower($pessoa->nome), MB_CASE_TITLE, "UTF-8"), $mensagem);
         $mensagem = str_replace('%pessoa_primeiro_nome%', $pessoa->primeiro_nome(), $mensagem);
         $mensagem = str_replace('%pessoa_celular%', $pessoa->celular, $mensagem);
         $mensagem = str_replace('%pessoa_email%', $pessoa->email, $mensagem);
         $mensagem = str_replace('%pessoa_password%', $pessoa->getPassword(), $mensagem);
         if (strpos($mensagem, 'pessoa_extras') !== false) {
             $mensagem = str_replace('%pessoa_extras%', $pessoa->getExtrasExibicao(), $mensagem);
         }
         if (strpos($mensagem, 'pessoa_extras_social') !== false) {
             $mensagem = str_replace('%pessoa_extras_social%', $pessoa->getExtrasExibicao(null, true, false), $mensagem);
         }
     }
     // Inscrição
     if ($inscricao != null) {
         $mensagem = str_replace('%id_inscricao%', $inscricao->id, $mensagem);
         $mensagem = str_replace('%ticket%', $inscricao->id * 13, $mensagem);
         $mensagem = str_replace('%data_confirmacao%', $inscricao->data_confirmacao, $mensagem);
         $mensagem = str_replace('%valor_inscricao%', PLib::format_cash($inscricao->valor_inscricao), $mensagem);
         $mensagem = str_replace('%valor_pago%', PLib::format_cash($inscricao->valor_pago), $mensagem);
         $mensagem = str_replace('%forma_pagamento%', PagSeguroUtil::getFormaPagamentoTituloString($inscricao->forma_pagamento_gateway), $mensagem);
         $mensagem = str_replace('%meio_pagamento%', $inscricao->meio_pagamento, $mensagem);
         if (function_exists('get_permalink')) {
             $mensagem = str_replace('%link_pagamento%', $inscricao->getLinkPagamento(), $mensagem);
             $mensagem = str_replace('%link_avaliacao%', $inscricao->getLinkAvaliacao(), $mensagem);
             $mensagem = str_replace('%link_inscrito%', $inscricao->getLinkPagamento(), $mensagem);
             $mensagem = str_replace('%link_certificado%', $inscricao->getLinkCertificado(), $mensagem);
         }
         $mensagem = str_replace('%link_qrcode%', $inscricao->getLinkQrCode(), $mensagem);
         $mensagem = str_replace('%resumo_inscricoes%', 'Inscritos: ' . $inscricao->evento()->qtdInscritos() . ' - Confirmados: ' . $inscricao->evento()->qtdConfirmados(), $mensagem);
     }
     return $mensagem;
 }