public function get($functionName, $linkName, $params = array(), $checkSession = true) { $positive = function ($input) { //$input = $input[count($input)-1]; $result = Model::isEmpty(); $result['content'] = array(); foreach ($input as $inp) { if ($inp->getNumRows() > 0) { // extract exercise data from db answer $res = Exercise::ExtractExercise($inp->getResponse(), false); $result['content'] = array_merge($result['content'], is_array($res) ? $res : array($res)); $result['status'] = 200; } } return $result; }; $params = DBJson::mysql_real_escape_string($params); return $this->_component->call($linkName, $params, '', 200, $positive, array(), 'Model::isProblem', array(), 'Query'); }
public function getCourseSheets($callName, $input, $params = array()) { $getSheets = function ($input, $courseid, $exercise = null) { $getExercises = function ($input, $sheet) { $result = Model::isEmpty(); $result['content'] = array(); $data = array(); foreach ($input as $inp) { if ($inp->getNumRows() > 0) { // extract Course data from db answer $result['content'] = Exercise::ExtractExercise($inp->getResponse(), false, '', '', '', '', false); $data = array_merge($data, $inp->getResponse()); $result['status'] = 200; } } $result['content'] = DBJson::concatResultObjectLists($data, $sheet, ExerciseSheet::getDBPrimaryKey(), ExerciseSheet::getDBConvert()['ES_exercises'], $result['content'], Exercise::getDBPrimaryKey()); $result['content'] = array_merge($result['content']); return self::finalizeSheets($result); }; $result = Model::isEmpty(); $result['content'] = array(); foreach ($input as $inp) { if ($inp->getNumRows() > 0) { $result['content'] = ExerciseSheet::ExtractExerciseSheet($inp->getResponse(), false, '', '', '', $exercise !== null ? false : true); $result['status'] = 200; } } if ($exercise === null) { return self::finalizeSheets($result); } return $this->_component->call('getCourseExercises', array("courseid" => $courseid), '', 200, $getExercises, array("sheet" => $result['content']), 'Model::isProblem', array(), 'Query'); }; $params = DBJson::mysql_real_escape_string($params); return $this->_component->call('getCourseSheets', $params, '', 200, $getSheets, $params, 'Model::isProblem', array(), 'Query'); }