public function process_evalcomix_tool($data) { global $DB, $CFG; $data = (object) $data; $oldid = $data->id; if ($data->type != 'tmp') { $data->evxid = $this->get_new_parentid('evalcomix'); $data->timemodified = $this->apply_date_offset($data->timemodified); //$data->timemodified = $this->apply_date_offset(-1); $data->timecreated = $this->apply_date_offset($data->timecreated); include_once $CFG->dirroot . '/blocks/evalcomix/classes/webservice_evalcomix_client.php'; $newidtool = false; if ($newidtool = webservice_evalcomix_client::duplicate_tool($data->idtool)) { //$data->idtool = $this->apply_date_offset($newidtool); $data->idtool = (string) $newidtool; } else { if (isset($data->code)) { $xml = $data->code; if ($xmlobject = simplexml_load_string($xml)) { try { $newidtool = webservice_evalcomix_client::post_ws_xml_tools(array('toolxml' => $data->code)); $data->idtool = (string) $newidtool; } catch (Exception $e) { echo "EvalCOMIX no configured correctly"; } } else { echo "No tool id " . $data->idtool; } } else { echo "No tool id " . $data->idtool; } } if ($newidtool) { $newitemid = $DB->insert_record('block_evalcomix_tools', $data); $this->set_mapping('evalcomix_tool', $oldid, $newitemid); } } }