コード例 #1
0
ファイル: ezsurveyresult.php プロジェクト: heliopsis/ezsurvey
 function &fetchQuestionResultList($asObject = false, $persistent = true)
 {
     $rows = eZPersistentObject::fetchObjectList(eZSurveyQuestionResult::definition(), null, array('result_id' => $this->attribute('id')), false, null, $asObject);
     if ($asObject) {
         return $rows;
     }
     $extraResultArray = array();
     if ($persistent === true) {
         $extraResults = eZPersistentObject::fetchObjectList(eZSurveyQuestionMetaData::definition(), null, array('result_id' => $this->attribute('id')), false, null, $asObject);
         if (count($extraResults) > 0) {
             foreach ($extraResults as $extraResult) {
                 $extraResultArray[$extraResult['question_id']] = $extraResult;
             }
         }
     }
     $resultRows = array();
     foreach ($rows as $row) {
         if (!isset($resultRows[(string) $row['question_id']])) {
             $resultRows[(string) $row['question_id']] = array();
         }
         $resultRows[(string) $row['question_id']]['content'][$row['text']] = $row['text'];
         $resultRows[(string) $row['question_id']]['text'] = $row['text'];
         if (isset($extraResultArray[(string) $row['question_id']])) {
             $resultRows[(string) $row['question_id']]['extra_info'] = $extraResultArray[(string) $row['question_id']];
         }
     }
     return $resultRows;
 }
コード例 #2
0
 function storeResult($resultID, $params)
 {
     parent::storeResult($resultID, $params);
     $answerArray = $this->extraInfoAnswer($params);
     if (count($answerArray) > 0) {
         foreach ($answerArray as $value => $content) {
             $questionMetaData = eZSurveyQuestionMetaData::instance($resultID, $this->ID, $this->OriginalID, $value, $content);
         }
     } else {
         $questionMetaData = eZSurveyQuestionMetaData::instance($resultID, $this->ID, $this->OriginalID, '', '');
     }
     $questionMetaData->store();
 }
コード例 #3
0
 static function instance($resultID, $questionID, $questionOriginalID, $name = false, $value = false)
 {
     $rows = array('result_id' => $resultID, 'question_id' => $questionID, 'question_original_id' => $questionOriginalID);
     $surveyResult = eZPersistentObject::fetchObject(eZSurveyQuestionMetaData::definition(), null, array('result_id' => $resultID, 'question_id' => $questionID, 'question_original_id' => $questionOriginalID));
     if ($surveyResult) {
         if ($name !== false) {
             $surveyResult->setAttribute('name', $name);
         }
         if ($value !== false) {
             $surveyResult->setAttribute('value', $value);
         }
         return $surveyResult;
     }
     if ($name !== false) {
         $rows['name'] = $name;
     }
     if ($value !== false) {
         $rows['value'] = $value;
     }
     return new eZSurveyQuestionMetaData($rows);
 }