ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilObjCloud Class Reference

Class ilObjCloud. More...

+ Inheritance diagram for ilObjCloud:
+ Collaboration diagram for ilObjCloud:

Public Member Functions

 __construct ($a_ref_id=0, $a_reference=true)
 Constructor. More...
 
 initType ()
 
 doCreate ()
 Create object. More...
 
 doRead ()
 Read data from db. More...
 
 doUpdate ()
 Update data. More...
 
 doDelete ()
 Delete data from db. More...
 
 doClone ($a_target_id, $a_copy_id, $new_obj)
 Do Cloning. More...
 
 setOnline ($a_val)
 Set online. More...
 
 getOnline ()
 Get online. More...
 
 setRootFolder ($a_val, $no_check=false)
 Set root_folder, this may only be changed by the owner of the object. More...
 
 getRootFolder ()
 Get root_folder. More...
 
 setRootId ($a_val, $no_check=false)
 Set root_id. More...
 
 getRootId ()
 Get root_id. More...
 
 setServiceName ($a_val)
 Set service. More...
 
 getServiceName ()
 Get service. More...
 
 setOwnerId ($owner_id)
 
 getOwnerId ()
 
 currentUserIsOwner ()
 
 setAuthComplete ($auth_complete)
 
 getAuthComplete ()
 
- Public Member Functions inherited from ilObject2
 __construct ($a_id=0, $a_reference=true)
 Constructor public. More...
 
 withReferences ()
 
 read ()
 Read data from db. More...
 
 getId ()
 
 setId ($a_id)
 
 setRefId ($a_id)
 
 getRefId ()
 
 getType ()
 
 setType ($a_type)
 
 getPresentationTitle ()
 
 getTitle ()
 
 getUntranslatedTitle ()
 
 setTitle ($a_title)
 
 getDescription ()
 
 setDescription ($a_desc)
 
 getLongDescription ()
 
 getImportId ()
 
 setImportId ($a_import_id)
 
 getOwner ()
 
 getOwnerName ()
 
 setOwner ($a_owner)
 
 getCreateDate ()
 
 getLastUpdateDate ()
 
 create ($a_clone_mode=false)
 
 update ()
 
 MDUpdateListener ($a_element)
 
 createMetaData ()
 
 updateMetaData ()
 
 deleteMetaData ()
 
 updateOwner ()
 
 putInTree ($a_parent_ref)
 
 setPermissions ($a_parent_ref)
 
 createReference ()
 
 countReferences ()
 
 delete ()
 
 initDefaultRoles ()
 
 setRegisterMode ($a_bool)
 
 isUserRegistered ($a_user_id=0)
 
 requireRegistration ()
 
 appendCopyInfo ($a_target_id, $a_copy_id)
 
 cloneMetaData ($target_obj)
 
 cloneObject ($a_target_id, $a_copy_id=null, $a_omit_tree=false)
 
 cloneDependencies ($a_target_id, $a_copy_id)
 
- Public Member Functions inherited from ilObject
 __construct ($a_id=0, $a_reference=true)
 Constructor public. More...
 
 withReferences ()
 determines wehter objects are referenced or not (got ref ids or not) More...
 
 read ()
 read object data from db into object More...
 
 getId ()
 get object id public More...
 
 setId ($a_id)
 set object id public More...
 
 setRefId ($a_id)
 set reference id public More...
 
 getRefId ()
 get reference id public More...
 
 getType ()
 get object type public More...
 
 setType ($a_type)
 set object type public More...
 
 getPresentationTitle ()
 get presentation title Normally same as title Overwritten for sessions More...
 
 getTitle ()
 get object title public More...
 
 getUntranslatedTitle ()
 get untranslated object title public More...
 
 setTitle ($a_title)
 set object title More...
 
 getDescription ()
 get object description More...
 
 setDescription ($a_desc)
 set object description More...
 
 getLongDescription ()
 get object long description (stored in object_description) More...
 
 getImportId ()
 get import id More...
 
 setImportId ($a_import_id)
 set import id More...
 
 getOwner ()
 get object owner More...
 
 getOwnerName ()
 
 setOwner ($a_owner)
 set object owner More...
 
 getCreateDate ()
 get create date public More...
 
 getLastUpdateDate ()
 get last update date public More...
 
 getDiskUsage ()
 Gets the disk usage of the object in bytes. More...
 
 create ()
 create More...
 
 update ()
 update object in db More...
 
 MDUpdateListener ($a_element)
 Meta data update listener. More...
 
 createMetaData ()
 create meta data entry More...
 
 updateMetaData ()
 update meta data entry More...
 
 deleteMetaData ()
 delete meta data entry More...
 
 updateOwner ()
 update owner of object in db More...
 
 putInTree ($a_parent_ref)
 maybe this method should be in tree object!? More...
 
 setPermissions ($a_parent_ref)
 set permissions of object More...
 
 setParentRolePermissions ($a_parent_ref)
 Initialize the permissions of parent roles (local roles of categories, global roles...) This method is overwritten in e.g courses, groups for building permission intersections with non_member templates. More...
 
 createReference ()
 creates reference for object More...
 
 countReferences ()
 count references of object More...
 
 initDefaultRoles ()
 init default roles settings Purpose of this function is to create a local role folder and local roles, that are needed depending on the object type If you want to setup default local roles you MUST overwrite this method in derived object classes (see ilObjForum for an example) public More...
 
 applyDidacticTemplate ($a_tpl_id)
 Apply template. More...
 
 setRegisterMode ($a_bool)
 
 isUserRegistered ($a_user_id=0)
 
 requireRegistration ()
 
 getXMLZip ()
 
 getHTMLDirectory ()
 
 appendCopyInfo ($a_target_id, $a_copy_id)
 Prepend Copy info if object with same name exists in that container. More...
 
 cloneDependencies ($a_target_id, $a_copy_id)
 Clone object dependencies. More...
 
 cloneMetaData ($target_obj)
 Copy meta data. More...
 
 getPossibleSubObjects ($a_filter=true)
 get all possible subobjects of this type the object can decide which types of subobjects are possible jut in time overwrite if the decision distinguish from standard model More...
 

Protected Attributes

 $online = false
 
 $service = ""
 
 $root_folder = ""
 
 $owner_id = 0
 
 $auth_complete = false
 
- Protected Attributes inherited from ilObject
 $objDefinition
 
 $db
 
 $log
 
 $error
 
 $tree
 
 $app_event_handler
 
 $rbacadmin
 
 $rbacreview
 

Additional Inherited Members

- Static Public Member Functions inherited from ilObject2
static _lookupObjIdByImportId ($a_import_id)
 
static _lookupOwnerName ($a_owner_id)
 
static _getIdForImportId ($a_import_id)
 
static _getAllReferences ($a_id)
 
static _lookupTitle ($a_id)
 
static _lookupOwner ($a_id)
 
static _getIdsForTitle ($title, $type='', $partialmatch=false)
 
static _lookupDescription ($a_id)
 
static _lookupLastUpdate ($a_id, $a_as_string=false)
 
static _getLastUpdateOfObjects ($a_objs)
 
static _lookupObjId ($a_id)
 
static _setDeletedDate ($a_ref_id)
 
static _resetDeletedDate ($a_ref_id)
 
static _lookupDeletedDate ($a_ref_id)
 
static _writeTitle ($a_obj_id, $a_title)
 
static _writeDescription ($a_obj_id, $a_desc)
 
static _writeImportId ($a_obj_id, $a_import_id)
 
static _lookupType ($a_id, $a_reference=false)
 
static _isInTrash ($a_ref_id)
 
static _hasUntrashedReference ($a_obj_id)
 
static _lookupObjectId ($a_ref_id)
 
static _getObjectsDataForType ($a_type, $a_omit_trash=false)
 
static _exists ($a_id, $a_reference=false, $a_type=null)
 
static _getObjectsByType ($a_obj_type="", $a_owner="")
 
static _prepareCloneSelection ($a_ref_ids, $new_type, $a_show_path=true)
 
static _getIcon ($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
 
- Static Public Member Functions inherited from ilObject
static _lookupObjIdByImportId ($a_import_id)
 
static _lookupImportId ($a_obj_id)
 
static _lookupOwnerName ($a_owner_id)
 lookup owner name for owner id More...
 
static _getIdForImportId ($a_import_id)
 get current object id for import id (static) More...
 
static _getAllReferences ($a_id)
 get all reference ids of object More...
 
static _lookupTitle ($a_id)
 lookup object title More...
 
static _lookupOwner ($a_id)
 lookup object owner More...
 
static _getIdsForTitle ($title, $type='', $partialmatch=false)
 
static _lookupDescription ($a_id)
 lookup object description More...
 
static _lookupLastUpdate ($a_id, $a_as_string=false)
 lookup last update More...
 
static _getLastUpdateOfObjects ($a_objs)
 Get last update for a set of media objects. More...
 
static _lookupObjId ($a_id)
 
static _setDeletedDate ($a_ref_id)
 only called in ilTree::saveSubTree More...
 
static setDeletedDates ($a_ref_ids)
 Set deleted date type $ilDB. More...
 
static _resetDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes More...
 
static _lookupDeletedDate ($a_ref_id)
 only called in ilObjectGUI::insertSavedNodes More...
 
static _writeTitle ($a_obj_id, $a_title)
 write title to db (static) More...
 
static _writeDescription ($a_obj_id, $a_desc)
 write description to db (static) More...
 
static _writeImportId ($a_obj_id, $a_import_id)
 write import id to db (static) More...
 
static _lookupType ($a_id, $a_reference=false)
 lookup object type More...
 
static _isInTrash ($a_ref_id)
 checks wether object is in trash More...
 
static _hasUntrashedReference ($a_obj_id)
 checks wether an object has at least one reference that is not in trash More...
 
static _lookupObjectId ($a_ref_id)
 lookup object id More...
 
static _getObjectsDataForType ($a_type, $a_omit_trash=false)
 get all objects of a certain type More...
 
static _exists ($a_id, $a_reference=false, $a_type=null)
 checks if an object exists in object_data More...
 
static _getObjectsByType ($a_obj_type="", $a_owner="")
 Get objects by type. More...
 
static _prepareCloneSelection ($a_ref_ids, $new_type, $show_path=true)
 Prepare copy wizard object selection. More...
 
static _getIcon ( $a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
 Get icon for repository item. More...
 
static collectDeletionDependencies (&$deps, $a_ref_id, $a_obj_id, $a_type, $a_depth=0)
 Collect deletion dependencies. More...
 
static getDeletionDependencies ($a_obj_id)
 Get deletion dependencies. More...
 
static getLongDescriptions (array $a_obj_ids)
 Get long description data. More...
 
static getAllOwnedRepositoryObjects ($a_user_id)
 Get all ids of objects user owns. More...
 
static fixMissingTitles ($a_type, array &$a_obj_title_map)
 Try to fix missing object titles. More...
 
static _lookupCreationDate ($a_id)
 Lookup creation date. More...
 
static hasAutoRating ($a_type, $a_ref_id)
 Check if auto rating is active for parent group/course. More...
 
- Data Fields inherited from ilObject
const TITLE_LENGTH = 255
 max length of object title More...
 
const DESC_LENGTH = 128
 
 $lng
 
 $id
 
 $ref_id
 
 $type
 
 $title
 
 $untranslatedTitle
 
 $desc
 
 $long_desc
 
 $owner
 
 $create_date
 
 $last_update
 
 $import_id
 
 $register = false
 
 $referenced
 
 $objectList
 
 $max_title
 
 $max_desc
 
 $add_dots
 
- Protected Member Functions inherited from ilObject2
 initType ()
 
 doRead ()
 
 doCreate ()
 
 beforeCreate ()
 
 doUpdate ()
 
 beforeUpdate ()
 
 doMDUpdateListener ($a_element)
 
 beforeMDUpdateListener ($a_element)
 
 doCreateMetaData ()
 
 beforeCreateMetaData ()
 
 doUpdateMetaData ()
 
 beforeUpdateMetaData ()
 
 doDelete ()
 
 beforeDelete ()
 
 doCloneObject ($new_obj, $a_target_id, $a_copy_id=null)
 
 beforeCloneObject ()
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilObjCloud::__construct (   $a_ref_id = 0,
  $a_reference = true 
)

Constructor.

public

Definition at line 49 of file class.ilObjCloud.php.

50  {
51  parent::__construct($a_ref_id, $a_reference);
52  }

Member Function Documentation

◆ currentUserIsOwner()

ilObjCloud::currentUserIsOwner ( )
Returns
bool

Definition at line 286 of file class.ilObjCloud.php.

References $DIC, $ilUser, and getOwnerId().

Referenced by setRootFolder(), and setRootId().

287  {
288  global $DIC;
289  $ilUser = $DIC['ilUser'];
290  return $ilUser->getId() == $this->getOwnerId();
291  }
global $DIC
Definition: saml.php:7
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ doClone()

ilObjCloud::doClone (   $a_target_id,
  $a_copy_id,
  $new_obj 
)

Do Cloning.

Definition at line 153 of file class.ilObjCloud.php.

References $DIC, $ilDB, ilCopyWizardOptions\_getInstance(), getAuthComplete(), getOnline(), getOwnerId(), getRootFolder(), getRootId(), and getServiceName().

154  {
155  global $DIC;
156  $ilDB = $DIC['ilDB'];
157 
158  //copy online status if object is not the root copy object
159  $cp_options = ilCopyWizardOptions::_getInstance($a_copy_id);
160 
161  if (!$cp_options->isRootNode($this->getRefId())) {
162  $new_obj->setOnline($this->getOnline());
163  }
164 
165  $new_obj->setRootFolder($this->getRootFolder());
166  $new_obj->getRootId($this->getRootId());
167  $new_obj->setServiceName($this->getServiceName());
168  $new_obj->serOwnerId($this->getOwnerId());
169  $new_obj->setAuthComplete($this->getAuthComplete());
170  $new_obj->update();
171  }
global $DIC
Definition: saml.php:7
getRootFolder()
Get root_folder.
getRootId()
Get root_id.
getOnline()
Get online.
static _getInstance($a_copy_id)
Get instance of copy wizard options.
global $ilDB
getServiceName()
Get service.
+ Here is the call graph for this function:

◆ doCreate()

ilObjCloud::doCreate ( )

Create object.

The owner of the cloud Object is only set once, when the object is created. This prevents, that users access data of a cloud folder which they are not authorized to through changing the root_path of the cloud_folder

Definition at line 65 of file class.ilObjCloud.php.

References $DIC, $ilDB, $ilUser, getOwnerId(), and setOwnerId().

66  {
67  global $DIC;
68  $ilDB = $DIC['ilDB'];
69  $ilUser = $DIC['ilUser'];
70 
75  $this->setOwnerId($ilUser->getId());
76  $ilDB->manipulate("INSERT INTO il_cld_data " .
77  "(id, is_online, service, root_folder, root_id, owner_id, auth_complete) VALUES (" .
78  $ilDB->quote($this->getId(), "integer") . "," .
79  $ilDB->quote("", "integer") . "," .
80  $ilDB->quote("", "text") . "," .
81  $ilDB->quote("", "text") . "," .
82  $ilDB->quote("", "text") . "," .
83  $ilDB->quote($this->getOwnerId(), "integer") . "," .
84  $ilDB->quote("", "integer") .
85  ")");
86  }
global $DIC
Definition: saml.php:7
$ilUser
Definition: imgupload.php:18
setOwnerId($owner_id)
global $ilDB
+ Here is the call graph for this function:

◆ doDelete()

ilObjCloud::doDelete ( )

Delete data from db.

Definition at line 132 of file class.ilObjCloud.php.

References $DIC, $ilDB, ilObject2\getId(), ilCloudConnector\getPluginClass(), and getServiceName().

133  {
134  global $DIC;
135  $ilDB = $DIC['ilDB'];
136 
137  if ($this->getServiceName() != null) {
138  $plugin_class = ilCloudConnector::getPluginClass($this->getServiceName(), $this->getId());
139  if ($plugin_class) {
140  $plugin_class->doDelete($this->getId());
141  }
142  }
143 
144  $ilDB->manipulate(
145  "DELETE FROM il_cld_data WHERE " .
146  " id = " . $ilDB->quote($this->getId(), "integer")
147  );
148  }
global $DIC
Definition: saml.php:7
static getPluginClass($service_name, $obj_id)
global $ilDB
getServiceName()
Get service.
+ Here is the call graph for this function:

◆ doRead()

ilObjCloud::doRead ( )

Read data from db.

Definition at line 91 of file class.ilObjCloud.php.

References $DIC, $ilDB, setAuthComplete(), setOnline(), setOwnerId(), setRootFolder(), setRootId(), and setServiceName().

92  {
93  global $DIC;
94  $ilDB = $DIC['ilDB'];
95 
96  $set = $ilDB->query("SELECT * FROM il_cld_data " .
97  " WHERE id = " . $ilDB->quote($this->getId(), "integer"));
98 
99  while ($rec = $ilDB->fetchAssoc($set)) {
100  $this->setOnline($rec["is_online"]);
101  $this->setRootFolder($rec["root_folder"]);
102  $this->setRootId($rec["root_id"]);
103  $this->setServiceName($rec["service"]);
104  $this->setOwnerId($rec["owner_id"]);
105  $this->setAuthComplete($rec["auth_complete"]);
106  }
107  }
global $DIC
Definition: saml.php:7
setServiceName($a_val)
Set service.
setOnline($a_val)
Set online.
setRootId($a_val, $no_check=false)
Set root_id.
setOwnerId($owner_id)
global $ilDB
setRootFolder($a_val, $no_check=false)
Set root_folder, this may only be changed by the owner of the object.
setAuthComplete($auth_complete)
+ Here is the call graph for this function:

◆ doUpdate()

ilObjCloud::doUpdate ( )

Update data.

Definition at line 112 of file class.ilObjCloud.php.

References $DIC, and $ilDB.

113  {
114  global $DIC;
115  $ilDB = $DIC['ilDB'];
116 
117  $ilDB->manipulate(
118  $up = "UPDATE il_cld_data SET " .
119  " is_online = " . $ilDB->quote($this->getOnline(), "integer") . "," .
120  " service = " . $ilDB->quote($this->getServiceName(), "text") . "," .
121  " root_folder = " . $ilDB->quote($this->getRootFolder(), "text") . "," .
122  " root_id = " . $ilDB->quote($this->getRootId(), "text") . "," .
123  " owner_id = " . $ilDB->quote($this->getOwnerId(), "integer") . "," .
124  " auth_complete = " . $ilDB->quote($this->getAuthComplete(), "integer") .
125  " WHERE id = " . $ilDB->quote($this->getId(), "integer")
126  );
127  }
global $DIC
Definition: saml.php:7
global $ilDB

◆ getAuthComplete()

ilObjCloud::getAuthComplete ( )
Returns
boolean

Definition at line 304 of file class.ilObjCloud.php.

References $auth_complete.

Referenced by doClone().

305  {
306  return $this->auth_complete;
307  }
+ Here is the caller graph for this function:

◆ getOnline()

ilObjCloud::getOnline ( )

Get online.

Returns
boolean online

Definition at line 192 of file class.ilObjCloud.php.

References $online.

Referenced by doClone().

193  {
194  return $this->online;
195  }
+ Here is the caller graph for this function:

◆ getOwnerId()

ilObjCloud::getOwnerId ( )
Returns
int

Definition at line 278 of file class.ilObjCloud.php.

References $owner_id.

Referenced by currentUserIsOwner(), doClone(), and doCreate().

279  {
280  return $this->owner_id;
281  }
+ Here is the caller graph for this function:

◆ getRootFolder()

ilObjCloud::getRootFolder ( )

Get root_folder.

Returns
string root_folder

Definition at line 218 of file class.ilObjCloud.php.

References $root_folder.

Referenced by doClone(), and setRootFolder().

219  {
220  return $this->root_folder;
221  }
+ Here is the caller graph for this function:

◆ getRootId()

ilObjCloud::getRootId ( )

Get root_id.

Returns
string root_id

Definition at line 242 of file class.ilObjCloud.php.

Referenced by doClone(), and setRootId().

243  {
244  return $this->root_id;
245  }
+ Here is the caller graph for this function:

◆ getServiceName()

ilObjCloud::getServiceName ( )

Get service.

Returns
string service

Definition at line 262 of file class.ilObjCloud.php.

Referenced by doClone(), doDelete(), and ilObjCloudGUI\serviceAuth().

263  {
264  return $this->service_name;
265  }
+ Here is the caller graph for this function:

◆ initType()

ilObjCloud::initType ( )

Definition at line 57 of file class.ilObjCloud.php.

58  {
59  $this->type = "cld";
60  }

◆ setAuthComplete()

ilObjCloud::setAuthComplete (   $auth_complete)
Parameters
boolean$auth_complete

Definition at line 296 of file class.ilObjCloud.php.

References $auth_complete.

Referenced by doRead().

297  {
298  $this->auth_complete = $auth_complete;
299  }
+ Here is the caller graph for this function:

◆ setOnline()

ilObjCloud::setOnline (   $a_val)

Set online.

Parameters
booleanonline

Definition at line 182 of file class.ilObjCloud.php.

Referenced by doRead().

183  {
184  $this->online = $a_val;
185  }
+ Here is the caller graph for this function:

◆ setOwnerId()

ilObjCloud::setOwnerId (   $owner_id)
Parameters
int$owner_id

Definition at line 270 of file class.ilObjCloud.php.

References $owner_id.

Referenced by doCreate(), and doRead().

271  {
272  $this->owner_id = $owner_id;
273  }
+ Here is the caller graph for this function:

◆ setRootFolder()

ilObjCloud::setRootFolder (   $a_val,
  $no_check = false 
)

Set root_folder, this may only be changed by the owner of the object.

This is due too security constraints. The parameter $no_check could be used by plugins for which these constraint is not an issue.

Parameters
stringroot_folder

Definition at line 203 of file class.ilObjCloud.php.

References currentUserIsOwner(), getRootFolder(), ilCloudUtil\normalizePath(), and ilCloudException\PERMISSION_TO_CHANGE_ROOT_FOLDER_DENIED.

Referenced by doRead().

204  {
205  if ($this->currentUserIsOwner() || $no_check || $this->getRootFolder() == null) {
206  $a_val = ilCloudUtil::normalizePath($a_val);
207  $this->root_folder = $a_val;
208  } else {
210  }
211  }
getRootFolder()
Get root_folder.
const PERMISSION_TO_CHANGE_ROOT_FOLDER_DENIED
Class ilCloudException.
static normalizePath($path)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setRootId()

ilObjCloud::setRootId (   $a_val,
  $no_check = false 
)

Set root_id.

Parameters
stringroot_id

Definition at line 228 of file class.ilObjCloud.php.

References currentUserIsOwner(), getRootId(), and ilCloudException\PERMISSION_TO_CHANGE_ROOT_FOLDER_DENIED.

Referenced by doRead().

229  {
230  if ($this->currentUserIsOwner() || $no_check || $this->getRootId() == null) {
231  $this->root_id = $a_val;
232  } else {
234  }
235  }
getRootId()
Get root_id.
const PERMISSION_TO_CHANGE_ROOT_FOLDER_DENIED
Class ilCloudException.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setServiceName()

ilObjCloud::setServiceName (   $a_val)

Set service.

Parameters
stringservice

Definition at line 252 of file class.ilObjCloud.php.

Referenced by doRead().

253  {
254  $this->service_name = $a_val;
255  }
+ Here is the caller graph for this function:

Field Documentation

◆ $auth_complete

ilObjCloud::$auth_complete = false
protected

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

Referenced by getAuthComplete(), and setAuthComplete().

◆ $online

ilObjCloud::$online = false
protected

Definition at line 21 of file class.ilObjCloud.php.

Referenced by getOnline().

◆ $owner_id

ilObjCloud::$owner_id = 0
protected

Definition at line 36 of file class.ilObjCloud.php.

Referenced by getOwnerId(), and setOwnerId().

◆ $root_folder

ilObjCloud::$root_folder = ""
protected

Definition at line 31 of file class.ilObjCloud.php.

Referenced by getRootFolder().

◆ $service

ilObjCloud::$service = ""
protected

Definition at line 26 of file class.ilObjCloud.php.


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