Exemplo n.º 1
0
 /**
  *
  * @param <GameProgress> $gameProgress
  * @return <Array>
  *
  */
 public function getSpyQuestions($gameProgress)
 {
     $user = $_SESSION['loggedin_user'];
     settype($gameProgress, "object");
     settype($gameProgress->friend, "object");
     settype($gameProgress->csp, "object");
     settype($gameProgress->csp->user, "object");
     settype($gameProgress->csp->artifact, "object");
     settype($gameProgress->progressType, "object");
     settype($gameProgress->friend->user, "object");
     $classvar = get_class_vars("UserProfile");
     $class = new ReflectionClass("UserProfile");
     $properties = $class->getProperties();
     //unsetting explicit type , user,imgurl and id
     unset($properties[0]);
     unset($properties[1]);
     unset($properties[11]);
     unset($properties[12]);
     $gameUtil = new GameUtil();
     $randomIndex = $gameUtil->giveRandomNumbers();
     $gamedao = new GameDAO();
     $dataArray = $gamedao->getSpyQuestion($user, $gameProgress);
     //Cannot spy same person twice
     if ($dataArray == null) {
         return null;
     }
     $questioniar = array();
     for ($count = 0; $count < 5; $count++) {
         //randomizing questions
         $question = new Questioniar();
         $tempProperty = $properties[$randomIndex[$count]]->name;
         $question->question = $tempProperty;
         $randomOptions = $gameUtil->giveUniqueRandomOptions();
         $question->optionOne = $dataArray[$randomOptions[0]]->{$tempProperty};
         //accessing random data element and getting its
         $question->optionTwo = $dataArray[$randomOptions[1]]->{$tempProperty};
         $question->optionThree = $dataArray[$randomOptions[2]]->{$tempProperty};
         array_push($questioniar, $question);
     }
     return $questioniar;
 }