private function isSudahAngket($applicant) { /* Cari Angket Session */ $c = new Criteria(); $c->add(AngketpmbSessionPeer::TEST_APPLICANT_ID, $applicant->getId(), Criteria::EQUAL); $angketSession = AngketpmbSessionPeer::doSelectOne($c); if (!$angketSession) { return false; } /* Cari soal-soal */ $c = new Criteria(); $c->addAscendingOrderByColumn(AngketpmbSoalPeer::ORDERING); $soal = AngketpmbSoalPeer::doSelect($c); $soalCount = AngketpmbSoalPeer::doCount($c); if (!$soal) { return false; } /* Cari Jawaban yang pernah dipilih sebelumnya */ $c = new Criteria(); $c->add(AngketpmbSessionAnswerPeer::SESSION_ID, $angketSession->getId(), Criteria::EQUAL); $angketAnswer = AngketpmbSessionAnswerPeer::doSelect($c); $answerCount = AngketpmbSessionAnswerPeer::doCount($c); if ($answerCount < $soalCount) { return false; } $answerSoalId = array(); foreach ($angketAnswer as $a) { $answerSoalId[] = $a->getSoalId(); } foreach ($soal as $s) { if (!in_array($s->getId(), $answerSoalId)) { return false; } } return true; }