function gravarProvaPergunta(ProvaPergunta $prova_pergunta){ if (strlen($prova_pergunta->getTitulo())==0){ throw new Exception('Informe o título da pergunta!'); }else{ $prova_pergunta->Xtitulo = "'".$prova_pergunta->getTitulo()."'"; } if (!is_object($prova_pergunta->getTipoPergunta())){ throw new Exception('Informe o tipo da pergunta!'); }else{ $prova_pergunta->Xtipo_pergunta = $prova_pergunta->getTipoPergunta()->getId(); } if (!is_object($prova_pergunta->getTopico())){ throw new Exception('Informe o tópico da pergunta!'); }else{ $prova_pergunta->Xtopico = $prova_pergunta->getTopico()->getId(); } if (strlen($prova_pergunta->getDificuldade())==0){ throw new Exception('Selecione a dificuldade da perguta!'); }else{ $prova_pergunta->Xdificuldade = $prova_pergunta->getDificuldade(); } if (strlen($prova_pergunta->getFonte())==0){ $prova_pergunta->Xfonte = " NULL "; }else{ $prova_pergunta->Xfonte = "'".$prova_pergunta->getFonte()."'"; } if (strlen($prova_pergunta->getPeso())==0){ $prova_pergunta->Xpeso = " NULL "; }else{ $prova_pergunta->setPeso( str_replace(",",".",$prova_pergunta->getPeso()) ); $prova_pergunta->Xpeso = $prova_pergunta->getPeso(); } if (strlen($prova_pergunta->getPerguntaOrigem())==0){ throw new Exception('Qual origem desta pergunta?'); }else{ $prova_pergunta->Xpergunta_origem = $prova_pergunta->getPerguntaOrigem(); } if (strlen($prova_pergunta->getProvaId())==0){ throw new Exception('Problema ao identificar a oritem da prova. Tente novamente.'); }else{ $prova_pergunta->Xprova_id = $prova_pergunta->getProvaId(); } $provaPerguntaDAO = new ProvaPerguntaDAO(); $provaPerguntaDAO->setBancoDados($this->banco); $provaPerguntaDAO->gravaDadosProvaPergunta($prova_pergunta); #echo "<br><br>Pergunta: (".$prova_pergunta->getPerguntaOrigem().")"; #echo "<br>Qtde Respostas: ".$prova_pergunta->getQtdeResposta(); /* if ( $prova_pergunta->getPerguntaOrigem() == '3'){ echo "<br><br>"; print_r( $prova_pergunta->getResposta(0) ); echo "<br><br>"; print_r( $prova_pergunta->getResposta(1) ); echo "<br><br>"; print_r( $prova_pergunta->getResposta(2) ); echo "<br><br>"; print_r( $prova_pergunta->getResposta(3) ); echo "<br><br>"; print_r( $prova_pergunta->getResposta(4) ); echo "<br><br>"; } */ for ($i=0;$i<$prova_pergunta->getQtdeResposta();$i++){ $prova_pergunta->getResposta($i)->setPergunta($prova_pergunta->getId()); if (is_object($prova_pergunta->getResposta($i)->getRespostaFilho())) { $resposta_filho = new Resposta(); $resposta_filho->setId($prova_pergunta->getResposta($i)->getRespostaFilho()->getId()); $resposta_filho->setPergunta($prova_pergunta->getId()); $resposta_filho->setRespostaTexto($prova_pergunta->getResposta($i)->getRespostaFilho()->getRespostaTexto()); $resposta_filho->setRespostaCorreta($prova_pergunta->getResposta($i)->getRespostaFilho()->getRespostaCorreta()); #$resposta_filho->setRespostaFilho($prova_pergunta->getResposta($i)->getRespostaFilho()->getId()); $resposta_filho = $this->gravarProvaResposta($resposta_filho); $prova_pergunta->getResposta($i)->setRespostaFilho($resposta_filho); } $this->gravarProvaResposta($prova_pergunta->getResposta($i)); } $this->atualizarOrdemResposta($prova_pergunta); }