ILIAS  release_4-4 Revision
ilSoapAdministration Class Reference
+ Inheritance diagram for ilSoapAdministration:
+ Collaboration diagram for ilSoapAdministration:

Public Member Functions

 ilSoapAdministration ($use_nusoap=true)
 
 initErrorWriter ()
 Overwrite error handler. More...
 
 __explodeSid ($sid)
 
 __setMessage ($a_str)
 
 __getMessage ()
 
 __appendMessage ($a_str)
 
 __setMessageCode ($a_code)
 
 __getMessageCode ()
 
 initAuth ($sid)
 
 initIlias ()
 
 __initAuthenticationObject ($a_auth_mode=AUTH_LOCAL)
 
 __raiseError ($a_message, $a_code)
 
 getNIC ($sid)
 get client information from current as xml result set More...
 
 isFault ($object)
 
 checkObjectAccess ($ref_id, $expected_type, $permission, $returnObject=false)
 check access for ref id: expected type, permission, return object instance if returnobject is true More...
 
 getInstallationInfoXML ()
 
 getClientInfoXML ($clientid)
 

Static Public Member Functions

static return_bytes ($val)
 calculate bytes from K,M,G modifiers e.g: 8M = 8 * 1024 * 1024 bytes More...
 

Data Fields

 $sauth = null
 
 $error_method = null
 

Protected Attributes

 $soap_check = true
 

Private Member Functions

 getClientInfo ($init, $client_dir)
 

Detailed Description

Definition at line 41 of file class.ilSoapAdministration.php.

Member Function Documentation

◆ __appendMessage()

ilSoapAdministration::__appendMessage (   $a_str)

Definition at line 175 of file class.ilSoapAdministration.php.

Referenced by ilSoapUserAdministration\__validateUserData().

176  {
177  $this->message .= isset($this->message) ? ' ' : '';
178  $this->message .= $a_str;
179  }
+ Here is the caller graph for this function:

◆ __explodeSid()

ilSoapAdministration::__explodeSid (   $sid)

Definition at line 159 of file class.ilSoapAdministration.php.

Referenced by ilSoapAdministration(), and initAuth().

160  {
161  $exploded = explode('::',$sid);
162 
163  return is_array($exploded) ? $exploded : array('sid' => '','client' => '');
164  }
+ Here is the caller graph for this function:

◆ __getMessage()

ilSoapAdministration::__getMessage ( )

Definition at line 171 of file class.ilSoapAdministration.php.

