Changeset 576 for trunk/app/models
- Timestamp:
- 05/30/08 22:31:24 (6 months ago)
- Location:
- trunk/app/models
- Files:
-
- 2 modified
-
test.php (modified) (3 diffs)
-
vclassroom.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/app/models/test.php
r535 r576 90 90 $result = $this->find($conditions); 91 91 92 foreach ($result['Vclassroom'] as $val) 93 { 94 $vclassrooms[$val['name']] = $val['id']; 95 } 96 92 foreach ($result['Vclassroom'] as $val): 93 $vclassrooms[$val['name']] = $val['id']; 94 endforeach; 95 97 96 return $vclassrooms; 98 97 } … … 109 108 $conditions = array("Result.user_id"=>$user_id, "Result.test_id"=>$test_id, "Result.vclassroom_id"=>$vclassroom_id); 110 109 $data = $this->Result->field('Result.id', $conditions); 111 110 112 111 if ($data == false ): 113 112 return false; … … 115 114 return true; 116 115 endif; 116 } 117 118 public function getTest($test_id, $user_id, $vclassroom_id) 119 { 120 $tests = $this->Test->Question->findAll(array('Question.test_id'=>$this->data['Test']['test_id']), $fields); 121 122 //die(debug($this->data['Test'])); 123 124 $points = 0; 125 126 foreach($this->data['Test'] as $k => $t): 127 if ( is_numeric($k) ): 128 $res = $this->Test->Question->Answer->find(array('Answer.id'=>$t)); 129 if ( $res['Answer']['correct'] == 1): 130 $points += (int) $res['Question']['worth']; 131 endif; 132 endif; 133 endforeach; 134 135 return $data; 117 136 } 118 137 -
trunk/app/models/vclassroom.php
r568 r576 130 130 $record = $this->User->find(array('User.id'=>$user_id), array('id', 'username', 'name', 'email')); 131 131 132 // Consult Test Model 133 $conditions = array('Result.vclassroom_id'=>$vclassroom_id, 'Result.user_id'=>$user_id); 134 $fields = array('Result.percentage', 'Test.title', 'Test.id'); //null; 135 $record['tests'] = $this->Test->Result->findAll($conditions, $fields); 136 132 // Consult Test Model 133 //$this->TestsVclassroom->bindModel(array('hasMany'=>array('Tests'))); 134 135 $conditions = array('TestsVclassroom.vclassroom_id'=>$vclassroom_id); 136 $fields = array('Result.question_id', 'Result.answer_id', 'Result.correct', 'Test.title', 'Test.id', 'Question.id', 'Question.worth'); 137 $record['tests'] = $this->TestsVclassroom->findAll($conditions, null, null, null, null, 2); 138 foreach($record['tests'] as $k => $t): 139 $this->Test->Result->unbindAll(); 140 $this->Test->Result->bindModel(array('belongsTo'=>array('Question','Test'))); 141 142 $conditions = array('Result.vclassroom_id'=>$vclassroom_id,'Result.user_id'=>$user_id,'Result.test_id'=>$t['TestsVclassroom']['test_id']); 143 $fields = array('Result.correct', 'Result.answer_id','Test.title', 'Question.question', 'Question.worth'); 144 $results = $this->Test->Result->findAll($conditions, $fields); 145 $points = (int) 0; 146 foreach($results as $r): 147 if ($r['Result']['correct'] == 1): 148 $points += $r['Question']['worth']; 149 endif; 150 //die(debug($results)); 151 $record['tests'][$k]['TestsVclassroom']['title'] = $r['Test']['title']; 152 endforeach; 153 154 $record['tests'][$k]['TestsVclassroom']['points'] = $points; 155 endforeach; 156 //die(debug($record['tests'])); 137 157 // Consult Treasure Model 138 158 $conditions = array('ResultTreasure.vclassroom_id'=>$vclassroom_id, 'ResultTreasure.user_id'=>$user_id);
