private static function showForm($action) { // Postando? if (count($_POST) > 0) { /* @var $inscricao Inscricao */ $inscricao = Inscricoes::getInstance()->getById(get_query_var('avaliacao') / 13); /* @var $evento Evento */ $questionario = $inscricao->evento()->getQuestionarioAvaliacao(); $perguntas = $questionario->getPerguntas(); $jaRespondeu = $inscricao->hasAvaliacaoResposta(1); $mensagem = null; foreach ($perguntas as $pergunta) { $resp = trim($_POST['input_' . $pergunta->id]); // var_dump($resp); if ($pergunta->obrigatoria && $resp == '') { setFlashError("Por favor, responda as perguntas obrigatórias (marcadas com *)"); break; } if ($resp != '') { $resposta = Respostas::getInstance()->createResposta($pergunta, $inscricao, $resp); $mensagem .= $pergunta->titulo . ': ' . $resp . '<br>'; } } if (!hasFlashError()) { setFlash("sucesso"); // Enviar email com respostas // $mensagem="Respostas:<br><br>".$mensagem; // $inscricao->evento()->organizador()->enviarEmail( // $inscricao->evento()->organizador()->email, // "Resposta - ".$questionario->titulo." - ".$inscricao->evento()->titulo." - ". $inscricao->pessoa()->nome, // $mensagem // ); // Creditar o gamification if (TGO_EVENTO_GAMIFICATION === true && !$jaRespondeu) { Gamification::getInstance()->broadcast('event_feedback', $inscricao->id_pessoa, $inscricao); } } } else { // Obter inscrição $inscricao = Inscricoes::getInstance()->getById(get_query_var('avaliacao') / 13); if ($inscricao == null) { die("Inscrição não localizada"); } // Validar inscrição if ($inscricao->confirmado != '1') { die("Inscrição não confirmada"); } } return 'avaliacao.php'; }
function column_default($item, $column_name) { // var_dump($item['*idLevel']); // var_dump($item); $level = Gamification::getInstance()->getLevel($item['idLevel']); // var_dump($level); // die(); switch ($column_name) { case 'nivel': return $level->getTitle(); // return "<pre>".print_r($inscricao->pessoa()->getExtrasArray(),true)."</pre>";// $inscricao->pessoa()->getExtrasExibicao(); // return "<pre>".print_r($inscricao->pessoa()->getExtrasArray(),true)."</pre>";// $inscricao->pessoa()->getExtrasExibicao(); default: return $item[$column_name]; //return print_r($item,true); //Show the whole array for troubleshooting purposes } }
function column_default($item, $column_name) { /* @var $item Event */ switch ($column_name) { case 'description': return $item->getDescription(); // return "<pre>".print_r($inscricao->pessoa()->getExtrasArray(),true)."</pre>";// $inscricao->pessoa()->getExtrasExibicao(); // return "<pre>".print_r($inscricao->pessoa()->getExtrasArray(),true)."</pre>";// $inscricao->pessoa()->getExtrasExibicao(); case 'allow_repetitions': return $item->getAllowRepetitions() ? "Sim" : ""; case 'reach_required_repetitions': return $item->getRequiredRepetitions(); case 'id_each_badge': if ($item->getIdEachBadge()) { $badge = Gamification::getInstance()->getBadge($item->getIdEachBadge()); return $badge->getTitle(); } return null; case 'id_reach_badge': if ($item->getIdReachBadge()) { $badge = Gamification::getInstance()->getBadge($item->getIdReachBadge()); return $badge->getTitle(); } case 'each_points': return $item->getEachPoints(); case 'reach_points': return $item->getReachPoints(); // case 'each_callback': // return $item->getEachCallback(); // case 'reach_callback': // return $item->getReachCallback(); // case 'each_callback': // return $item->getEachCallback(); // case 'reach_callback': // return $item->getReachCallback(); case 'alias': return $item->getAlias(); default: return null; } }
</div> <?php } else { ?> <h3 class="hndle"><span>Inserir Badge</span></h3> <div class="inside"> <?php echo label('description', 'Descrição', input_textarea_simples('description', 5, $_POST['description'])); echo label('alias', 'Alias', input_texto_simples('alias', 'Alias', 40, $_POST['alias'])); echo label('allow_repetitions', 'Permite Repetição', input_checkbox_padrao('allow_repetitions', 'Permite Repetição')); echo label('reach_required_repetitions', 'Repetições Requeridas', input_texto_simples('reach_required_repetitions', '', 5, $_POST['reach_required_repetitions'])); // Badge $badges = Gamification::getInstance()->getBadgesArray(); echo label('id_each_badge', 'Badge - para cada', input_select_simples('id_each_badge', 'Badge - para cada', $badges)); echo label('id_reach_badge', 'Badge - ao alcançar', input_select_simples('id_reach_badge', 'Badge - ao alcançar', $badges)); echo label('each_points', 'Pontos - para cada', input_texto_simples('each_points', '', 5, $_POST['each_points'])); echo label('reach_points', 'Pontos - ao alcançar', input_texto_simples('reach_points', '', 5, $_POST['reach_points'])); // 'each_callback' => 'Callback - para cada', // 'reach_callback' => 'Callback - ao alcançar', ?> </div> <div id="major-publishing-actions"> <div id="publishing-action"> <span class="spinner"></span> <input type="submit" name="publish" id="publish" class="button button-primary button-large" value="Salvar" accesskey="p"> </div>
private static function decorateRanking($ranking) { $return = array(); /* @var $rank UserScore */ foreach ($ranking as $rank) { // var_dump($rank); /* @var $pessoa Pessoa */ $pessoa = Pessoas::getInstance()->getById($rank->getIdUser()); $level = Gamification::getInstance()->getLevel($rank->getIdLevel()); // var_dump($pessoa->id_user); if ($pessoa->id_user > 0) { continue; } $r = array(); $r['idUser'] = $rank->getIdUser(); $r['idLevel'] = $rank->getIdLevel(); $r['points'] = $rank->getPoints(); // $r['levelTitle'] = $rank->getLevel()->getTitle(); $r['userName'] = $pessoa->primeiro_segundo_nome(); $r['userPicture'] = $pessoa->getPictureUrl(); $r['levelName'] = $level->getTitle(); $return[] = $r; } return $return; }
</div> </div> <?php } ?> <?php if (TGO_EVENTO_GAMIFICATION === true) { ?> <div id="postbox-container-2" class="postbox-container"> <div id="postexcerpt" class="postbox "> <h3 class="hndle"><span>Gamification</span></h3> <div class="inside"> <?php $gamification = Gamification::getInstance(); $gamification->setUserId($pessoa->id); $gamification->showUserScores(); $gamification->showUserLog(); $gamification->showUserEvents(); ?> <bR> <a href="admin.php?page=Gamification&action=addEventoPessoa&id_pessoa=<?php echo $pessoa->id; ?> " class="add-new-h2">Adicionar Evento a Pessoa</a> <a href="admin.php?page=Gamification&action=addBadgePessoa&id_pessoa=<?php echo $pessoa->id; ?> "
<br/> </div> <h2>Adicionar Evento a Pessoa</h2> <form method="post"> <div id="poststuff"> <div id="post-body" class="metabox-holder columns-2"> <div id="post-body-content"> <div class="postbox-container"> <div class="postbox"> <h3 class="hndle"><span>Evento</span></h3> <div class="inside"> <?php // Evento $eventos = Gamification::getInstance()->getEventosArray(); echo label('alias', 'Evento', input_select_simples('alias', 'Evento', $eventos)); // Pessoas $pessoas = Pessoas::getInstance()->getTodosArray(); echo label('id_pessoa', 'Pessoa', input_select_simples('id_pessoa', 'Pessoa', $pessoas, $_GET['id_pessoa'])); ?> </div> <div id="major-publishing-actions"> <div id="publishing-action"> <span class="spinner"></span> <input type="submit" name="publish" id="publish" class="button button-primary button-large" value="Salvar" accesskey="p"></div> <div class="clear"></div> </div> </div>
private static function addEvent($event = null) { // Postando? if (count($_POST) > 0) { if ($_POST['id']) { // Update?? die("Update não implementado"); } else { $event = new Event(); $event->setAlias($_POST['alias']); $event->setDescription($_POST['description']); $event->setAllowRepetitions($_POST['allow_repetitions'] == 1); if ($_POST['reach_required_repetitions']) { $event->setReachRequiredRepetitions($_POST['reach_required_repetitions']); } if ($_POST['id_each_badge']) { $badge = Gamification::getInstance()->getBadge($_POST['id_each_badge']); $event->setEachBadgeGranted($badge); } if ($_POST['id_reach_badge']) { $badge = Gamification::getInstance()->getBadge($_POST['id_reach_badge']); $event->setReachBadgeGranted($badge); } if ($_POST['each_points']) { $event->setEachPointsGranted($_POST['each_points']); } if ($_POST['reach_points']) { $event->setReachPointsGranted($_POST['reach_points']); } $event = Gamification::getInstance()->addEvent($event); } ControllerGamification::eventList(); } else { require_once PLUGINPATH . '/view/gamification/form_event.php'; } }
/** * Marca presença */ public function presenca() { if ($this->presente != 1) { $this->presente = 1; $this->confirmado = 1; Inscricoes::getInstance()->save($this->id, $this); if (TGO_EVENTO_GAMIFICATION === true) { // Primeira presença? if ($this->pessoa()->getCountConfirmados() == 1) { Gamification::getInstance()->broadcast('first_presence', $this->id_pessoa, $this); } else { Gamification::getInstance()->broadcast('event_presence', $this->id_pessoa, $this); } } } return $this; }