Changeset 105 for Dev/trunk/classes
- Timestamp:
- 09/19/11 13:06:37 (14 years ago)
- Location:
- Dev/trunk
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
Dev/trunk
- Property svn:ignore
-
old new 1 data 1 2 nbproject
-
- Property svn:ignore
-
Dev/trunk/classes/DashboardCreationDatabaseInterface.php
r100 r105 46 46 while(isset($dashboard['g'.$gNumber.'type'.$tNumber])) 47 47 { 48 48 $gTypes[] = $dashboard['g'.$gNumber.'type'.$tNumber]; 49 $tNumber++; 49 50 } 50 51 $gData = array(); 52 $dNumber = 1; 53 while(isset($dashboard['g'.$dNumber.'datatype'.$tNumber]) && isset($dashboard['g'.$gNumber.'dataid'.$dNumber])) 54 { 55 $dData = array(); 56 $dData['type'] = $dashboard['g'.$gNumber.'datatype'.$dNumber]; 57 $dData['id'] = $dashboard['g'.$gNumber.'dataid'.$dNumber]; 58 $gData[] = $dData; 59 $dNumber++; 60 } 51 61 } 52 62 } -
Dev/trunk/classes/QuestionRDFReader.php
r91 r105 31 31 } 32 32 33 public function readQuestionBy ID($questionID)33 public function readQuestionByCode($questionCode) 34 34 { 35 35 $result = array(); 36 $result['title'] = $this->readQuestionTitle($question ID);37 $result['description'] = $this->readQuestionDescription($question ID);38 $result['type'] = $this->readQuestionType($question ID);39 $result['code'] = $this->readQuestionCode($question ID);40 $result['category'] = $this->readQuestionCategory($question ID);41 $result['answers'] = $this->readQuestionAnswers($question ID);36 $result['title'] = $this->readQuestionTitle($questionCode); 37 $result['description'] = $this->readQuestionDescription($questionCode); 38 $result['type'] = $this->readQuestionType($questionCode); 39 $result['code'] = $this->readQuestionCode($questionCode); 40 $result['category'] = $this->readQuestionCategory($questionCode); 41 $result['answers'] = $this->readQuestionAnswers($questionCode); 42 42 43 43 return $result; 44 44 } 45 46 public function readQuestionIDs() 47 { 48 $result = null; 49 50 if(file_exists($this->filePath.'questions.rdf')) 51 { 52 // Create empty MemModel 53 $factory = new ModelFactory(); 54 $tempmodel= $factory->getDefaultModel(); 55 $tempmodel->load($this->filePath.'questions.rdf'); 56 57 $querystring = ' 58 PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> 59 PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> 60 SELECT ?questionID 61 WHERE 62 { 63 _question predicates:resource_type resources:question ; 64 predicates:uid ?questionID 65 }'; 66 67 $result = $tempmodel->sparqlQuery($querystring); 68 } 69 return $result; 70 } 71 45 72 46 public function readQuestionCodes() 73 47 { … … 96 70 } 97 71 98 public function readQuestionTitle($question ID)72 public function readQuestionTitle($questionCode) 99 73 { 100 74 $querystring = ' … … 103 77 SELECT ?questionTitle 104 78 WHERE 105 { 79 { 106 80 _question predicates:resource_type resources:question ; 107 predicates: uid "' . $questionID. '" ;81 predicates:question_code "' . $questionCode . '" ; 108 82 predicates:title ?questionTitle 109 83 }'; … … 114 88 } 115 89 116 public function readQuestionDescription($question ID)90 public function readQuestionDescription($questionCode) 117 91 { 118 92 $querystring = ' … … 123 97 { 124 98 _question predicates:resource_type resources:question ; 125 predicates: uid "' . $questionID. '" ;99 predicates:question_code "' . $questionCode . '" ; 126 100 predicates:description ?questionDescription 127 101 }'; … … 132 106 } 133 107 134 public function readQuestionType($question ID)108 public function readQuestionType($questionCode) 135 109 { 136 110 $querystring = ' … … 141 115 { 142 116 _question predicates:resource_type resources:question ; 143 predicates: uid "' . $questionID. '" ;117 predicates:question_code "' . $questionCode . '" ; 144 118 predicates:question_type ?questionType 145 119 }'; … … 149 123 return $result; 150 124 } 151 152 public function readQuestionCode($questionID) 153 { 154 $querystring = ' 155 PREFIX predicates: <' . SURVEYTOOL_PREDICATES_NAMESPACE . '> 156 PREFIX resources: <' . SURVEYTOOL_RESOURCES_NAMESPACE . '> 157 SELECT ?questionCode 158 WHERE 159 { 160 _question predicates:resource_type resources:question ; 161 predicates:uid "' . $questionID . '" ; 162 predicates:question_code ?questionCode 163 }'; 164 165 $result = $this->model->sparqlQuery($querystring); 166 167 return $result; 168 } 169 170 public function readQuestionCategory($questionID) 125 126 public function readQuestionCategory($questionCode) 171 127 { 172 128 $querystring = ' … … 177 133 { 178 134 _question predicates:resource_type resources:question ; 179 predicates: uid "' . $questionID. '" ;135 predicates:question_code "' . $questionCode . '" ; 180 136 predicates:question_category ?questionCategory 181 137 }'; … … 186 142 } 187 143 188 public function readQuestionAnswers($question ID)144 public function readQuestionAnswers($questionCode) 189 145 { 190 146 $querystring = ' … … 195 151 { 196 152 _question predicates:resource_type resources:question ; 197 predicates: uid "' . $questionID. '" ;153 predicates:question_code "' . $questionCode . '" ; 198 154 predicates:has_answer ?answerDescription 199 155 }'; -
Dev/trunk/classes/QuestionRDFWriter.php
r85 r105 24 24 } 25 25 26 public function createQuestion($qTitle,$qDescription,$qType,$q ID,$qCode,$qCategory,$qAnswers)26 public function createQuestion($qTitle,$qDescription,$qType,$qCode,$qCategory,$qAnswers) 27 27 { 28 $resourceQuestion = new Resource(QUESTION.'/'.$q ID);28 $resourceQuestion = new Resource(QUESTION.'/'.$qCode); 29 29 30 30 $resourceQuestionType = new Resource(QUESTION); … … 43 43 $resourceQuestionType = new Literal($qType); 44 44 $this->model->add(new Statement($resourceQuestion,$predicateQType,$resourceQuestionType)); 45 46 $predicateUniqueID = new Resource(UID);47 $questionUID = new Literal($qID);48 $this->model->add(new Statement($resourceQuestion,$predicateUniqueID,$questionUID));49 45 50 46 $predicateQCode = new Resource(QCODE); -
Dev/trunk/classes/SurveyCreationDatabaseInterface.php
r91 r105 40 40 41 41 $qNumber = 1; 42 while (isset($survey['question Title'.$qNumber]))42 while (isset($survey['questionCode'.$qNumber])) 43 43 { 44 $qTitle = $survey['questionTitle'.$qNumber]; 45 $qDescription = $survey['questionDescription'.$qNumber]; 46 $qType = $survey['questionType'.$qNumber]; 47 if (isset($survey['questionID'.$qNumber])) 48 $qID = $survey['questionID'.$qNumber]; 49 else 50 $qID = md5( uniqid(rand(), true) ); 51 52 $qAnswers = array(); 53 $aNumber = 1; 54 while (isset($survey['q'.$qNumber.'ans'.$aNumber])) 55 { 56 $qAnswers[] = $survey['q'.$qNumber.'ans'.$aNumber]; 57 58 $aNumber++; 59 } 60 61 if(!$this->checkQuestionIDExists($qID)) 62 { 63 $this->questionRDFWriter->createQuestion($qTitle,$qDescription,$qType,$qID,"null","null",$qAnswers); 64 } 65 $this->surveyRDFWriter->addQuestion($qID); 44 $qCode = $survey['questionCode'.$qNumber]; 45 $this->surveyRDFWriter->addQuestion($qCode); 66 46 67 47 $qNumber++; … … 74 54 public function saveQuestion($questionInfo) 75 55 { 76 $qTitle = $survey['questionTitle'.$qNumber]; 77 $qDescription = $survey['questionDescription'.$qNumber]; 78 $qType = $survey['questionType'.$qNumber]; 79 if (isset($survey['questionID'.$qNumber])) 80 $qID = $survey['questionID'.$qNumber]; 81 else 82 $qID = md5( uniqid(rand(), true) ); 56 $qCode = $question['questionCode'.$qNumber]; 57 $qTitle = $question['questionTitle'.$qNumber]; 58 $qDescription = $question['questionDescription'.$qNumber]; 59 $qType = $question['questionType'.$qNumber]; 83 60 84 61 $qAnswers = array(); 85 62 $aNumber = 1; 86 while (isset($ survey['q'.$qNumber.'ans'.$aNumber]))63 while (isset($question['ans'.$aNumber])) 87 64 { 88 $aArray = array(); 89 $aArray['Title'] = 'q'.$qNumber.'ans'.$aNumber; 90 $aArray['Description'] = $survey['q'.$qNumber.'ans'.$aNumber]; 91 $qAnswers[] = $aArray; 65 $qAnswers[] = $question['ans'.$aNumber]; 92 66 93 67 $aNumber++; … … 98 72 return 'Question code (' . $qCode . ') already in use. Please try a new code.'; 99 73 } 100 else if($this->checkQuestionIDExists($qID))74 else 101 75 { 102 return 'Question already exists'; 103 } 104 else { 105 $this->questionRDFWriter->createQuestion($qTitle,$qDescription,$qType,$qID,"null","null",$qAnswers); 76 $this->questionRDFWriter->createQuestion($qTitle,$qDescription,$qType,$qCode,"null",$qAnswers); 106 77 return 'Question saved'; 107 78 } … … 178 149 } 179 150 151 public function getExistingQuestions() 152 { 153 $questions = array(); 154 155 $resultQuestions = $this->questionRDFReader->readQuestionCodes(); 156 foreach ($resultQuestions as $questionCodeObject) 157 { 158 $questionCode = $questionCodeObject[0]['?questionCode']->label; 159 $questionTitle = $this->questionRDFReader->readQuestionTitle($questionCode); 160 $questions[$questionCode] = $questionTitle[0]['?questionTitle']->label; 161 } 162 163 return $questions; 164 } 165 180 166 public function getSurveyTitleByID($surveyID) 181 167 { … … 184 170 185 171 return $surveyTitle; 186 }187 188 189 190 public function checkQuestionIDExists($qID)191 {192 $result = false;193 194 $questionIDs = $this->questionRDFReader->readQuestionIDs();195 196 if ($questionIDs != null)197 {198 foreach($questionIDs as $questionID)199 {200 $id = $questionID['?questionID']->label;201 if(!strcmp($id ,$qID))202 {203 $result = true;204 break;205 }206 }207 }208 209 return $result;210 172 } 211 173
Note: See TracChangeset
for help on using the changeset viewer.