Addon PagSeguro para FluxCP

Sua conta no pagseguro está configurada incorretamente, você está usando o antigo sistema ou seja este: https://pagseguro.uol.com.br/desenvolvedor/retorno_automatico_de_dados.jhtml (Retorno automático de dados.) quando na verdade o plugin usa este :https://pagseguro.uol.com.br/v3/guia-de-integracao/api-de-notificacoes.html (PAGAMENTOS VIA API) por questões de segurança foi criada a API de notificações, criar um plugin com o antigo sistema seria um erro, pois qualquer um poderia fraudar facilmente. Ou seja nenhuma dessas informações deve ser recebida via post e utilizadas para aprovar doações, a API recebe apenas um código e depois ela faz a requisição dos outros dados diretamente do PagSeguro ou seja no post não deve conter nada referente a transação apenas o notificationCode e notificationType. Por isto não funcionou apesar de um post ser recebido a página notification.php não sabe o que fazer com esses dados do antigo sistema. Creio que não há erro algum no plugin e sim na configuração de sua conta, altere a sua conta de acordo com essas imagens e verifique novamente:

https://pagseguro.uol.com.br/integracao/pagamentos-via-api.jhtml



https://pagseguro.uol.com.br/integracao/notificacao-de-transacoes.jhtml



https://pagseguro.uol.com.br/integracao/retorno-automatico-de-dados.jhtml

VS08Oy.png


 

O retorno automático de dados não deve ser habilitado, tudo é feito através da api de notificações de forma mais segura.

 

EDIT: Pelo que pude ver do seu painel os antigos problemas de segurança no FluxCP ainda existem, quando eu puder vou postar algo sobre, mas saiba que o FluxCP mesmo a versão do hercules possui problemas de segurança, tanto na parte de registro de contas como na parte de recuperação de senhas, há outros problemas também menos graves.
Estou com o mesmo problema, as fotos não aparece mais... você ainda pode ajudar?

 
Detalhes da Exceção

Erro: PagSeguroServiceException

Mensagem: [HTTP 400] - BAD_REQUEST 

[11029] - Montante da adição padrão inválido:. 500. Deve caber a patern: \ d + \ d {2}

Ficheiro: /home/ragnaproject/public_html/addons/donates/lib/service/PagSeguroPaymentService.class.php:68

Arquivo Linha Função / Método /home/ragnaproject/public_html/addons/donates/lib/domain/PagSeguroPaymentRequest.class.php 600 PagSeguroPaymentService :: createCheckoutRequest () /home/ragnaproject/public_html/addons/donates/modules/doa/process.php 40 PagSeguroPaymentRequest :: register () /home/ragnaproject/public_html/lib/Flux/Template.php 337 incluir() /home/ragnaproject/public_html/lib/Flux/Dispatcher.php 168 Flux_Template :: render () /home/ragnaproject/public_html/index.php 177 Flux_Dispatcher :: expedição () Rastreio de exceção como cadeia

# 0 /home/ragnaproject/public_html/addons/donates/lib/domain/PagSeguroPaymentRequest.class.php(600): PagSeguroPaymentService :: createCheckoutRequest (Object (PagSeguroAccountCredentials), Object (PagSeguroPaymentRequest))

# 1 /home/ragnaproject/public_html/addons/donates/modules/doa/process.php(40): PagSeguroPaymentRequest-> register (Object (PagSeguroAccountCredentials))

# 2 /home/ragnaproject/public_html/lib/Flux/Template.php(337): include ('/ home / ragnaproj ...')

# 3 /home/ragnaproject/public_html/lib/Flux/Dispatcher.php(168): Flux_Template-> render ()

# 4 /home/ragnaproject/public_html/index.php(177): Flux_Dispatcher-> dispatch (Array)

# 5 {main}
Tive esse mesmo problema quando clico no botão do pagseguro. Alguém sabe a solução?

