public function render_meta_box_descricoes($post) { $postId = $post->ID; $this->post_id = $postId; if ($postId != null) { $this->evento = Eventos::getInstance()->getById($postId, false); } ?> <div id="tabs"> <ul class="tabs"> <li><a href="#tabs-descricao">Descrição</a></li> <li><a href="#tabs-realizacao">Realização</a></li> <li><a href="#tabs-inscricao">Inscrição</a></li> <?php if ($this->templateExibir('campos_extras')) { ?> <li><a href="#tabs-dados">Dados Formulário</a></li> <?php } ?> <?php if ($this->evento->pago == 'pago') { ?> <li><a href="#tabs-treinamento">Treinamento</a></li> <?php } ?> <!-- <li><a href="#tabs-mensagens">Mensagens</a></li>--> <?php if ($this->templateExibir('secoes_extras')) { ?> <li><a href="#tabs-sessoesextras">Sessões Extras</a></li> <?php } ?> </ul> <div id="tabs-descricao"> <?php if (TGO_EVENTO_EVENTO_PAI === true) { echo "<div class=fields>"; echo "<h3>Herdar Configurações</h3>"; $eventos = Eventos::getInstance()->getEventosOrfaos($postId); $eventos = PLib::object_to_array($eventos); $eventos = Plib::array_to_key_value($eventos, 'id', 'titulo'); echo input_select($postId, 'id_evento_pai', 'Evento Pai:', $eventos, null, get_post_meta($postId, 'id_evento_pai', true), 'class=ajustes_visuais'); echo "</div>"; } echo "<div class=fields>"; echo "<h3>Chamadas Curtas</h3>"; if ($this->templateExibir('descricao_1')) { echo input_texto($postId, 'descricao_1', 'Descrição Curtíssima', 100); } if ($this->templateExibir('descricao_2')) { echo input_textarea($postId, 'descricao_2', 'Descrição Breve', 3); } echo "</div>"; echo "<div class=fields>"; echo "<h3>Apresentação completa</h3>"; if ($this->templateExibir('descricao_3')) { $value = get_post_meta($postId, 'descricao_3', true); wp_editor($value, 'descricao_3', array('textarea_rows' => get_option('default_post_edit_rows', 20))); } echo "</div>"; ?> </div> <div id="tabs-realizacao"> <?php // Organizador $organizadores = Plib::object_to_array(Organizadores::getInstance()->getAll()); $organizadores = Plib::array_to_key_value($organizadores, 'id', 'titulo'); if (count($organizadores) > 1) { echo "<div class=fields>"; echo "<h3>Organização</h3>"; if ($this->templateExibir('id_organizador')) { echo input_select($postId, 'id_organizador', 'Organizador:', $organizadores, null, $this->templateValorPadrao('id_organizador')); } else { if ($this->templateValorPadrao('id_organizador') != null) { echo input_hidden($postId, 'id_organizador', $this->templateValorPadrao('id_organizador')); } else { $organizadores = array_keys($organizadores); echo input_hidden($postId, 'id_organizador', $organizadores[0]); } } echo "</div>"; } // Instrutor if ($this->templateExibir('id_instrutor')) { $instrutores = Instrutores::getInstance()->getTodosArray(); echo input_select($postId, 'id_instrutor', 'Instrutor/Coordenador:', $instrutores); } echo "<div class=fields>"; echo "<h3>Data e Local</h3>"; echo input_data($postId, 'data', 'Data do Evento:'); echo input_hora($postId, 'hora', 'Hora de Inicio:'); if ($this->templateExibir('data_fim')) { echo input_data($postId, 'data_fim', 'Data Término:'); } echo input_hora($postId, 'hora_fim', 'Hora Término:'); if ($this->templateExibir('id_local')) { Locais::getInstance()->init(); $locais = Plib::object_to_array(Locais::getInstance()->getAll()); $locais = Plib::array_to_key_value($locais, 'id', 'titulo'); echo input_select($postId, 'id_local', 'Local:', $locais); } echo "</div>"; echo "<div class=fields>"; echo "<h3>Medidores de Conversão</h3>"; echo input_texto($postId, 'fb_conversion_track', 'Facebook Conversion Track:', 20); echo input_texto($postId, 'tw_conversion_track', 'Twitter Conversion Track:', 20); echo "</div>"; ?> </div> <div id="tabs-inscricao"> <?php // Data Inicio Inscrições echo "<div class=fields>"; echo "<h3>Inscrições</h3>"; echo input_data($postId, 'data_inicio_inscricoes', 'Inicio das Inscrições:'); echo input_data($postId, 'data_fim_inscricoes', 'Fim das Inscrições:'); // Pago ou Gratuito if ($this->templateExibir('pago')) { echo input_select($postId, 'pago', 'Tipo de Inscrição:', array('pago' => 'Paga', 'gratuito' => 'Gratuita'), null, null, 'class=ajustes_visuais'); } else { if ($this->templateValorPadrao('pago') != null) { echo input_hidden($postId, 'pago', $this->templateValorPadrao('pago')); } } if ($this->templateExibir('confirmacao')) { echo input_select($postId, 'confirmacao', 'Confirmação da Inscrição:', array('preinscricao' => 'Pré-inscrição', 'imediata' => 'Imediata', 'pagamento' => 'Após Confirmação do Pagamento', 'posterior' => 'Posteriormente pelo Organizador'), null); } else { if ($this->templateValorPadrao('confirmacao') != null) { echo input_hidden($postId, 'confirmacao', $this->templateValorPadrao('confirmacao')); } } if ($this->templateExibir('validacao_pessoa')) { echo input_select($postId, 'validacao_pessoa', 'Localizar Cadastro do Inscrito:', array('email' => 'Email', 'cpf' => 'CPF'), null, 'email'); } echo "</div>"; // Vagas if ($this->templateExibir('vagas')) { echo "<div class=fields>"; echo "<h3>Vagas</h3>"; echo input_numero($postId, 'vagas', 'Vagas Disponíveis:'); echo input_checkbox($postId, 'fila_espera', 'Fila de Espera'); echo "</div>"; } // Formas de pagamento echo "<div id=formas_pagamento class=fields>"; echo "<h3>Pagamento</h3>"; // Integração PagSeguro if (Integracoes::getInstance()->hasByServico('PagSeguro')) { echo input_checkbox($postId, 'pago_pagseguro', 'PagSeguro'); $integracoes = Plib::object_to_array(Integracoes::getInstance()->getByServico('PagSeguro')); $integracoes = Plib::array_to_key_value($integracoes, 'id', 'titulo'); echo input_select($postId, 'id_integracao_pagseguro', 'Integração PagSeguro:', $integracoes); } // Integração Cielo if (Integracoes::getInstance()->hasByServico('Cielo')) { echo input_checkbox($postId, 'pago_cielo', 'Cielo'); $integracoes = Plib::object_to_array(Integracoes::getInstance()->getByServico('Cielo')); $integracoes = Plib::array_to_key_value($integracoes, 'id', 'titulo'); echo input_select($postId, 'id_integracao_cielo', 'Integração Cielo:', $integracoes); } // Local de pagamento echo input_checkbox($postId, 'pago_dinheiro', 'Dinheiro'); $locais = Plib::object_to_array(Locais::getInstance()->getAll()); $locais = Plib::array_to_key_value($locais, 'id', 'titulo'); echo input_select($postId, 'id_local_pagamento', 'Local pagamenho Dinheiro:', $locais); echo input_checkbox($postId, 'pago_deposito', 'Depósito Bancário'); echo "</div>"; // Beta if ($this->templateExibir('beta')) { echo input_checkbox($postId, 'beta', 'Beta:'); } // Confirmação da Inscrição: //var_dump($this->evento->confirmacao); // $meta = get_post_meta($postId, 'confirmacao', true); // echo "'$meta'<br>"; //die(); ?> </div> <div id="tabs-dados"> <?php // Campo chave de validação da pessoa // Campos Extra if ($this->templateExibir('campos_extras')) { echo "<div class=fields>"; echo "<h3>Campos Extras</h3>"; echo input_textarea($postId, 'campos_extras', 'Campos Extras:', 10, "Utilizar:<br>nome_unico/Titulo do campo<br>Exemplo:<br>empresa/Empresa em que trabalha"); echo "</div>"; } if ($this->templateExibir('avaliacao')) { $questionarios = Plib::object_to_array(Questionarios::getInstance()->getAll()); $questionarios = Plib::array_to_key_value($questionarios, 'id', 'titulo'); echo input_select($postId, 'id_questionario', 'Questionário de Feedback:', $questionarios); } ?> </div> <!-- <div id="tabs-mensagens">--> <!-- --><?php // if ($this->evento){ // // Incluir formulário parcial de mensagens // Mensagens::getInstance()->setEvento($this->evento->id); // require_once PLUGINPATH. '/view/mensagens/partial_mensagens.php'; // } // ?> <!-- </div>--> <?php if ($this->evento->pago == 'pago') { ?> <div id="tabs-treinamento"> <?php echo "<div class=fields>"; echo "<h3>Treinamento</h3>"; // Publico Alvo if ($this->templateExibir('publico_alvo')) { echo input_textarea($postId, 'publico_alvo', 'Público Alvo', 2); } // Material Didático if ($this->templateExibir('material')) { echo input_textarea($postId, 'material', 'Material Didático oferecido:', 2); } // Certificado if ($this->templateExibir('certificado')) { echo input_textarea($postId, 'certificado', 'Certificado:', 1); } // Duração if ($this->templateExibir('duracao')) { echo input_textarea($postId, 'duracao', 'Duração:', 1); } if ($this->templateExibir('horarios')) { echo input_textarea($postId, 'horarios', 'Horários:', 1); } if ($this->templateExibir('requisitos')) { echo input_textarea($postId, 'requisitos', 'Pré-Requisitos:', 1); } // Valor // if ($this->templateExibir('valor')) // echo input_numero($postId, 'valor', 'Valor:'); echo "</div>"; echo "<div class=fields>"; echo "<h3>Conteúdo</h3>"; // Tópicos if ($this->templateExibir('topicos')) { echo input_textarea($postId, 'topicos', 'Tópicos:', 10, "Utilizar um tópico por linha. Identar com 3 espaços.<br>[v] Video, [a] Arquivo"); } // FAQ if ($this->templateExibir('faq')) { echo input_textarea($postId, 'faq', 'Perguntas Frequentes.:', 10, "Utilizar:<br>- Pergunta<Br>Resposta"); } echo "</div>"; ?> </div> <?php } ?> <?php if ($this->templateExibir('secoes_extras')) { ?> <div id="tabs-sessoesextras"> <?php $postId = $post->ID; // Cada secão if ($this->evento) { $secoes = $this->evento->getSecoesExtras(); if ($secoes != null) { foreach ($secoes as $secao => $titulo) { // var_dump($secoes); echo "<label for='secao_{$secao}'><div><p>{$titulo}</p></div></label>"; $value = get_post_meta($postId, 'secao_' . $secao, true); wp_editor($value, 'secao_' . $secao, array('textarea_rows' => get_option('default_post_edit_rows', 10))); } } } // Secões echo input_textarea($postId, 'secoes_extras', 'Secoes Extras:', 7, "Utilizar:<br>nome_unico/Titulo da seção"); ?> </div> <?php } ?> </div> <script> function ajustesVisuais(){ console.log(this); console.log(); if (jQuery("#pago").val() == "pago") { jQuery("#formas_pagamento").css("display","block"); } else { jQuery("#formas_pagamento").css("display","none"); } }; jQuery(function ($) { $(document ).ready(function() { $("#tabs").tabs(); $(".ajustes_visuais").on("change", function () { ajustesVisuais(); }); ajustesVisuais(); }); }); </script> <?php }
function tt_render_list_page($itens, $titulo) { //Create an instance of our package class... $testListTable = new TTListTable(); //Fetch, prepare, sort, and filter our data... if ($itens != null) { $testListTable->prepare_items($itens); } ?> <div class="wrap"> <div id="icon-users" class="icon32"><br/></div> <h2>Integrações</h2> <a href="admin.php?page=Integracoes&action=add-new" class="add-new-h2">Nova Integração</a> <!-- Forms are NOT created automatically, so you need to wrap the table in one to use features like bulk actions --> <form id="movies-filter" method="get"> <!-- For plugins, we also need to ensure that the form posts back to our current page --> <input type="hidden" name="page" value="<?php echo $_REQUEST['page']; ?> " /> <!-- Now we can render the completed list table --> <?php $testListTable->display(); ?> </form> <?php if (Integracoes::getInstance()->hasByServico('PagSeguro')) { ?> <h3>Instruções de configuração para PagSeguro</h3> Acessar painel do PagSeguro e configurar:<br><br> 1 - Em Preferências > Integracoes > Página de redicionamento - Expanda o campo e preencha em "Código de Transação para página de redicionamento": "transaction_id" (sem aspas);<br> 2 - "Salvar configurações"<br> 3 - Clique em "Gerar Token", salve o valor gerado para logo mais<br> 4 - Em Preferências > Integracoes > Habilitar "Notificação de transação"<br> 5 - Em Preferências > Integracoes > Notificação de transação, informar "Definir notificação de transações" com a URL apresentada na coluna <b>Url de Notificação</b> da integração PagSeguro<br> 6 - "Salvar configurações"<br> Pronto! <?php } ?> <?php if (Integracoes::getInstance()->hasByServico('Cielo')) { ?> <h3>Instruções de configuração para Cielo</h3> Acessar painel da Cielo e configurar:<br><br> 1 - Em Vendas Online > Configurações > Pagamentos<br> 2 - Preencha o campo URL de Retorno com o valor de "URL de Retorno"<br> 3 - Preencha o campo URL de Notificação com o valor de "URL de Notificação"<br> 4 - Preencha o campo URL de Mudança de Status com o valor de "URL de Mudança de Status"<br> 5 - Clique em "Salvar"<br> Pronto! <?php } ?> </div> <?php }
public static function processarNotificacao($id_integracao, $notificationCode) { // Logar notificacao self::logarNotificacao($_POST); /* @var $integracao Integracao */ $integracao = Integracoes::getInstance()->getById($id_integracao); // Processar notificação if (strtolower($integracao->servico) == 'pagseguro') { $transacao = PagSeguroUtil::getTransacaoNotificacao($integracao, $notificationCode); if (get_class($transacao) == 'PagSeguroTransaction') { $return = Inscricoes::getInstance()->processarTransacaoPagSeguro($transacao); if (get_class($return) != 'Inscricao') { throw new Exception('PagSeguro - ' . $return); } } else { throw new Exception("Falha ao obter transação da notificação: {$notificationCode}"); } } elseif (strtolower($integracao->servico) == 'cielo') { // Me notificar pra eu entender a coisa $actual_link = "http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"; enviarEmail(TGO_EVENTO_ADMIN, 'Notificacao cielo', 'URL: ' . $actual_link . '<br><br>GET:<pre>' . print_r($_POST, true) . '</pre><br><br>POST<pre>:' . print_r($_POST, true) . '</pre>'); $transacao = $_POST; $return = Inscricoes::getInstance()->processarTransacaoCielo($transacao); if (get_class($return) != 'Inscricao') { throw new Exception('Cielo - ' . $return); } else { echo '<status>OK</status>'; } } }
private static function delete($id) { Integracoes::getInstance()->delete($id); self::showList(); }
public function callbackPagamento($id_integracao, $transaction_id) { //echo "<h1>$transaction_id</h1>"; //?transaction_id=42E40F60-032A-4590-A357-D067CAA5858F // Validar o pagamento // Incluir PagSeguro include_once PLUGINPATH . '/vendor/PagSeguro/PagSeguroLibrary.php'; // Obter a transação retornada // Verificar situação /* @var $integracao Integracao */ $integracao = Integracoes::getInstance()->getById($id_integracao); $credentials = new PagSeguroAccountCredentials($integracao->client, $integracao->token); $transaction = PagSeguroTransactionSearchService::searchByCode($credentials, $transaction_id); $inscricao = Inscricoes::getInstance()->processarTransacaoPagSeguro($transaction); return $inscricao; }
/** * @return Integracao */ public function getIntegracaoCielo() { return Integracoes::getInstance()->getById($this->id_integracao_cielo); }