Referenced by ilSoapUserAdministration\__validateUserData(), ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilSoapGroupAdministration\addGroup(), ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilSoapUserAdministration\addUser(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilSoapGroupAdministration\assignGroupMember(), ilSoapObjectAdministration\copyObject(), ilSoapWebLinkAdministration\createWebLink(), ilSoapCourseAdministration\deleteCourse(), ilSoapObjectAdministration\deleteObject(), ilSoapLearningProgressAdministration\deleteProgress(), ilSoapRBACAdministration\deleteRole(), ilSoapUserAdministration\deleteUser(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilSoapUtils\distributeMails(), ilSoapCourseAdministration\excludeCourseMember(), ilSoapGroupAdministration\excludeGroupMember(), ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapExerciseAdministration\getExerciseXML(), ilSoapFileAdministration\getFileXML(), ilSoapGroupAdministration\getGroup(), ilSoapGroupAdministration\getGroupsForUser(), ilSoapSCORMAdministration\getIMSManifestXML(), ilSoapLearningProgressAdministration\getLearningProgressChanges(), ilSoapRBACAdministration\getLocalRoles(), ilSoapUtils\getMobsOfObject(), getNIC(), ilSoapTestAdministration\getNrOfQuestionsInPass(), ilSoapObjectAdministration\getObjectByReference(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilSoapObjectAdministration\getObjIdByImportId(), ilSoapObjectAdministration\getObjIdsByRefIds(), ilSoapRBACAdministration\getOperations(), ilSoapObjectAdministration\getPathForRefId(), ilSoapTestAdministration\getPositionOfQuestion(), ilSoapTestAdministration\getPreviousReachedPoints(), ilSoapTestAdministration\getQuestionSolution(), ilSoapObjectAdministration\getRefIdsByImportId(), ilSoapObjectAdministration\getRefIdsByObjId(), ilSoapRBACAdministration\getRoles(), ilSoapSCORMAdministration\getSCORMCompletionStatus(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapTestAdministration\getTestResults(), ilSoapTestAdministration\getTestUserData(), ilSoapObjectAdministration\getTreeChilds(), ilSoapUserAdministration\getUser(), ilSoapUserAdministration\getUserForRole(), ilSoapUserAdministration\getUserIdBySid(), ilSoapRBACAdministration\getUserRoles(), ilSoapUserAdministration\getUsersForContainer(), ilSoapUserAdministration\getUserXML(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilSoapGroupAdministration\groupExists(), ilSoapUtils\handleECSTasks(), ilSoapUserAdministration\hasNewMail(), ilSoapSCORMAdministration\hasSCORMCertificate(), ilSoapUtils\ilClone(), ilSoapUtils\ilCloneDependencies(), ilSoapUserAdministration\importUsers(), ilSoapCourseAdministration\isAssignedToCourse(), ilSoapGroupAdministration\isAssignedToGroup(), ilSoapUserAdministration\logout(), ilSoapUserAdministration\lookupUser(), ilSoapObjectAdministration\moveObject(), ilSoapWebLinkAdministration\readWebLink(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSoapTestAdministration\removeTestResults(), ilSoapRBACAdministration\revokePermissions(), ilSoapTestAdministration\saveQuestion(), ilSoapTestAdministration\saveQuestionSolution(), ilSoapUtils\saveTempFileAsMediaObject(), ilSoapObjectAdministration\searchObjects(), ilSoapRBACAdministration\searchRoles(), ilSoapUserAdministration\searchUser(), ilSoapUtils\sendMail(), ilSoapCourseAdministration\updateCourse(), ilSoapExerciseAdministration\updateExercise(), ilSoapFileAdministration\updateFile(), ilSoapGroupAdministration\updateGroup(), ilSoapObjectAdministration\updateObjects(), ilSoapUserAdministration\updatePassword(), and ilSoapWebLinkAdministration\updateWebLink().

172  {
173  return $this->message;
174  }
+ Here is the caller graph for this function:

◆ __getMessageCode()

ilSoapAdministration::__getMessageCode ( )

Definition at line 186 of file class.ilSoapAdministration.php.

Referenced by ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilSoapGroupAdministration\addGroup(), ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilSoapUserAdministration\addUser(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilSoapGroupAdministration\assignGroupMember(), ilSoapObjectAdministration\copyObject(), ilSoapWebLinkAdministration\createWebLink(), ilSoapCourseAdministration\deleteCourse(), ilSoapObjectAdministration\deleteObject(), ilSoapLearningProgressAdministration\deleteProgress(), ilSoapRBACAdministration\deleteRole(), ilSoapUserAdministration\deleteUser(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilSoapUtils\distributeMails(), ilSoapCourseAdministration\excludeCourseMember(), ilSoapGroupAdministration\excludeGroupMember(), ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapExerciseAdministration\getExerciseXML(), ilSoapFileAdministration\getFileXML(), ilSoapGroupAdministration\getGroup(), ilSoapGroupAdministration\getGroupsForUser(), ilSoapSCORMAdministration\getIMSManifestXML(), ilSoapLearningProgressAdministration\getLearningProgressChanges(), ilSoapRBACAdministration\getLocalRoles(), ilSoapUtils\getMobsOfObject(), getNIC(), ilSoapTestAdministration\getNrOfQuestionsInPass(), ilSoapObjectAdministration\getObjectByReference(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilSoapObjectAdministration\getObjIdByImportId(), ilSoapObjectAdministration\getObjIdsByRefIds(), ilSoapRBACAdministration\getOperations(), ilSoapObjectAdministration\getPathForRefId(), ilSoapTestAdministration\getPositionOfQuestion(), ilSoapTestAdministration\getPreviousReachedPoints(), ilSoapTestAdministration\getQuestionSolution(), ilSoapObjectAdministration\getRefIdsByImportId(), ilSoapObjectAdministration\getRefIdsByObjId(), ilSoapRBACAdministration\getRoles(), ilSoapSCORMAdministration\getSCORMCompletionStatus(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapTestAdministration\getTestResults(), ilSoapTestAdministration\getTestUserData(), ilSoapObjectAdministration\getTreeChilds(), ilSoapUserAdministration\getUser(), ilSoapUserAdministration\getUserForRole(), ilSoapUserAdministration\getUserIdBySid(), ilSoapRBACAdministration\getUserRoles(), ilSoapUserAdministration\getUsersForContainer(), ilSoapUserAdministration\getUserXML(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilSoapGroupAdministration\groupExists(), ilSoapUtils\handleECSTasks(), ilSoapUserAdministration\hasNewMail(), ilSoapSCORMAdministration\hasSCORMCertificate(), ilSoapUtils\ilClone(), ilSoapUtils\ilCloneDependencies(), ilSoapUserAdministration\importUsers(), ilSoapCourseAdministration\isAssignedToCourse(), ilSoapGroupAdministration\isAssignedToGroup(), ilSoapUserAdministration\logout(), ilSoapUserAdministration\lookupUser(), ilSoapObjectAdministration\moveObject(), ilSoapWebLinkAdministration\readWebLink(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSoapTestAdministration\removeTestResults(), ilSoapRBACAdministration\revokePermissions(), ilSoapTestAdministration\saveQuestion(), ilSoapTestAdministration\saveQuestionSolution(), ilSoapUtils\saveTempFileAsMediaObject(), ilSoapObjectAdministration\searchObjects(), ilSoapRBACAdministration\searchRoles(), ilSoapUserAdministration\searchUser(), ilSoapUtils\sendMail(), ilSoapCourseAdministration\updateCourse(), ilSoapExerciseAdministration\updateExercise(), ilSoapFileAdministration\updateFile(), ilSoapGroupAdministration\updateGroup(), ilSoapObjectAdministration\updateObjects(), ilSoapUserAdministration\updatePassword(), and ilSoapWebLinkAdministration\updateWebLink().

187  {
188  return $this->message_code;
189  }
+ Here is the caller graph for this function:

◆ __initAuthenticationObject()

ilSoapAdministration::__initAuthenticationObject (   $a_auth_mode = AUTH_LOCAL)

Definition at line 219 of file class.ilSoapAdministration.php.

References ilAuthFactory\CONTEXT_SOAP, and ilAuthFactory\setContext().

Referenced by ilSoapAdministration(), and ilSoapUserAdministration\loginCAS().

220  {
221  include_once './Services/Authentication/classes/class.ilAuthFactory.php';
223  }
static setContext($a_context)
set context
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __raiseError()

ilSoapAdministration::__raiseError (   $a_message,
  $a_code 
)

Definition at line 226 of file class.ilSoapAdministration.php.

Referenced by ilSoapUserAdministration\__getImportProtocolAsXML(), ilSoapUserAdministration\__getUserMappingAsXML(), ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilSoapGroupAdministration\addGroup(), ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilSoapUserAdministration\addUser(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilSoapGroupAdministration\assignGroupMember(), ilSoapObjectAdministration\canAddType(), checkObjectAccess(), ilSoapObjectAdministration\copyObject(), ilSoapWebLinkAdministration\createWebLink(), ilSoapCourseAdministration\deleteCourse(), ilSoapObjectAdministration\deleteObject(), ilSoapLearningProgressAdministration\deleteProgress(), ilSoapRBACAdministration\deleteRole(), ilSoapUserAdministration\deleteUser(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilSoapUtils\distributeMails(), ilSoapCourseAdministration\excludeCourseMember(), ilSoapGroupAdministration\excludeGroupMember(), getClientInfoXML(), ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapExerciseAdministration\getExerciseXML(), ilSoapFileAdministration\getFileXML(), ilSoapGroupAdministration\getGroup(), ilSoapGroupAdministration\getGroupsForUser(), ilSoapSCORMAdministration\getIMSManifestXML(), ilSoapLearningProgressAdministration\getLearningProgressChanges(), ilSoapRBACAdministration\getLocalRoles(), ilSoapUtils\getMobsOfObject(), getNIC(), ilSoapTestAdministration\getNrOfQuestionsInPass(), ilSoapObjectAdministration\getObjectByReference(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilSoapObjectAdministration\getObjIdByImportId(), ilSoapObjectAdministration\getObjIdsByRefIds(), ilSoapRBACAdministration\getOperations(), ilSoapObjectAdministration\getPathForRefId(), ilSoapTestAdministration\getPositionOfQuestion(), ilSoapTestAdministration\getPreviousReachedPoints(), ilSoapTestAdministration\getQuestionSolution(), ilSoapObjectAdministration\getRefIdsByImportId(), ilSoapObjectAdministration\getRefIdsByObjId(), ilSoapRBACAdministration\getRoles(), ilSoapSCORMAdministration\getSCORMCompletionStatus(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapTestAdministration\getTestResults(), ilSoapTestAdministration\getTestUserData(), ilSoapObjectAdministration\getTreeChilds(), ilSoapUserAdministration\getUser(), ilSoapUserAdministration\getUserForRole(), ilSoapUserAdministration\getUserIdBySid(), ilSoapRBACAdministration\getUserRoles(), ilSoapUserAdministration\getUsersForContainer(), ilSoapUserAdministration\getUserXML(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilSoapGroupAdministration\groupExists(), ilSoapUtils\handleECSTasks(), ilSoapUserAdministration\hasNewMail(), ilSoapSCORMAdministration\hasSCORMCertificate(), ilSoapUtils\ilClone(), ilSoapUtils\ilCloneDependencies(), ilSoapUserAdministration\ilSoapUserAdministration(), ilSoapUserAdministration\importUsers(), ilSoapCourseAdministration\isAssignedToCourse(), ilSoapGroupAdministration\isAssignedToGroup(), ilSoapUserAdministration\loginCAS(), ilSoapUserAdministration\logout(), ilSoapUserAdministration\lookupUser(), ilSoapObjectAdministration\moveObject(), ilSoapRBACAdministration\parseUserID(), ilSoapWebLinkAdministration\readWebLink(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSoapTestAdministration\removeTestResults(), ilSoapRBACAdministration\revokePermissions(), ilSoapTestAdministration\saveQuestion(), ilSoapTestAdministration\saveQuestionSolution(), ilSoapUtils\saveTempFileAsMediaObject(), ilSoapObjectAdministration\searchObjects(), ilSoapRBACAdministration\searchRoles(), ilSoapUserAdministration\searchUser(), ilSoapUtils\sendMail(), ilSoapCourseAdministration\updateCourse(), ilSoapExerciseAdministration\updateExercise(), ilSoapFileAdministration\updateFile(), ilSoapGroupAdministration\updateGroup(), ilSoapObjectAdministration\updateObjects(), ilSoapUserAdministration\updatePassword(), ilSoapWebLinkAdministration\updateWebLink(), and ilSoapObjectAdministration\validateReferences().

227  {
228  #echo $a_message, $a_code;
229  switch($this->error_method)
230  {
231  case NUSOAP:
232  return new soap_fault($a_code,'',$a_message);
233  case PHP5:
234  return new SoapFault($a_code, $a_message);
235  }
236  }
soap_fault class, allows for creation of faults mainly used for returning faults from deployed functi...
Definition: nusoap.php:669
+ Here is the caller graph for this function:

◆ __setMessage()

ilSoapAdministration::__setMessage (   $a_str)

Definition at line 167 of file class.ilSoapAdministration.php.

Referenced by ilSoapUserAdministration\__validateUserData(), and ilSoapAdministration().

168  {
169  $this->message = $a_str;
170  }
+ Here is the caller graph for this function:

◆ __setMessageCode()

ilSoapAdministration::__setMessageCode (   $a_code)

Definition at line 181 of file class.ilSoapAdministration.php.

Referenced by ilSoapAdministration().

182  {
183  $this->message_code = $a_code;
184  }
+ Here is the caller graph for this function:

◆ checkObjectAccess()

ilSoapAdministration::checkObjectAccess (   $ref_id,
  $expected_type,
  $permission,
  $returnObject = false 
)

check access for ref id: expected type, permission, return object instance if returnobject is true

Parameters
int$ref_id
stringor array $expected_type
string$permission
boolean$returnObject
Returns
Object or type

Definition at line 359 of file class.ilSoapAdministration.php.

References $ref_id, __raiseError(), ilObject\_exists(), ilObject\_isInTrash(), ilObjectFactory\getInstanceByRefId(), and ilObjectFactory\getTypeByRefId().

Referenced by ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapGroupAdministration\getGroupsForUser(), and ilSoapUserAdministration\getUsersForContainer().

359  {
360  global $rbacsystem;
361  if(!is_numeric($ref_id))
362  {
363  return $this->__raiseError('No valid id given.',
364  'Client');
365  }
366  if (!ilObject::_exists($ref_id, true)) {
367  return $this->__raiseError('No object for id.',
368  'CLIENT_OBJECT_NOT_FOUND');
369  }
370 
372  return $this->__raiseError('Object is already trashed.',
373  'CLIENT_OBJECT_DELETED');
374  }
375 
377  if ((is_array($expected_type) && !in_array($type, $expected_type))
378  ||
379  (!is_array($expected_type) && $type != $expected_type)
380  )
381  {
382  return $this->__raiseError("Wrong type $type for id. Expected: ".(is_array($expected_type) ? join (",",$expected_type) : $expected_type), 'CLIENT_OBJECT_WRONG_TYPE');
383  }
384 
385  if (!$rbacsystem->checkAccess($permission, $ref_id, $type))
386  {
387  return $this->__raiseError('Missing permission $permission for type $type.', 'CLIENT_OBJECT_WRONG_PERMISSION');
388  }
389 
390  if ($returnObject) {
392  }
393 
394  return $type;
395  }
getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
static _exists($a_id, $a_reference=false, $a_type=null)
checks if an object exists in object_data
__raiseError($a_message, $a_code)
_isInTrash($a_ref_id)
checks wether object is in trash
$ref_id
Definition: sahs_server.php:39
getTypeByRefId($a_ref_id, $stop_on_error=true)
get object type by reference id
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getClientInfo()

ilSoapAdministration::getClientInfo (   $init,
  $client_dir 
)
private

Definition at line 448 of file class.ilSoapAdministration.php.

References $client_id, $GLOBALS, and ilDBWrapperFactory\getWrapper().

Referenced by getClientInfoXML(), and getInstallationInfoXML().

449  {
450  global $ilDB;
451  $ini_file = "./".$client_dir."/client.ini.php";
452 
453  // get settings from ini file
454  require_once("./Services/Init/classes/class.ilIniFile.php");
455 
456  $ilClientIniFile = new ilIniFile($ini_file);
457  $ilClientIniFile->read();
458  if ($ilClientIniFile->ERROR != "")
459  {
460  return false;
461  }
462  $client_id = $ilClientIniFile->readVariable('client','name');
463  if ($ilClientIniFile->variableExists('client', 'expose'))
464  {
465  $client_expose = $ilClientIniFile->readVariable('client','expose');
466  if ($client_expose == "0")
467  return false;
468  }
469 
470  // build dsn of database connection and connect
471  require_once("./Services/Database/classes/class.ilDBWrapperFactory.php");
472  $ilDB = ilDBWrapperFactory::getWrapper($ilClientIniFile->readVariable("db","type"),
473  $ilClientIniFile->readVariable("db","inactive_mysqli"));
474  $ilDB->initFromIniFile($ilClientIniFile);
475  if ($ilDB->connect(true))
476  {
477  $GLOBALS['ilDB'] = $ilDB;
478 
479  require_once("Services/Administration/classes/class.ilSetting.php");
480  $settings = new ilSetting();
481  $GLOBALS["ilSetting"] = $settings;
482  // workaround to determine http path of client
483  define ("IL_INST_ID", $settings->get("inst_id",0));
484  $settings->access = $ilClientIniFile->readVariable("client", "access");
485  $settings->description = $ilClientIniFile->readVariable("client","description");
486  $settings->session = min((int) ini_get("session.gc_maxlifetime"), (int) $ilClientIniFile->readVariable("session","expire"));
487  $settings->language = $ilClientIniFile->readVariable("language","default");
488  $settings->clientid = basename($client_dir); //pathinfo($client_dir, PATHINFO_FILENAME);
489  $settings->default_show_users_online = $settings->get("show_users_online");
490  $settings->default_hits_per_page = $settings->get("hits_per_page");
491  $skin = $ilClientIniFile->readVariable("layout","skin");
492  $style = $ilClientIniFile->readVariable("layout","style");
493  $settings->default_skin_style = $skin.":".$style;
494  return $settings;
495  }
496  return null;
497  }
ILIAS Setting Class.
$GLOBALS['ct_recipient']
static getWrapper($a_type, $a_inactive_mysqli=null)
$client_id
INIFile Parser.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getClientInfoXML()

ilSoapAdministration::getClientInfoXML (   $clientid)

Definition at line 424 of file class.ilSoapAdministration.php.

References $client, __raiseError(), ilContext\CONTEXT_SOAP_WITHOUT_CLIENT, getClientInfo(), ILIAS_WEB_DIR, ilContext\init(), and ilInitialisation\initILIAS().

425  {
426  include_once "Services/Context/classes/class.ilContext.php";
428 
429  require_once("Services/Init/classes/class.ilInitialisation.php");
431 
432  $clientdir = ILIAS_WEB_DIR."/".$clientid;
433  require_once ("webservice/soap/classes/class.ilSoapInstallationInfoXMLWriter.php");
434  $writer = new ilSoapInstallationInfoXMLWriter ();
435  $writer->setExportAdvancedMetaDataDefinitions (true);
436  $writer->setExportUDFDefinitions (true);
437  $writer->start();
438  if (is_object($client = $this->getClientInfo($init, $clientdir)))
439  {
440  $writer->addClient($client);
441  }
442  else
443  return $this->__raiseError("Client ID $clientid does not exist!", 'Client');
444  $writer->end();
445  return $writer->getXML();
446  }
const ILIAS_WEB_DIR
static initILIAS()
ilias initialisation
__raiseError($a_message, $a_code)
const CONTEXT_SOAP_WITHOUT_CLIENT
static init($a_type)
Init context by type.
+ Here is the call graph for this function:

◆ getInstallationInfoXML()

ilSoapAdministration::getInstallationInfoXML ( )

Definition at line 397 of file class.ilSoapAdministration.php.

References ilContext\CONTEXT_SOAP_WITHOUT_CLIENT, getClientInfo(), ILIAS_WEB_DIR, ilContext\init(), and ilInitialisation\initILIAS().

398  {
399  include_once "Services/Context/classes/class.ilContext.php";
401 
402  require_once("Services/Init/classes/class.ilInitialisation.php");
404 
405  $clientdirs = glob(ILIAS_WEB_DIR."/*",GLOB_ONLYDIR);
406  require_once ("webservice/soap/classes/class.ilSoapInstallationInfoXMLWriter.php");
407  $writer = new ilSoapInstallationInfoXMLWriter ();
408  $writer->start();
409  if (is_array($clientdirs))
410  {
411  foreach ($clientdirs as $clientdir)
412  {
413  if (is_object($clientInfo= $this->getClientInfo($init, $clientdir)))
414  {
415  $writer->addClient ($clientInfo);
416  }
417  }
418  }
419  $writer->end();
420 
421  return $writer->getXML();
422  }
const ILIAS_WEB_DIR
static initILIAS()
ilias initialisation
const CONTEXT_SOAP_WITHOUT_CLIENT
static init($a_type)
Init context by type.
+ Here is the call graph for this function:

◆ getNIC()

ilSoapAdministration::getNIC (   $sid)

get client information from current as xml result set

Parameters
string$sidcurrent session id
Returns
XMLResultSet containing columns installation_id, installation_version, installation_url, installation_description, installation_default_language

Definition at line 245 of file class.ilSoapAdministration.php.

References $ilLog, $ilSetting, $records, __getMessage(), __getMessageCode(), __raiseError(), ilAdvancedMDRecord\_getActivatedRecordsByObjectType(), ilAuthUtils\_getActiveAuthModes(), ilAdvancedMDRecord\_getAssignableObjectTypes(), ilAuthUtils\_getAuthModeName(), ILIAS_VERSION, initAuth(), initIlias(), and return_bytes().

246  {
247  $this->initAuth($sid);
248  $this->initIlias();
249 
250  if(!$this->__checkSession($sid))
251  {
252  return $this->__raiseError($this->__getMessage(),$this->__getMessageCode());
253  }
254 
255  global $rbacsystem, $rbacreview, $ilLog, $rbacadmin,$ilSetting, $ilClientIniFile;
256 
257  if (!is_object($ilClientIniFile)) {
258  return $this->__raiseError("Client ini is not initialized","Server");
259  }
260 
261  $auth_modes = ilAuthUtils::_getActiveAuthModes();
262  $auth_mode_default = strtoupper(ilAuthUtils::_getAuthModeName(array_shift($auth_modes)));
263  $auth_mode_names = array();
264  foreach ($auth_modes as $mode) {
265  $auth_mode_names[] = strtoupper(ilAuthUtils::_getAuthModeName($mode));
266  }
267 
268  include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php';
269  include_once 'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordXMLWriter.php';
270 
271  // create advanced meta data record xml
272  $record_ids = array();
274  foreach($record_types as $type) {
276  foreach ($records as $record){
277  $record_ids [] = $record->getRecordId();
278  }
279  }
280  $record_ids = array_unique($record_ids);
281  $advmwriter = new ilAdvancedMDRecordXMLWriter($record_ids);
282  $advmwriter->write();
283 
284  // create user defined fields record xml, simulate empty user records
285  include_once ("./Services/User/classes/class.ilUserXMLWriter.php");
286  $udfWriter = new ilUserXMLWriter();
287  $users = array();
288  $udfWriter->setObjects($users);
289  $udfWriter->start();
290 
291  // todo: get information from client id, read from ini file specificied
292  $client_details[] = array ("installation_id" => IL_INST_ID,
293  "installation_version" => ILIAS_VERSION,
294  "installation_url" => ILIAS_HTTP_PATH,
295  "installation_description" => $ilClientIniFile->readVariable("client","description"),
296  "installation_language_default" => $ilClientIniFile->readVariable("language","default"),
297  "installation_session_expire" => $ilClientIniFile->readVariable("session","expire"),
298  "installation_php_postmaxsize" => $this->return_bytes(ini_get("post_max_size")),
299  "authentication_methods" => join(",", $auth_mode_names),
300  "authentication_default_method" => $auth_mode_default,
301  "installation_udf_xml" => $udfWriter ->getXML(),
302  "installation_advmd_xml" => $advmwriter->xmlDumpMem(false)
303 
304  );
305 
306  // store into xml result set
307  include_once './webservice/soap/classes/class.ilXMLResultSet.php';
308 
309 
310  $xmlResult = new ilXMLResultSet();
311  $xmlResult->addArray($client_details, true);
312 
313  // create writer and return xml
314  include_once './webservice/soap/classes/class.ilXMLResultSetWriter.php';
315  $xmlResultWriter = new ilXMLResultSetWriter($xmlResult);
316  $xmlResultWriter->start();
317  return $xmlResultWriter->getXML();
318  }
XML Writer for XMLResultSet.
const ILIAS_VERSION
$records
Definition: simple_test.php:22
static _getActivatedRecordsByObjectType($a_obj_type, $a_sub_type="")
Get activated records by object type.
static _getAuthModeName($a_auth_key)
XML writer class.
__raiseError($a_message, $a_code)
static _getAssignableObjectTypes($a_include_text=false)
Get assignable object type.
global $ilSetting
Definition: privfeed.php:40
static return_bytes($val)
calculate bytes from K,M,G modifiers e.g: 8M = 8 * 1024 * 1024 bytes
+ Here is the call graph for this function:

◆ ilSoapAdministration()

ilSoapAdministration::ilSoapAdministration (   $use_nusoap = true)

Definition at line 59 of file class.ilSoapAdministration.php.

References $client, $ilUser, __explodeSid(), __initAuthenticationObject(), __setMessage(), __setMessageCode(), AUTH_EXPIRED, AUTH_IDLED, AUTH_WRONG_LOGIN, IL_SOAPMODE, and IL_SOAPMODE_NUSOAP.

60  {
61  define('USER_FOLDER_ID',7);
62  define('NUSOAP',1);
63  define('PHP5',2);
64 
66  {
67  $this->error_method = NUSOAP;
68  }
69  else
70  {
71  $this->error_method = PHP5;
72  }
73  #echo ("SOAP: using soap mode ".IL_SOAPMODE == IL_SOAPMODE_NUSOAP ? "NUSOAP": "PHP5");
75  }
__initAuthenticationObject($a_auth_mode=AUTH_LOCAL)
const IL_SOAPMODE_NUSOAP
Definition: server.php:36
const IL_SOAPMODE
Definition: server.php:49
+ Here is the call graph for this function:

◆ initAuth()

ilSoapAdministration::initAuth (   $sid)

Definition at line 191 of file class.ilSoapAdministration.php.

References $_COOKIE, $client, and __explodeSid().

Referenced by ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilSoapGroupAdministration\addGroup(), ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilSoapUserAdministration\addUser(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilSoapGroupAdministration\assignGroupMember(), ilSoapObjectAdministration\copyObject(), ilSoapWebLinkAdministration\createWebLink(), ilSoapCourseAdministration\deleteCourse(), ilSoapUtils\deleteExpiredDualOptInUserObjects(), ilSoapObjectAdministration\deleteObject(), ilSoapLearningProgressAdministration\deleteProgress(), ilSoapRBACAdministration\deleteRole(), ilSoapUserAdministration\deleteUser(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilSoapUtils\distributeMails(), ilSoapCourseAdministration\excludeCourseMember(), ilSoapGroupAdministration\excludeGroupMember(), ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapExerciseAdministration\getExerciseXML(), ilSoapFileAdministration\getFileXML(), ilSoapGroupAdministration\getGroup(), ilSoapGroupAdministration\getGroupsForUser(), ilSoapSCORMAdministration\getIMSManifestXML(), ilSoapLearningProgressAdministration\getLearningProgressChanges(), ilSoapRBACAdministration\getLocalRoles(), ilSoapUtils\getMobsOfObject(), getNIC(), ilSoapTestAdministration\getNrOfQuestionsInPass(), ilSoapObjectAdministration\getObjectByReference(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilSoapObjectAdministration\getObjIdByImportId(), ilSoapObjectAdministration\getObjIdsByRefIds(), ilSoapRBACAdministration\getOperations(), ilSoapObjectAdministration\getPathForRefId(), ilSoapTestAdministration\getPositionOfQuestion(), ilSoapTestAdministration\getPreviousReachedPoints(), ilSoapTestAdministration\getQuestionSolution(), ilSoapObjectAdministration\getRefIdsByImportId(), ilSoapObjectAdministration\getRefIdsByObjId(), ilSoapRBACAdministration\getRoles(), ilSoapSCORMAdministration\getSCORMCompletionStatus(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapTestAdministration\getTestResults(), ilSoapTestAdministration\getTestUserData(), ilSoapObjectAdministration\getTreeChilds(), ilSoapUserAdministration\getUser(), ilSoapUserAdministration\getUserForRole(), ilSoapUserAdministration\getUserIdBySid(), ilSoapRBACAdministration\getUserRoles(), ilSoapUserAdministration\getUsersForContainer(), ilSoapUserAdministration\getUserXML(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilSoapGroupAdministration\groupExists(), ilSoapUtils\handleECSTasks(), ilSoapUserAdministration\hasNewMail(), ilSoapSCORMAdministration\hasSCORMCertificate(), ilSoapUtils\ilClone(), ilSoapUtils\ilCloneDependencies(), ilSoapUserAdministration\importUsers(), ilSoapCourseAdministration\isAssignedToCourse(), ilSoapGroupAdministration\isAssignedToGroup(), ilSoapUserAdministration\logout(), ilSoapUserAdministration\lookupUser(), ilSoapObjectAdministration\moveObject(), ilSoapWebLinkAdministration\readWebLink(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSoapTestAdministration\removeTestResults(), ilSoapRBACAdministration\revokePermissions(), ilSoapTestAdministration\saveQuestion(), ilSoapTestAdministration\saveQuestionSolution(), ilSoapUtils\saveTempFileAsMediaObject(), ilSoapObjectAdministration\searchObjects(), ilSoapRBACAdministration\searchRoles(), ilSoapUserAdministration\searchUser(), ilSoapUtils\sendMail(), ilSoapCourseAdministration\updateCourse(), ilSoapExerciseAdministration\updateExercise(), ilSoapFileAdministration\updateFile(), ilSoapGroupAdministration\updateGroup(), ilSoapObjectAdministration\updateObjects(), ilSoapUserAdministration\updatePassword(), and ilSoapWebLinkAdministration\updateWebLink().

192  {
193  list($sid,$client) = $this->__explodeSid($sid);
194  define('CLIENT_ID',$client);
195  $_COOKIE['ilClientId'] = $client;
196  $_COOKIE['PHPSESSID'] = $sid;
197  #$_SESSION['_authhttp'.md5(CLIENT_ID)] = true;
198  #$_SESSION['PHPSESSID'] = $sid;
199  }
$_COOKIE["ilClientId"]
Definition: cron.php:11
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initErrorWriter()

ilSoapAdministration::initErrorWriter ( )

Overwrite error handler.

public

Parameters

Definition at line 151 of file class.ilSoapAdministration.php.

152  {
153  include_once('./Services/Init/classes/class.ilErrorHandling.php');
154 
155  set_error_handler(array('ilErrorHandling','_ilErrorWriter'),E_ALL);
156  }

◆ initIlias()

ilSoapAdministration::initIlias ( )

Definition at line 201 of file class.ilSoapAdministration.php.

References ilContext\CONTEXT_SOAP, ilContext\getType(), and ilInitialisation\initILIAS().

Referenced by ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilSoapGroupAdministration\addGroup(), ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilSoapUserAdministration\addUser(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilSoapGroupAdministration\assignGroupMember(), ilSoapObjectAdministration\copyObject(), ilSoapWebLinkAdministration\createWebLink(), ilSoapCourseAdministration\deleteCourse(), ilSoapUtils\deleteExpiredDualOptInUserObjects(), ilSoapObjectAdministration\deleteObject(), ilSoapLearningProgressAdministration\deleteProgress(), ilSoapRBACAdministration\deleteRole(), ilSoapUserAdministration\deleteUser(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilSoapUtils\distributeMails(), ilSoapCourseAdministration\excludeCourseMember(), ilSoapGroupAdministration\excludeGroupMember(), ilSoapCourseAdministration\getCoursesForUser(), ilSoapCourseAdministration\getCourseXML(), ilSoapExerciseAdministration\getExerciseXML(), ilSoapFileAdministration\getFileXML(), ilSoapGroupAdministration\getGroup(), ilSoapGroupAdministration\getGroupsForUser(), ilSoapSCORMAdministration\getIMSManifestXML(), ilSoapLearningProgressAdministration\getLearningProgressChanges(), ilSoapRBACAdministration\getLocalRoles(), ilSoapUtils\getMobsOfObject(), getNIC(), ilSoapTestAdministration\getNrOfQuestionsInPass(), ilSoapObjectAdministration\getObjectByReference(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilSoapObjectAdministration\getObjIdByImportId(), ilSoapObjectAdministration\getObjIdsByRefIds(), ilSoapRBACAdministration\getOperations(), ilSoapObjectAdministration\getPathForRefId(), ilSoapTestAdministration\getPositionOfQuestion(), ilSoapTestAdministration\getPreviousReachedPoints(), ilSoapTestAdministration\getQuestionSolution(), ilSoapObjectAdministration\getRefIdsByImportId(), ilSoapObjectAdministration\getRefIdsByObjId(), ilSoapRBACAdministration\getRoles(), ilSoapSCORMAdministration\getSCORMCompletionStatus(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapTestAdministration\getTestResults(), ilSoapTestAdministration\getTestUserData(), ilSoapObjectAdministration\getTreeChilds(), ilSoapUserAdministration\getUser(), ilSoapUserAdministration\getUserForRole(), ilSoapUserAdministration\getUserIdBySid(), ilSoapRBACAdministration\getUserRoles(), ilSoapUserAdministration\getUsersForContainer(), ilSoapUserAdministration\getUserXML(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilSoapGroupAdministration\groupExists(), ilSoapUtils\handleECSTasks(), ilSoapUserAdministration\hasNewMail(), ilSoapSCORMAdministration\hasSCORMCertificate(), ilSoapUtils\ilClone(), ilSoapUtils\ilCloneDependencies(), ilSoapUserAdministration\importUsers(), ilSoapCourseAdministration\isAssignedToCourse(), ilSoapGroupAdministration\isAssignedToGroup(), ilSoapUserAdministration\logout(), ilSoapUserAdministration\lookupUser(), ilSoapObjectAdministration\moveObject(), ilSoapWebLinkAdministration\readWebLink(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSoapTestAdministration\removeTestResults(), ilSoapRBACAdministration\revokePermissions(), ilSoapTestAdministration\saveQuestion(), ilSoapTestAdministration\saveQuestionSolution(), ilSoapUtils\saveTempFileAsMediaObject(), ilSoapObjectAdministration\searchObjects(), ilSoapRBACAdministration\searchRoles(), ilSoapUserAdministration\searchUser(), ilSoapUtils\sendMail(), ilSoapCourseAdministration\updateCourse(), ilSoapExerciseAdministration\updateExercise(), ilSoapFileAdministration\updateFile(), ilSoapGroupAdministration\updateGroup(), ilSoapObjectAdministration\updateObjects(), ilSoapUserAdministration\updatePassword(), and ilSoapWebLinkAdministration\updateWebLink().

202  {
204  {
205  try
206  {
207  require_once("Services/Init/classes/class.ilInitialisation.php");
209  }
210  catch(Exception $e)
211  {
212  // #10608
213  // no need to do anything here, see __checkSession() below
214  }
215  }
216  }
static initILIAS()
ilias initialisation
static getType()
Get context type.
const CONTEXT_SOAP
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isFault()

ilSoapAdministration::isFault (   $object)

Definition at line 339 of file class.ilSoapAdministration.php.

Referenced by ilSoapObjectAdministration\addObject(), ilSoapObjectAdministration\copyObject(), ilSoapCourseAdministration\getCourseXML(), ilSoapUserAdministration\getUsersForContainer(), ilSoapObjectAdministration\moveObject(), ilSoapObjectAdministration\updateObjects(), and ilSoapObjectAdministration\validateReferences().

339  {
340  switch($this->error_method)
341  {
342  case NUSOAP:
343  return $object instanceof soap_fault;
344  case PHP5:
345  return $object instanceof SoapFault;
346  }
347  return true;
348  }
soap_fault class, allows for creation of faults mainly used for returning faults from deployed functi...
Definition: nusoap.php:669
+ Here is the caller graph for this function:

◆ return_bytes()

static ilSoapAdministration::return_bytes (   $val)
static

calculate bytes from K,M,G modifiers e.g: 8M = 8 * 1024 * 1024 bytes

Definition at line 324 of file class.ilSoapAdministration.php.

Referenced by getNIC().

324  {
325  $val = trim($val);
326  $last = strtolower($val{strlen($val)-1});
327  switch($last) {
328  // The 'G' modifier is available since PHP 5.1.0
329  case 'g':
330  $val *= 1024;
331  case 'm':
332  $val *= 1024;
333  case 'k':
334  $val *= 1024;
335  }
336  return $val;
337  }
+ Here is the caller graph for this function:

Field Documentation

◆ $error_method

ilSoapAdministration::$error_method = null

Definition at line 56 of file class.ilSoapAdministration.php.

◆ $sauth

ilSoapAdministration::$sauth = null

Definition at line 50 of file class.ilSoapAdministration.php.

◆ $soap_check

ilSoapAdministration::$soap_check = true
protected

Definition at line 43 of file class.ilSoapAdministration.php.


The documentation for this class was generated from the following file: