ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
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(), 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(), 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(), 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, $ilDB, 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)
global $ilDB
$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:17
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(), 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(), 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: