ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
class.ilObject2.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3
4include_once("./Services/Object/classes/class.ilObject.php");
5
14abstract class ilObject2 extends ilObject
15{
22 function __construct($a_id = 0, $a_reference = true)
23 {
24 $this->initType();
25 parent::ilObject($a_id, $a_reference);
26 }
27
28 abstract protected function initType();
29
30 final function withReferences() { return parent::withReferences(); }
31
35 final function read($a_force_db = false)
36 {
37 parent::read($a_force_db);
38 $this->doRead();
39 }
40 protected function doRead()
41 {
42
43 }
44
45 function getId() { return parent::getId(); }
46 function setId($a_id) { return parent::setId($a_id); }
47 final function setRefId($a_id) { return parent::setRefId($a_id); }
48 final function getRefId() { return parent::getRefId(); }
49 final function getType() { return parent::getType(); }
50 final function setType($a_type) { return parent::setType($a_type); }
51 final function getPresentationTitle() { return parent::getPresentationTitle(); }
52 final function getTitle() { return parent::getTitle(); }
53 final function getUntranslatedTitle() { return parent::getUntranslatedTitle(); }
54 final function setTitle($a_title) { return parent::setTitle($a_title); }
55 final function getDescription() { return parent::getDescription(); }
56 final function setDescription($a_desc) { return parent::setDescription($a_desc); }
57 final function getLongDescription() { return parent::getLongDescription(); }
58 final function getImportId() { return parent::getImportId(); }
59 final function setImportId($a_import_id) { return parent::setImportId($a_import_id); }
60 final static function _lookupObjIdByImportId($a_import_id) { return parent::_lookupObjIdByImportId($a_import_id); }
61 final function getOwner() { return parent::getOwner(); }
62 final function getOwnerName() { return parent::getOwnerName(); }
63 final function _lookupOwnerName($a_owner_id) { return parent::_lookupOwnerName($a_owner_id); }
64 final function setOwner($a_owner) { return parent::setOwner($a_owner); }
65 final function getCreateDate() { return parent::getCreateDate(); }
66 final function getLastUpdateDate() { return parent::getLastUpdateDate(); }
67 final function setObjDataRecord($a_record) { return parent::setObjDataRecord($a_record); }
68
69 final function create($a_clone_mode = false)
70 {
71 if($this->beforeCreate())
72 {
73 $id = parent::create();
74 if($id)
75 {
76 $this->doCreate($a_clone_mode);
77 return $id;
78 }
79 }
80 }
81
82 protected function doCreate()
83 {
84
85 }
86
87 protected function beforeCreate()
88 {
89 return true;
90 }
91
92 final function update()
93 {
94 if($this->beforeUpdate())
95 {
96 if (!parent::update())
97 {
98 return false;
99 }
100 $this->doUpdate();
101
102 return true;
103 }
104
105 return false;
106 }
107
108 protected function doUpdate()
109 {
110
111 }
112
113 protected function beforeUpdate()
114 {
115 return true;
116 }
117
118 final function MDUpdateListener($a_element)
119 {
120 if($this->beforeMDUpdateListener($a_element))
121 {
122 if(parent::MDUpdateListener($a_element))
123 {
124 $this->doMDUpdateListener($a_element);
125 return true;
126 }
127 }
128 return false;
129 }
130
131 protected function doMDUpdateListener($a_element)
132 {
133
134 }
135
136 protected function beforeMDUpdateListener($a_element)
137 {
138 return true;
139 }
140
141 final function createMetaData()
142 {
143 if($this->beforeCreateMetaData())
144 {
145 if(parent::createMetaData())
146 {
147 $this->doCreateMetaData();
148 return true;
149 }
150 }
151 return false;
152 }
153
154 protected function doCreateMetaData()
155 {
156
157 }
158
159 protected function beforeCreateMetaData()
160 {
161 return true;
162 }
163
164 final function updateMetaData()
165 {
166 if($this->beforeUpdateMetaData())
167 {
168 if(parent::updateMetaData())
169 {
170 $this->doUpdateMetaData();
171 return true;
172 }
173 }
174 return false;
175 }
176
177 protected function doUpdateMetaData()
178 {
179
180 }
181
182 protected function beforeUpdateMetaData()
183 {
184 return true;
185 }
186
187 final function deleteMetaData() { return parent::deleteMetaData(); }
188 final function updateOwner() { return parent::updateOwner(); }
189 final function _getIdForImportId($a_import_id) { return parent::_getIdForImportId($a_import_id); }
190 static final function _getAllReferences($a_id) { return parent::_getAllReferences($a_id); }
191 final static function _lookupTitle($a_id) { return parent::_lookupTitle($a_id); }
192 final function _lookupOwner($a_id) { return parent::_lookupOwner($a_id); }
193 final static function _getIdsForTitle($title, $type = '', $partialmatch = false) { return parent::_getIdsForTitle($title, $type, $partialmatch); }
194 final static function _lookupDescription($a_id) { return parent::_lookupDescription($a_id); }
195 final function _lookupLastUpdate($a_id, $a_as_string = false) { return parent::_lookupLastUpdate($a_id, $a_as_string); }
196 final function _getLastUpdateOfObjects($a_objs) { return parent::_getLastUpdateOfObjects($a_objs); }
197 final static function _lookupObjId($a_id) { return parent::_lookupObjId($a_id); }
198 final function _setDeletedDate($a_ref_id) { return parent::_setDeletedDate($a_ref_id); }
199 final function _resetDeletedDate($a_ref_id) { return parent::_resetDeletedDate($a_ref_id); }
200 final function _lookupDeletedDate($a_ref_id) { return parent::_lookupDeletedDate($a_ref_id); }
201 final function _writeTitle($a_obj_id, $a_title) { return parent::_writeTitle($a_obj_id, $a_title); }
202 final function _writeDescription($a_obj_id, $a_desc) { return parent::_writeDescription($a_obj_id, $a_desc); }
203 final function _writeImportId($a_obj_id, $a_import_id) { return parent::_writeImportId($a_obj_id, $a_import_id); }
204 final static function _lookupType($a_id,$a_reference = false) { return parent::_lookupType($a_id,$a_reference); }
205 final function _isInTrash($a_ref_id) { return parent::_isInTrash($a_ref_id); }
206 final function _hasUntrashedReference($a_obj_id) { return parent::_hasUntrashedReference($a_obj_id); }
207 final static function _lookupObjectId($a_ref_id) { return parent::_lookupObjectId($a_ref_id); }
208 final function _getObjectsDataForType($a_type, $a_omit_trash = false) { return parent::_getObjectsDataForType($a_type, $a_omit_trash); }
209 final function putInTree($a_parent_ref) { return parent::putInTree($a_parent_ref); }
210 final function setPermissions($a_parent_ref) { return parent::setPermissions($a_parent_ref); }
211 final function createReference() { return parent::createReference(); }
212 final function countReferences() { return parent::countReferences(); }
213
214 final function delete()
215 {
216 if($this->beforeDelete())
217 {
218 if(parent::delete())
219 {
220 $this->doDelete();
221 $this->id = null;
222 return true;
223 }
224 }
225 return false;
226 }
227
228 protected function doDelete()
229 {
230
231 }
232
233 protected function beforeDelete()
234 {
235 return true;
236 }
237
238 function initDefaultRoles() { return array(); }
239
240 final public static function _exists($a_id, $a_reference = false) { return parent::_exists($a_id, $a_reference); }
241 function notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params = 0) { return parent::notify($a_event,$a_ref_id,$a_parent_non_rbac_id,$a_node_id,$a_params); }
242 final function setRegisterMode($a_bool) { return parent::setRegisterMode($a_bool); }
243 final function isUserRegistered($a_user_id = 0) { return parent::isUserRegistered($a_user_id); }
244 final function requireRegistration() { return parent::requireRegistration(); }
245 //final function getXMLZip() { return parent::getXMLZip(); }
246 //final function getHTMLDirectory() { return parent::getHTMLDirectory(); }
247 final static function _getObjectsByType($a_obj_type = "", $a_owner = "") { return parent::_getObjectsByType($a_obj_type, $a_owner); }
248
249 final static function _prepareCloneSelection($a_ref_ids,$new_type) { return parent::_prepareCloneSelection($a_ref_ids,$new_type); }
250 final function appendCopyInfo($a_target_id,$a_copy_id) { return parent::appendCopyInfo($a_target_id,$a_copy_id); }
251 final function cloneMetaData($target_obj) { return parent::cloneMetaData($target_obj); }
252
253 final function cloneObject($a_target_id, $a_copy_id = null, $a_omit_tree = false)
254 {
255 if($this->beforeCloneObject())
256 {
257 $new_obj = parent::cloneObject($a_target_id, $a_copy_id, $a_omit_tree);
258 if($new_obj)
259 {
260 $this->doCloneObject($new_obj, $a_target_id, $a_copy_id);
261 return $new_obj;
262 }
263 }
264 }
265
266 protected function doCloneObject($new_obj, $a_target_id, $a_copy_id = null)
267 {
268
269 }
270
271 protected function beforeCloneObject()
272 {
273 return true;
274 }
275
276 function cloneDependencies($a_target_id,$a_copy_id) { return parent::cloneDependencies($a_target_id,$a_copy_id); }
277
278 final public static function _getIcon($a_obj_id = "", $a_size = "big", $a_type = "", $a_offline = false) { return parent::_getIcon($a_obj_id, $a_size, $a_type, $a_offline); }
279
280}
281?>
Class ilObject2 This is an intermediate progress of ilObject class.
setRegisterMode($a_bool)
_lookupOwnerName($a_owner_id)
lookup owner name for owner id
static _getObjectsByType($a_obj_type="", $a_owner="")
Get objects by type.
getPresentationTitle()
get presentation title Normally same as title Overwritten for sessions
setType($a_type)
set object type @access public
getRefId()
get reference id @access public
_getLastUpdateOfObjects($a_objs)
Get last update for a set of media objects.
initDefaultRoles()
init default roles settings Purpose of this function is to create a local role folder and local roles...
setTitle($a_title)
set object title
MDUpdateListener($a_element)
Meta data update listener.
create($a_clone_mode=false)
createMetaData()
create meta data entry
_getIdForImportId($a_import_id)
get current object id for import id (static)
countReferences()
count references of object
static _exists($a_id, $a_reference=false)
getOwner()
get object owner
_resetDeletedDate($a_ref_id)
only called in ilObjectGUI::insertSavedNodes
cloneMetaData($target_obj)
Copy meta data.
isUserRegistered($a_user_id=0)
_lookupLastUpdate($a_id, $a_as_string=false)
lookup last update
getLongDescription()
get object long description (stored in object_description)
putInTree($a_parent_ref)
maybe this method should be in tree object!?
deleteMetaData()
delete meta data entry
_setDeletedDate($a_ref_id)
only called in ilTree::saveSubTree
static _prepareCloneSelection($a_ref_ids, $new_type)
static _lookupDescription($a_id)
lookup object description
cloneDependencies($a_target_id, $a_copy_id)
Clone object dependencies.
static _getIdsForTitle($title, $type='', $partialmatch=false)
setRefId($a_id)
set reference id @access public
cloneObject($a_target_id, $a_copy_id=null, $a_omit_tree=false)
Clone object permissions, put in tree ...
getImportId()
get import id
getUntranslatedTitle()
get untranslated object title @access public
static _getIcon($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
_lookupOwner($a_id)
lookup object owner
_hasUntrashedReference($a_obj_id)
checks wether an object has at least one reference that is not in trash
updateOwner()
update owner of object in db
read($a_force_db=false)
Read data from db.
appendCopyInfo($a_target_id, $a_copy_id)
Prepend Copy info if object with same name exists in that container.
static _lookupObjIdByImportId($a_import_id)
doMDUpdateListener($a_element)
_getObjectsDataForType($a_type, $a_omit_trash=false)
get all objects of a certain type
updateMetaData()
update meta data entry
setPermissions($a_parent_ref)
set permissions of object
static _getAllReferences($a_id)
get all reference ids of object
withReferences()
determines wehter objects are referenced or not (got ref ids or not)
_isInTrash($a_ref_id)
checks wether object is in trash
static _lookupTitle($a_id)
lookup object title
getType()
get object type @access public
getDescription()
get object description
notify($a_event, $a_ref_id, $a_parent_non_rbac_id, $a_node_id, $a_params=0)
notifys an object about an event occured Based on the event passed, each object may decide how it rea...
_writeDescription($a_obj_id, $a_desc)
write description to db (static)
beforeMDUpdateListener($a_element)
static _lookupObjId($a_id)
_writeTitle($a_obj_id, $a_title)
write title to db (static)
setOwner($a_owner)
set object owner
update()
update object in db
setDescription($a_desc)
set object description
static _lookupType($a_id, $a_reference=false)
lookup object type
_writeImportId($a_obj_id, $a_import_id)
write import id to db (static)
_lookupDeletedDate($a_ref_id)
only called in ilObjectGUI::insertSavedNodes
createReference()
creates reference for object
getId()
get object id @access public
setObjDataRecord($a_record)
set object_data record (note: this method should only be called from the ilObjectFactory class)
__construct($a_id=0, $a_reference=true)
Constructor @access public.
setImportId($a_import_id)
set import id
setId($a_id)
set object id @access public
getTitle()
get object title @access public
getCreateDate()
get create date @access public
getLastUpdateDate()
get last update date @access public
doCloneObject($new_obj, $a_target_id, $a_copy_id=null)
static _lookupObjectId($a_ref_id)
lookup object id
Class ilObject Basic functions for all objects.