Changeset 82 for Dev/trunk/classes/SurveyCreationDatabaseInterface.php
- Timestamp:
- 08/24/11 17:52:20 (14 years ago)
- File:
-
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
Dev/trunk/classes/SurveyCreationDatabaseInterface.php
r81 r82 12 12 protected $surveyRDFWriter; 13 13 protected $surveyRDFReader; 14 14 protected $questionRDFWriter; 15 protected $questionRDFReader; 15 16 16 17 public function __construct($surveyID) … … 23 24 $this->surveyRDFWriter = new SurveyRDFWriter($surveyUID); 24 25 $this->surveyRDFReader = new SurveyRDFReader($surveyUID); 26 $this->questionRDFWriter = new QuestionRDFWriter(); 27 $this->questionRDFReader = new QuestionRDFReader(); 25 28 } 26 29 27 public function setSurveyInfo($survey )30 public function setSurveyInfo($survey,$user) 28 31 { 29 32 $sTitle = $survey['surveyTitle']; … … 32 35 $this->surveyRDFWriter->createSurvey($sTitle,$sDescription); 33 36 34 $sUserID = "Creator";37 $sUserID = $user['username']; 35 38 36 39 $this->surveyRDFWriter->setUserData($sUserID); … … 59 62 } 60 63 61 $this->surveyRDFWriter->addQuestion($qTitle,$qDescription,$qType,$qID,$qAnswers); 64 if(!$this->checkQuestionIDExists($qID)) 65 { 66 $this->questionRDFWriter->createQuestion($qTitle,$qDescription,$qType,$qID,"null","null",$qAnswers); 67 } 68 $this->surveyRDFWriter->addQuestion($qID); 62 69 63 70 $qNumber++; … … 65 72 66 73 $this->surveyRDFWriter->saveSurvey(); 74 $this->questionRDFWriter->saveQuestions(); 67 75 } 68 76 … … 71 79 $surveyInfo = array(); 72 80 81 $this->questionRDFReader->loadQuestions(); 82 73 83 $resultSurvey = $this->surveyRDFReader->getSurveyInfo(); 84 85 $surveyInfo['surveyID'] = $resultSurvey['info'][0]['?uid']->label; 86 $surveyInfo['surveyTitle'] = $resultSurvey['info'][0]['?title']->label; 87 $surveyInfo['surveyDescription'] = $resultSurvey['info'][0]['?description']->label; 88 $surveyInfo['surveyCreator'] = $resultSurvey['info'][0]['?creator']->label; 89 $surveyQuestionIDs = $resultSurvey['questionIDs']; 90 91 if($surveyQuestionIDs != false) 92 { 93 $qNumber = 1; 94 foreach($surveyQuestionIDs as $qID) 95 { 96 $questionID = $qID['?questionID']->label; 97 $surveyInfo['questionID'.$qNumber] = $questionID; 74 98 75 $surveyInfo['surveyID'] = substr($resultSurvey[0][0]['?uid'],9,strlen($resultSurvey[0][0]['?uid'])-11); 76 $surveyInfo['surveyTitle'] = substr($resultSurvey[0][0]['?title'],9,strlen($resultSurvey[0][0]['?title'])-11); 77 $surveyInfo['surveyDescription'] = substr($resultSurvey[0][0]['?description'],9,strlen($resultSurvey[0][0]['?description'])-11); 78 $surveyInfo['surveyCreator'] = substr($resultSurvey[0][0]['?creator'],9,strlen($resultSurvey[0][0]['?creator'])-11); 99 $questionTitleObject = $this->questionRDFReader->readQuestionTitle($questionID); 100 $surveyInfo['questionTitle'.$qNumber] = $questionTitleObject[0]['?questionTitle']->label; 79 101 80 for($qNumber = 1;$qNumber<=sizeof($resultSurvey[1][0]);$qNumber++) 81 { 82 $surveyInfo['questionID'.$qNumber] = substr($resultSurvey[1][3][$qNumber-1]['?questionID'],9,strlen($resultSurvey[1][3][$qNumber-1]['?questionID'])-11); 83 $surveyInfo['questionTitle'.$qNumber] = substr($resultSurvey[1][0][$qNumber-1]['?questionTitle'],9,strlen($resultSurvey[1][0][$qNumber-1]['?questionTitle'])-11); 84 $surveyInfo['questionDescription'.$qNumber] = substr($resultSurvey[1][1][$qNumber-1]['?questionDescription'],9,strlen($resultSurvey[1][1][$qNumber-1]['?questionDescription'])-11); 85 $surveyInfo['questionType'.$qNumber] = substr($resultSurvey[1][2][$qNumber-1]['?questionType'],9,strlen($resultSurvey[1][2][$qNumber-1]['?questionType'])-11); 102 $questionDescriptionObject = $this->questionRDFReader->readQuestionDescription($questionID); 103 $surveyInfo['questionDescription'.$qNumber] = $questionDescriptionObject[0]['?questionDescription']->label; 86 104 87 $resultAnswers = $this->surveyRDFReader->readSurveyAnswers($surveyInfo['questionID'.$qNumber]); 105 $questionTypeObject = $this->questionRDFReader->readQuestionType($questionID); 106 $surveyInfo['questionType'.$qNumber] = $questionTypeObject[0]['?questionType']->label; 88 107 89 if ($resultAnswers != null)90 { 91 for($aNumber = 1;$aNumber<=sizeof($resultAnswers);$aNumber++)108 $resultAnswers = $this->questionRDFReader->readQuestionAnswers($questionID); 109 110 if ($resultAnswers != null) 92 111 { 93 $surveyInfo['q'.$qNumber.'ans'.$aNumber] = substr($resultAnswers[$aNumber-1]['?answerDescription'],9,strlen($resultAnswers[$aNumber-1]['?answerDescription'])-11); 112 for($aNumber = 1;$aNumber<=sizeof($resultAnswers);$aNumber++) 113 { 114 $surveyInfo['q'.$qNumber.'ans'.$aNumber] = $resultAnswers[$aNumber-1]['?answerDescription']->label; 115 } 94 116 } 117 $resultAnswers = null; 118 $qNumber++; 95 119 } 96 120 } 97 121 98 122 return $surveyInfo; 99 123 } … … 111 135 } 112 136 } 113 137 114 138 foreach($surveyIDs as $surveyID) 115 139 { 116 140 $surveyTitle = $this->surveyRDFReader->getSurveyTitleByID($surveyID); 117 $surveys[$surveyID] = substr($surveyTitle[0]['?title'],9,strlen($surveyTitle[0]['?title'])-11);141 $surveys[$surveyID] = $surveyTitle[0]['?title']->label; 118 142 } 119 143 … … 124 148 { 125 149 $surveyTitleLiteral = $this->surveyRDFReader->getSurveyTitleByID($surveyID); 126 $surveyTitle = substr($surveyTitle[0]['?title'],9,strlen($surveyTitle[0]['?title'])-11);150 $surveyTitle = $surveyTitle[0]['?title']->label; 127 151 128 152 return $surveyTitle; 129 153 } 130 154 155 156 157 public function checkQuestionIDExists($qID) 158 { 159 $result = false; 160 161 $questionIDs = $this->questionRDFReader->readQuestionIDs(); 162 163 if ($questionIDs != null) 164 { 165 foreach($questionIDs as $questionID) 166 { 167 $id = $questionID['?questionID']->label; 168 if(!strcmp($id ,$qID)) 169 { 170 $result = true; 171 break; 172 } 173 } 174 } 175 176 return $result; 177 } 131 178 } 132 179 ?>
Note: See TracChangeset
for help on using the changeset viewer.