/** * converts the studIP course IDs (vid) to ostepu IDs (cid) * * @param string $uid Is the userid from StudIP * @param string $sid Is the sessionid from StudIP * @return true if user is logged in */ public function convertVidToCid($vid) { global $databaseURI; $url = "{$databaseURI}/externalid/S_" . $vid; $message = null; $answer = http_get($url, false, $message); if ($message == 200) { $externalId = ExternalId::decodeExternalId($answer); if ($externalId->getCourse() !== null) { return $externalId->getCourse()->getId(); } else { return null; } } else { return null; } }
public static function ExtractExternalId($data, $singleResult = false, $CourseExtension = '', $ExternalIdExtension = '', $isResult = true) { // generates an assoc array of courses by using a defined list of // its attributes $course = DBJson::getObjectsByAttributes($data, Course::getDBPrimaryKey(), Course::getDBConvert(), $CourseExtension); // generates an assoc array of external IDs by using a defined list of // its attributes $externalIds = DBJson::getObjectsByAttributes($data, ExternalId::getDBPrimaryKey(), ExternalId::getDBConvert(), $ExternalIdExtension); // concatenates the external IDs and the associated courses $res = DBJson::concatObjectListsSingleResult($data, $externalIds, ExternalId::getDBPrimaryKey(), ExternalId::getDBConvert()['EX_course'], $course, Course::getDBPrimaryKey(), $CourseExtension, $ExternalIdExtension); if ($isResult) { // to reindex $res = array_values($res); $res = ExternalId::decodeExternalId($res, false); if ($singleResult == true) { // only one object as result if (count($res) > 0) { $res = $res[0]; } } } return $res; }