function column_default($item, $column_name) { /* @var $desconto Desconto */ $desconto = $this->itemsObj[$item['id']]; switch ($column_name) { case 'desconto': if ($item['desconto_por'] == 'percentual') { return $item['desconto'] . '%'; } else { return PLib::format_cash($item['desconto']); } break; case 'inscritos': $inscritos = $desconto->getQtdInscritos(); if ($inscritos > 0) { $inscritos = "<span style='color:blue;'>" . $inscritos . "</span>"; } $confirmados = PLib::coalesce($desconto->getQtdConfirmados(), 0); $restantes = $desconto->getQuantidadeRestante(); if ($confirmados > 0 && $restantes == 0) { $confirmados = "<span style='color:green;'>" . $confirmados . "</span>"; } else { if ($confirmados > 0) { $confirmados = "<span style='color:blue;'>" . $confirmados . "</span>"; } } return $inscritos . '/' . $confirmados; break; case 'pessoa': return '<a href="admin.php?page=Pessoas&action=view&id=' . $desconto->id_pessoa . '">' . $desconto->pessoa()->nome . '</a>'; break; case 'validade': return PLib::date_relative($desconto->data_validade); break; case 'vagas': $restantes = $desconto->getQuantidadeRestante(); if ($restantes == 0) { $restantes = "<span style='color:green;'>" . $restantes . "</span>"; } return $desconto->quantidade . '/' . $restantes; break; default: return $item[$column_name]; //return print_r($item,true); //Show the whole array for troubleshooting purposes } }
function column_title($item) { /* @var $inscricao Inscricao */ $inscricao = $this->itemsObj[$item['id']]; $link = $inscricao->getLinkPagamento(); if ($inscricao->pessoa() == null) { return "Inscrição sem pessoa?"; } // Começar retorno $return = '<a href="admin.php?page=Pessoas&action=view&id=' . $item['id_pessoa'] . '">' . PLib::capitalize_name($inscricao->pessoa->nome, 35) . '</a><br> <img src="' . $inscricao->pessoa()->getPictureUrl(80) . '" style="width:80px; margin-right: 8px; float:left;">'; $return .= '</b> '; // Ações $actions = array('link' => '<a href="' . $link . '" target=_blank>Link Wizard</a>', 'edit' => '<a href="admin.php?page=Inscricoes&action=edit&id=' . $item['id'] . '">Editar</a>'); if (PLib::coalesce($inscricao->confirmado, 0) == 0) { $actions['delete'] = '<a href="admin.php?page=Inscricoes&action=delete&id=' . $item['id'] . '&id_evento=' . $item['id_evento'] . '">Excluir</a>'; } // Contar inscrições $inscricoes = count(Inscricoes::getInstance()->getByPessoa($item['id_pessoa'])); if ($inscricoes == 1) { $inscricoes = "*"; } else { $inscricoes = "({$inscricoes})"; } $return .= $inscricoes . '<br>Ticket: ' . $item['id']; $return .= '<br>Inscrição: ' . Plib::date_relative($item['data_inscricao'], true) . " (" . PLib::days_between_dates($item['data_inscricao']) . " dias)"; if ($item['id_preco'] != "") { $return .= '<br>Categoria: ' . $inscricao->categoria()->titulo; } if ($item['id_preco'] != "") { $return .= '<br>Lote: ' . $inscricao->preco()->titulo; } if ($inscricao->valor_inscricao) { $return .= '<br>Valor Inscrição: ' . PLib::format_cash($inscricao->valor_inscricao); } // if ($item['codigo_gateway']){ //$return.= '<br>'.$item['codigo_gateway']; // } $return = '<div class=list_inscricoes_title>' . $return . '</div>'; $return .= ' ' . $this->row_actions($actions); return $return; }
?> <?php if ($pergunta->tip_pergunta == 'star') { ?> $('#rate_<?php echo $pergunta->id; ?> ').raty( { number: 5, scoreName: 'input_<?php echo $pergunta->id; ?> ', score: <?php echo \TiagoGouvea\PLib::coalesce($_POST['input_' . $pergunta->id], 0); ?> , target: '#div_<?php echo $pergunta->id; ?> ', hints: ['Ruim', 'Regular', 'Bom', 'Ótimo', 'Excelente'] }); <?php } ?> <?php } ?> </script>
public static function decorateEvento(Evento $evento, $todosDetalhes = false) { $nEvento = array(); $nEvento[id] = $evento->id; $nEvento[titulo] = $evento->titulo; $nEvento[data] = $evento->data; $nEvento[pago] = $evento->pago == 'pago'; $nEvento[realizado] = $evento->realizado(); $nEvento[acontecendo] = $evento->acontecendo(); $nEvento[no_futuro] = $evento->noFuturo(); $nEvento[aconteceu_em_dois_dias] = $evento->aconteceuEmDoisDias(); $nEvento[comeca_em_duas_horas] = $evento->comecaEmDuasHoras(); $nEvento[vagas] = PLib::coalesce($evento->vagas, 0); $nEvento[qtd_inscritos] = $evento->qtdInscritos(); $nEvento[qtd_confirmados] = $evento->qtdConfirmados(); if ($todosDetalhes) { $nEvento[vagas_disponiveis] = $evento->vagasDisponiveis(); $nEvento[qtd_pre_inscritos] = $evento->qtdPreInscritos(); $nEvento[qtd_nao_confirmados] = $evento->qtdNaoConfirmados(); $nEvento[qtd_cancelados] = $evento->qtdCancelados(); $nEvento[qtd_inscritos_novos] = $evento->qtdInscritosNovos(); $nEvento[qtd_presentes] = $evento->qtdPresentes(); $nEvento[qtd_fila_espera] = $evento->qtdFilaEspera(); $nEvento[permite_inscricao] = $evento->inscricaoAberta(); $nEvento[permite_confirmacao] = $evento->permiteConfirmar(); $nEvento[permite_presenca] = $evento->permitirPresenca(); $nEvento[validacao_pessoa] = PLib::coalesce($evento->validacao_pessoa, 'email'); $nEvento[fila_espera] = PLib::coalesce($evento->fila_espera, 0) == 1; $nEvento[precos] = ControllerApi::decoratePrecos($evento->getPrecos()); $nEvento[valor_pago] = $evento->getValorPago(); } return $nEvento; }
public function validarEtapaChave() { // De acordo com indetificação principal? if ($this->campoChave == 'cpf') { $this->valorChave = PLib::coalesce($_POST['cpf'], $_GET['cpf']); $cpf = PLib::validade_cpf($this->valorChave); if ($cpf === fase) { $this->erro = "Informe um CPF válido."; } else { $this->valorChave = Plib::str_mask(PLib::only_numbers($this->valorChave), "###.###.###-##"); } } else { $this->valorChave = sanitize_email($_POST['email']); $email = is_email($this->valorChave); if (!$email) { $this->erro = "Informe um email válido."; } else { $this->valorChave = trim(strtolower($this->valorChave)); } } if ($this->erro == null) { $this->avancar = true; $obterPor = 'getBy' . ucfirst($this->campoChave); // Tentar localizar pessoa $this->pessoa = Pessoas::getInstance()->{$obterPor}($this->valorChave); // Encontramos alguém? if ($this->pessoa != null) { // Trazer dados para sessão $_SESSION['id_pessoa'] = $this->pessoa->id; $this->pessoaNome = $this->pessoa->nome; } else { $this->pessoa = new Pessoa(); // Tentar obter a pessoa por uma integração? /** @var $integracao Integracao */ $integracao = Integracoes::getInstance()->getByServico('PhormarPessoa'); if ($integracao) { $pessoaIntegragao = $integracao->getPessoa($this->valorChave); if ($pessoaIntegragao != null) { $this->pessoa = $pessoaIntegragao; // var_dump($pessoaIntegragao->extras); // var_dump($this->pessoa); // die('ok'); // Salvar pessoa, certificar que esteja registrada $this->certificarPessoa(); } // var_dump($pessoaIntegragao); } // Nova pessoa $this->pessoa->newsletter = true; } $_SESSION['inscricao_chave'] = $this->valorChave; // if ($debug) // PLib::var_dump($this->pessoa,"Pessoa"); // Se confirmação imediata if ($this->evento->confirmacao == 'imediata' || $this->evento->confirmacao == 'posterior') { $this->avancarTexto = "Concluir Inscrição"; } } if ($this->erro == null) { // Aplicar desconto? if ($_POST['ticket'] != null) { $result = Inscricoes::getInstance()->aplicarTicket($this->evento, $_POST['ticket']); if ($result !== true) { $erro = $result; } } } }
<h3 class="hndle"><span><?php echo $titulo; ?> </span></h3> <input type="hidden" name="id" value="<?php echo $evento->id; ?> "> <div class="inside"> <?php $assunto = stripslashes(PLib::coalesce($_POST['assunto'], $evento->post_title)); if ($subAction == 'confirmados') { $mensagem = PLib::coalesce($_POST['mensagem'], $evento->organizador()->email_confirmacao); } else { if ($subAction == 'naoConfirmados') { $mensagem = PLib::coalesce($_POST['mensagem'], $evento->organizador()->email_semvagas); } } $mensagem = stripslashes(str_replace("<br />", "", $mensagem)); echo label('assunto', 'Assunto', input_texto_simples('assunto', 'Assunto', 80, $assunto)); echo label('mensagem', 'Mensagem', input_textarea_simples('mensagem', 20, $mensagem), "Variáveis disponíveis para utilização:<br>" . getVariaveis($event) . '<br><br>Ao final do email irá uma linha simples de assinatura contendo: ' . $evento->organizador()->titulo); ?> </div> <div id="major-publishing-actions"> <div id="publishing-action"> <input type="hidden" name="preview" id="preview" value=""> <input type="button" class="button button-primary button-large" value="Pré-visualizar" onclick="javascript:document.getElementById('preview').value='1';document.getElementById('form_email').submit();"> <input type="submit" class="button button-primary button-large" value="Enviar" onclick="javascript:document.getElementById('preview').value='';document.getElementById('form_email').submit();"></div> <div class="clear"></div> </div>
/** * Gera a imagem de certificado do inscrito */ public static function certificado($id_inscricao) { require_once PLUGINPATH . '/vendor/TiagoGouvea/PHPCertificate/PHPCertificate.php'; /* @var $inscricao Inscricao */ $inscricao = Inscricoes::getInstance()->getById($id_inscricao); if ($inscricao == null) { die; } $imagem = $inscricao->evento()->getCertificadoArquivo(); // Criar e exibir certificado $certificate = new PHPCertificate($imagem); // Incluir nome $fontColor = array('r' => 0, 'g' => 0, 'b' => 0); $certificate->setFont('OpenSans-Light', 38, $fontColor); $certificate->setPosition(null, PLib::coalesce($inscricao->evento()->certificado_altura_nome, 420), 0); $certificate->setText(1, $inscricao->pessoa()->nome); $certificate->showImage(); }
/** * @return Questionario */ public function getQuestionarioAvaliacao() { return Questionarios::getInstance()->getById(PLib::coalesce($this->id_questionario, 1)); }
/** * Retorna as ações para a inscrição * @param $ajax * @return null|string */ public function getSituacaoAcoes($ajax) { $return = null; $actions = null; $evento = $this->evento(); if ($ajax) { if (!$evento->realizado() && PLib::coalesce($this->confirmado, 0) == 0) { if (PLib::coalesce($this->valor_inscricao, 0) > 0) { $actions = "\n <a href='#' onclick='javascript:confirmarInscricao(" . $this->id . ", \"" . $this->valor_inscricao . "\",\"Dinheiro\");return false;'>Confirmar (dinheiro)</a><br>\n <a href='#' onclick='javascript:confirmarInscricao(" . $this->id . ", \"" . $this->valor_inscricao . "\",\"Depósito\");return false;'>Confirmar (depósito)</a><br>"; } else { $actions = "\n <a href='#' onclick='javascript:confirmarInscricao(" . $this->id . ");return false;'>Confirmar Inscrição</a><br>"; } } if (!$evento->realizado() || $evento->acontecendo()) { $actions .= "<a href='#' onclick='javascript:cancelarInscricao(" . $this->id . ");return false;'>Cancelar</a>"; } if (!$evento->realizado() && $this->confirmado == 1 && $this->evento()->pago == 'pago' && PLib::coalesce($this->valor_pago, 0) == 0) { $actions .= "<a href='#' onclick='javascript:informarValorPagoInscricao(" . $this->id . ",'" . $this->valor_inscricao . "','Dinheiro');return false;'>Informar Valor Pago</a>"; } if (($evento->acontecendo() || $evento->realizado()) && $this->presente == null) { $actions .= "<a href='#' onclick='javascript:marcarPresenca(" . $this->id . ");return false;'>Marca Presença</a>"; } if ($evento->realizado() && $this->presente == 1 && $evento->hasCertificadoArquivo()) { $actions .= "<a href='" . $this->getLinkCertificado() . "' target=_blank>Certificado</a>"; } } else { if (!$evento->realizado() && PLib::coalesce($this->confirmado, 0) == 0) { $actions = "<a href='?confirmarInscricao={$this->id}'>Confirmar</a>"; } } $return = "<div class='row-actions'>\n <span class='view'>" . $actions . "</span>\n </div>"; return $return; }
} if (strpos($request, site_url() . '/crontab/hora/') !== false) { ControllerCrontab::hora(); } die; } // Aunteticar? if ($_POST && $_POST['controller'] == 'pessoa') { // var_dump($_POST); if ($_POST['action'] == 'autenticar') { ControllerPessoas::autenticar(); } if ($_POST['action'] == 'recuperar-senha') { ControllerPessoas::recuperarSenha(); } if ($_POST['action'] == 'atualizar-perfil') { ControllerPessoas::atualizarPerfil(); } } if (isset($_GET['logout'])) { ControllerPessoas::logout(); } // Recebendo uma notificação de um gateway? if (isset($_GET['notificacao_gateway']) && isset($_GET['id_integracao'])) { ControllerInscricoes::processarNotificacao($_GET['id_integracao'], PLib::coalesce($_POST['notificationCode'], $_GET['notificationCode'])); exit; } if ($_GET['page'] == 'Eventos' && $_GET['id'] != null) { set_the_evento(Eventos::getInstance()->getById($_GET['id'])); } validarPlugin();
/** * @param $evento Evento * @param $pessoa Pessoa * @param $inscricao Inscricao */ function etapaConteudo($evento, $pessoa, $inscricao) { $estados = array("AC" => "Acre", "AL" => "Alagoas", "AM" => "Amazonas", "AP" => "Amapá", "BA" => "Bahia", "CE" => "Ceará", "DF" => "Distrito Federal", "ES" => "Espírito Santo", "GO" => "Goiás", "MA" => "Maranhão", "MT" => "Mato Grosso", "MS" => "Mato Grosso do Sul", "MG" => "Minas Gerais", "PA" => "Pará", "PB" => "Paraíba", "PR" => "Paraná", "PE" => "Pernambuco", "PI" => "Piauí", "RJ" => "Rio de Janeiro", "RN" => "Rio Grande do Norte", "RO" => "Rondônia", "RS" => "Rio Grande do Sul", "RR" => "Roraima", "SC" => "Santa Catarina", "SE" => "Sergipe", "SP" => "São Paulo", "TO" => "Tocantins"); ?> <input type="hidden" name="c_utmz" id="c_utmz" value="" /> <script type="text/javascript"> function read_cookie(a){ var b = a + "="; var c = document.cookie.split(";"); for (var d = 0; d < c.length; d++) { var e = c[d]; while (e.charAt(0) == " ")e = e.substring(1, e.length); if (e.indexOf(b)==0){ return e.substring(b.length,e.length) } } return 'tiago'; } try{ document.getElementById("c_utmz").value=read_cookie("__utmz"); }catch(err){} </script> <h4>Nome</h4> <div class="field-wrapper"> <?php echo input_texto_simples('nome', '', 30, PLib::coalesce($_POST['nome'], $pessoa->nome)); ?> </div> <h4>Email</h4> <div class="field-wrapper"> <?php echo input_texto_simples('email', '', 30, PLib::coalesce($_POST['email'], $pessoa->email)); ?> </div> <h4>Celular</h4> <div class="field-wrapper"> <?php echo input_texto_simples('celular', '', 30, PLib::coalesce($_POST['celular'], $pessoa->celular)); ?> </div> <?php if ($evento->confirmacao != 'preinscricao' && $evento->id_organizador == 597) { ?> <h4>Endereço</h4> <div class="field-wrapper"> <?php echo input_texto_simples('end_cep', 'CEP', 30, $pessoa->end_cep, 'onkeypress="javascript:MascaraCep(this);"'); ?> </div> <div class="field-wrapper"> <?php echo input_texto_simples('end_logradouro', 'Logradouro', 30, $pessoa->end_logradouro); ?> </div> <div class="fourcol column"> <div class="field-wrapper"> <?php echo input_texto_simples('end_numero', 'Numero', 30, $pessoa->end_numero); ?> </div> </div> <div class=""> <div class="field-wrapper"> <?php echo input_texto_simples('end_complemento', 'Complemento', 30, $pessoa->end_complemento); ?> </div> </div> <div class=""> <div class="field-wrapper"> <?php echo input_texto_simples('end_bairro', 'Bairro', 30, $pessoa->end_bairro); ?> </div> </div> <div class=""> <div class="field-wrapper"> <?php echo input_texto_simples('end_cidade', 'Cidade', 30, $pessoa->end_cidade); ?> </div> </div> <div class=""> <div class="field-wrapper"> <?php echo input_select_simples('end_estado', 'Estado', $estados, $pessoa->end_estado); ?> </div> </div> <?php } ?> <?php // Existem campos extras? if ($evento->campos_extras != null) { // echo "<br><h3>Informações extra</h3><p>Por favor, preencha adequadamente os campos abaixo, pois em determinados eventos aprovaremos a inscrição de acordo com estes dados.</p>"; $camposExtra = ''; // Obter extras da pessoa // Obter extras para exibição $pessoaExtras = $pessoa->extras; if ($pessoaExtras != null) { $pessoaExtras = json_decode($pessoaExtras); } $campos_extra = $evento->getCamposExtras(); foreach ($campos_extra as $extraIndice => $extraTitulo) { ?> <?php // Este dado já existe nesta pessoa? $pessoaExtra = $pessoaExtras->{$extraIndice}; if ($_POST[$extraIndice] != null) { $pessoaExtra = $_POST[$extraIndice]; } else { if ($pessoaExtra != null) { $pessoaExtra = PLib::unicode_to_utf8($pessoaExtra->valor); } } ?> <div class=""> <?php if (strpos($extraTitulo, '[ ]') !== false) { $extraTitulo = str_replace('[ ]', '', $extraTitulo); echo input_checkbox_padrao($extraIndice, $extraTitulo, $pessoaExtra); } elseif (strpos($extraTitulo, '[file]') !== false) { $extraTitulo = str_replace('[file]', '', $extraTitulo); echo "<h4>{$extraTitulo}</h4>"; echo "<div class=field-wrapper>"; echo "<input type='file' name='{$extraIndice}' id='{$extraIndice}'>"; echo "</div>"; } elseif (strpos($extraTitulo, '[') !== false && strpos($extraTitulo, ']') !== false) { // Criar select $opcoes = substr($extraTitulo, strpos($extraTitulo, '[')); $extraTitulo = str_replace($opcoes, "", $extraTitulo); $opcoes = substr($opcoes, 1, strlen($opcoes) - 2); $opcoes = explode(",", $opcoes); $select = array(); foreach ($opcoes as $opcao) { $select[$opcao] = $opcao; } echo "<h4>{$extraTitulo}</h4>"; $return = "<select name={$extraIndice} id={$extraIndice} placeholder='{$extraTitulo}'>"; foreach ($select as $chave => $valor) { $selecionado = $_POST[$extraIndice]; $selected = $selecionado != null && $chave == $selecionado ? "selected" : ""; $return .= "<option value='{$chave}' {$selected}>{$valor}</option>"; } $return .= "</select>"; echo "<div class=field-wrapper>{$return}</div>"; } elseif (strpos($extraTitulo, '( )') !== false) { // Criar Radios $opcoes = substr($extraTitulo, strpos($extraTitulo, '(')); $extraTitulo = str_replace($opcoes, "", $extraTitulo); $opcoes = substr($opcoes, 0, strlen($opcoes)); $opcoes = explode(",", $opcoes); $select = array(); $i = 0; foreach ($opcoes as $opcao) { $i++; $id = "option_" . $i; $opcao = str_replace("( )", "", trim($opcao)); $return .= label($id, $opcao, input_radio_padrao($extraIndice, $opcao, null, null, null, $id)); } echo "<h4>{$extraTitulo}</h4>"; echo "<div class=field-wrapper>{$return}</div>"; } else { echo "<h4>{$extraTitulo}</h4>"; echo "<div class=field-wrapper>"; echo input_texto_simples($extraIndice, '', 30, $pessoaExtra); echo "</div>"; } ?> </div> <?php } } ?> <?php }
// Totalizadores $valorDisponivel = 0; $valorAReceber = 0; /* @var $inscrito Inscricao */ foreach ($inscritos as $inscrito) { if ($inscrito->status_gateway == 4) { $valorDisponivel = $valorDisponivel + PLib::coalesce($inscrito->valor_liquido, $inscrito->valor_pago); } else { if ($inscrito->status_gateway == 3) { $valorAReceber = $valorAReceber + PLib::coalesce($inscrito->valor_liquido, $inscrito->valor_pago); } } echo "<tr>\n <td>" . $inscrito->pessoa()->nome . '</td> <td>' . $inscrito->titulo_forma_pagamento() . '</td> <td>' . PLib::format_cash($inscrito->valor_pago) . '</td> <td>' . PLib::format_cash(PLib::coalesce($inscrito->valor_liquido, $inscrito->valor_pago)) . '</td> <td>' . $inscrito->titulo_status_gateway() . '</td> </tr>'; } ?> </table> <br><br> <h3>Gateway PagSeguro</h3> Valor Disponível: <?php echo PLib::format_cash($valorDisponivel); ?> <br> Valor a Receber: <?php echo PLib::format_cash($valorAReceber); ?>