EDIT: achei a solução, você tem que entrar em addons\donates\modules\doa\process.php (35) e adicionar um ponto entre as aspas, é só trocar str_replace(",","" por str_replace(",","."

 
Last edited by a moderator:
Estava com tempo livre e o Slicer me pediu para atualizar a api do addon, então resolvi colocar logo no github e ai está uma versão atualizada com a mais nova api e reescrita com um código um pouco mais organizado com novas features:

Atualizada API de pagamentos do PagSeguro para ultima versão, inserido uso do PagSeguroLightbox, código reformulado para uso de OO onde possível, inserido sandbox do PagSeguro, remoção de arquivos desnecessários, inserido uso de ajax/jQuery/Json se livrando das mudanças em lib/Flux/Template.php e mais um monte de coisas que nem eu mesmo sei.

Possui diversas mudanças no funcionamento então caso vá atualizar é necessário uma atualização na tabela antiga:

ALTER TABLE `cp_donate`
DROP COLUMN `payment_notification_code`,
DROP COLUMN `payment_status`,
MODIFY `account_id` int(11) NOT NULL,
MODIFY `userid` varchar(23) NOT NULL,
MODIFY `email` varchar(39) NOT NULL,
MODIFY `payment_date` datetime NOT NULL,
MODIFY `payment_id` varchar(50) NOT NULL,
MODIFY `payment` float NOT NULL,
MODIFY `payment_ip` varchar(35) NOT NULL,
MODIFY `payment_type` varchar(23) NOT NULL DEFAULT 'PagSeguro',
MODIFY `payment_code` varchar(50) NULL,
CHANGE `payment_status_pagseguro` `payment_status` tinyint(3) NOT NULL DEFAULT '0';


Depois insiro algumas imagens no github de como está atualmente pois tiveram algumas mudanças visuais também. Com o tempo posso estar fazendo novas funções como sorteio para doadores, top 10 e etc.

Link -> https://github.com/LiliumSancta/Flux-CP-PagSeguro

 
Estava com tempo livre e o Slicer me pediu para atualizar a api do addon, então resolvi colocar logo no github e ai está uma versão atualizada com a mais nova api e reescrita com um código um pouco mais organizado com novas features:

Atualizada API de pagamentos do PagSeguro para ultima versão, inserido uso do PagSeguroLightbox, código reformulado para uso de OO onde possível, inserido sandbox do PagSeguro, remoção de arquivos desnecessários, inserido uso de ajax/jQuery/Json se livrando das mudanças em lib/Flux/Template.php e mais um monte de coisas que nem eu mesmo sei.

Possui diversas mudanças no funcionamento então caso vá atualizar é necessário uma atualização na tabela antiga:

ALTER TABLE `cp_donate`
DROP COLUMN `payment_notification_code`,
DROP COLUMN `payment_status`,
MODIFY `account_id` int(11) NOT NULL,
MODIFY `userid` varchar(23) NOT NULL,
MODIFY `email` varchar(39) NOT NULL,
MODIFY `payment_date` datetime NOT NULL,
MODIFY `payment_id` varchar(50) NOT NULL,
MODIFY `payment` float NOT NULL,
MODIFY `payment_ip` varchar(35) NOT NULL,
MODIFY `payment_type` varchar(23) NOT NULL DEFAULT 'PagSeguro',
MODIFY `payment_code` varchar(50) NULL,
CHANGE `payment_status_pagseguro` `payment_status` tinyint(3) NOT NULL DEFAULT '0';


Depois insiro algumas imagens no github de como está atualmente pois tiveram algumas mudanças visuais também. Com o tempo posso estar fazendo novas funções como sorteio para doadores, top 10 e etc.

Link -> https://github.com/LiliumSancta/Flux-CP-PagSeguro
Parabéns pelo trabalho.

 
Estava com tempo livre e o Slicer me pediu para atualizar a api do addon, então resolvi colocar logo no github e ai está uma versão atualizada com a mais nova api e reescrita com um código um pouco mais organizado com novas features:

Atualizada API de pagamentos do PagSeguro para ultima versão, inserido uso do PagSeguroLightbox, código reformulado para uso de OO onde possível, inserido sandbox do PagSeguro, remoção de arquivos desnecessários, inserido uso de ajax/jQuery/Json se livrando das mudanças em lib/Flux/Template.php e mais um monte de coisas que nem eu mesmo sei.

Possui diversas mudanças no funcionamento então caso vá atualizar é necessário uma atualização na tabela antiga:

ALTER TABLE `cp_donate`
DROP COLUMN `payment_notification_code`,
DROP COLUMN `payment_status`,
MODIFY `account_id` int(11) NOT NULL,
MODIFY `userid` varchar(23) NOT NULL,
MODIFY `email` varchar(39) NOT NULL,
MODIFY `payment_date` datetime NOT NULL,
MODIFY `payment_id` varchar(50) NOT NULL,
MODIFY `payment` float NOT NULL,
MODIFY `payment_ip` varchar(35) NOT NULL,
MODIFY `payment_type` varchar(23) NOT NULL DEFAULT 'PagSeguro',
MODIFY `payment_code` varchar(50) NULL,
CHANGE `payment_status_pagseguro` `payment_status` tinyint(3) NOT NULL DEFAULT '0';


Depois insiro algumas imagens no github de como está atualmente pois tiveram algumas mudanças visuais também. Com o tempo posso estar fazendo novas funções como sorteio para doadores, top 10 e etc.

Link -> https://github.com/LiliumSancta/Flux-CP-PagSeguro
Como faço para adicionar o valor do cash?

 
Isso só que quando tem valor em cash ele funciona normalmente mas quando o valor é 0 ele da esse bug

https://imgur.com/a/fF5OLL1

Code:
<?php if (!defined('FLUX_ROOT')) exit; ?>
<div class="credit-balance">
	<h2><span class="keyword"><span class="balance-text"><span style="color:#000000"><b>CRÉDITOS:</b></span></span>
	<span class="balance-amount">
		
	   <?php

			$donateVar = Flux::config('PagSeguroVar');
			$sql = "SELECT * FROM {$server->charMapDatabase}.`global_reg_value` WHERE `account_id` = ? AND `str` = ?";
    		$sth = $server->connection->getStatement($sql);
			$sth->execute(array($session->account->account_id, $donateVar));
			$balance = $sth->fetch();
			echo number_format((int)$balance->value);
		?>
</div>
 
Isso só que quando tem valor em cash ele funciona normalmente mas quando o valor é 0 ele da esse bug

https://imgur.com/a/fF5OLL1

<?php if (!defined('FLUX_ROOT')) exit; ?>
<div class="credit-balance">
<h2><span class="keyword"><span class="balance-text"><span style="color:#000000"><b>CRÉDITOS:</b></span></span>
<span class="balance-amount">

<?php

$donateVar = Flux::config('PagSeguroVar');
$sql = "SELECT * FROM {$server->charMapDatabase}.`global_reg_value` WHERE `account_id` = ? AND `str` = ?";
$sth = $server->connection->getStatement($sql);
$sth->execute(array($session->account->account_id, $donateVar));
$balance = $sth->fetch();
echo number_format((int)$balance->value);
?>
</div>

Muda esse trecho:

echo number_format((int)$balance->value);


Para isso:

echo number_format(is_null($balance->value) ? 0 : $balance->value);


Se não ser certo tenta com is_object($balance), não sei ao certo qual a linha que vem dando o error, mas é mais ou menos isso ai.

 
Last edited by a moderator:
Muda esse trecho:

echo number_format((int)$balance->value);


Para isso:

echo number_format(is_null($balance->value) ? 0 : $balance->value);


Se não ser certo tenta com is_object($balance), não sei ao certo qual a linha que vem dando o error, mas é mais ou menos isso ai.
Não funcionou ficou a mesma coisa

 
Da uma olhada qual a linha exatamente que ta dando erro, pra mim ter uma ideia do que é. Eu vi que é a linha 13, mas não faço ideia do que tem na linha 13 do seu arquivo.

 
Last edited by a moderator:
Quando escolho o valor que quero doar e confirmo não acontece nada, só meio que recarrega a página e nada acontece pra prosseguir pra pagamento. Nem como historico de doação aparece

 
Status de Notice: Undefined index: in /home/XXX/public_html/themes/default/cplog/donateview.phpon line 57no PagSeguro.

o que pode ser?

 
Boa tarde galera achei esse topico como arrumo essa parte

Taxa de Câmbio:

1.00 R$ = 1.000 ROP's

Quantidade Mínima de Doação:

1.00 R$

pra ficar assim, exatamente porque quando coloco fica assim 

— 1 Cash Points —

'rate'           => 1.0, // Adicione a rate das doações por exemplo 1.0 é equivalente a 1.00 R$ recebe 1 crédito, 0.001 a cada 1.00 R$ 1000 Créditos (altere também a configuração 'CreditExchangeRate' no arquivo de configuração application.php do FluxCP para o mesmo valor).

    'hercules'       => false, // Configure para true se estiver usando o emulador hercules.
    'PagSeguroMin'   => 1, //Doação minima.
    'PagSeguroFlux'  => true, // Usar sistema de créditos da loja do Flux CP? Caso insira false você vai precisar configurar uma variável abaixo.
    'PagSeguroVar'   => '#CASHPOINTS', // Caso a opção acima seja false adicione aqui a sua variável de cash (pode ser usada qualquer variável permanente de conta).
    'PagSeguroCoin'  => 'Cash Points', // Adicione aqui o nome da sua Moeda (ROPS, Cash Points, Kafra Points, SeuRO Points, Créditos ou seja o que for.)
    'PagSeguroLock'  => false, // Trancar sistema de doações?




'CreditExchangeRate'        => 1.0,                        // The rate at which credits are exchanged for dollars.

    'MinDonationAmount'            => 2.0,                        // Minimum donation amount. (NOTE: Actual donations made that are less than this account won't be exchanged)
    'DonationCurrency'            => 'USD',                    // Preferred donation currency. Only donations made in this currency will be processed for credit deposits.
 
Olá, fiz a istalação do pagseguro no fluxcp do hercules porem,
Aparece esta mensagem quando vou fazer um teste :

Poderia me ajudar?

pagseguro.png

 
Olá, fiz a istalação do pagseguro no fluxcp do hercules porem,
Aparece esta mensagem quando vou fazer um teste :

Poderia me ajudar?

View attachment 6810
Consegui resolver!
O problema era a largura da pagina quando coloquei token do pagseguro,
Ele deu um enter sem eu permitir o numero foi pra baixo em vez de ficar na linha reta ^_^.

 
Back
Top