ILIAS  release_8 Revision v8.24
ilObjectFactory Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Collaboration diagram for ilObjectFactory:

Public Member Functions

 ObjectIdExists (int $obj_id)
 check if obj_id exists. More...
 

Static Public Member Functions

static getObjectsForOwner (string $object_type, int $owner_id)
 returns all objects of an owner, filtered by type, objects are not deleted! More...
 
static getInstanceByObjId (?int $obj_id, bool $stop_on_error=true)
 get an instance of an Ilias object by object id More...
 
static getInstanceByRefId (int $ref_id, bool $stop_on_error=true)
 get an instance of an Ilias object by reference id More...
 
static getTypeByRefId (int $ref_id, bool $stop_on_error=true)
 get object type by reference id More...
 
static getClassByType (string $obj_type)
 

Protected Member Functions

 includeClassIfNotExists (string $class_name, string $a_obj_type, ilObjectDefinition $objDefinition)
 Ensures a class is properly included. More...
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Class ilObjectFactory This class offers methods to get instances of the type-specific object classes (derived from ilObject) by their object or reference id Note: The term "Ilias objects" means all object types that are stored in the database table "object_data"

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 32 of file class.ilObjectFactory.php.

Member Function Documentation

◆ getClassByType()

static ilObjectFactory::getClassByType ( string  $obj_type)
static

Definition at line 240 of file class.ilObjectFactory.php.

240 : string
241 {
242 global $DIC;
243 $objDefinition = $DIC["objDefinition"];
244
245 $class_name = "ilObj" . $objDefinition->getClassName($obj_type);
246
247 (new self())->includeClassIfNotExists($class_name, $obj_type, $objDefinition);
248
249 return $class_name;
250 }
global $DIC
Definition: feed.php:28

References $DIC.

Referenced by ilWorkspaceTree\createTreeForUser(), ilObjStudyProgrammeTreeGUI\delete(), ilAdministrationCommandGUI\delete(), ilObjWorkspaceFolderGUI\deleteConfirmation(), ilObjectCopyGUI\saveSource(), and ilObjectCopyGUI\saveTarget().

+ Here is the caller graph for this function:

◆ getInstanceByObjId()

static ilObjectFactory::getInstanceByObjId ( ?int  $obj_id,
bool  $stop_on_error = true 
)
static

get an instance of an Ilias object by object id

Exceptions
ilDatabaseException
ilObjectNotFoundException

Definition at line 84 of file class.ilObjectFactory.php.

84 : ?ilObject
85 {
86 global $DIC;
87 $objDefinition = $DIC["objDefinition"];
88 $ilDB = $DIC->database();
89
90 // check object id
91 if (!isset($obj_id)) {
92 $message = "ilObjectFactory::getInstanceByObjId(): No obj_id given!";
93 if ($stop_on_error === true) {
95 }
96 return null;
97 }
98
99 // read object data
100 $sql =
101 "SELECT obj_id, type, title, description, owner, create_date, last_update, import_id, offline" . PHP_EOL
102 . "FROM object_data" . PHP_EOL
103 . "WHERE obj_id = " . $ilDB->quote($obj_id, 'integer') . PHP_EOL
104 ;
105 $result = $ilDB->query($sql);
106 // check number of records
107 if ($result->numRows() == 0) {
108 $message = "ilObjectFactory::getInstanceByObjId(): Object with obj_id: " . $obj_id . " not found!";
109 if ($stop_on_error === true) {
111 }
112 return null;
113 }
114
115 $row = $result->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
116 $class_name = "ilObj" . $objDefinition->getClassName($row["type"]);
117
118 // check class
119 if ($class_name == "ilObj") {
120 $message = "ilObjectFactory::getInstanceByObjId(): Not able to determine object " .
121 "class for type" . $row["type"] . ".";
122 if ($stop_on_error === true) {
124 }
125 return null;
126 }
127
128 (new self())->includeClassIfNotExists($class_name, $row["type"], $objDefinition);
129
130 // create instance
131 $obj = new $class_name(0, false); // this avoids reading of data
132 $obj->setId($obj_id);
133 $obj->read();
134
135 return $obj;
136 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$message
Definition: xapiexit.php:32

References $DIC, $ilDB, $message, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by ilDownloadFilesBackgroundTask\__construct(), ilCalendarUserSettings\__construct(), ilLPListOfProgressGUI\__initUser(), ilEventParticipants\__read(), ilObjGroup\_isMember(), ilObjContentObject\_moveLMStyles(), ilSoapRBACAdministration\addUserRoleEntry(), ilSoapCourseAdministration\assignCourseMember(), ilMembershipGUI\assignFromWaitingList(), ilCourseMembershipGUI\assignMembers(), ilObject2GUI\assignObject(), ilObjectGUI\assignObject(), ilLocalUserGUI\assignRoles(), ilObjCategoryGUI\assignRolesObject(), ilParticipants\assignSubscriber(), ilChatroom\byRoomId(), ilWorkspaceTree\cascadingDelete(), ilObjCategoryGUI\checkGlobalRoles(), ilLocalUserGUI\checkGlobalRoles(), ilUserCronCheckAccounts\checkNotConfirmedUserAccounts(), ILIAS\Style\Content\Object\ObjectManager\cloneTo(), ilMailMemberSearchDataProvider\collectTableData(), ilObjUserFolderGUI\confirmaccessFreeObject(), ilObjUserFolderGUI\confirmaccessRestrictObject(), ilObjUserFolderGUI\confirmactivateObject(), ilObjUserFolderGUI\confirmdeactivateObject(), ilObjUserFolderGUI\confirmdeleteObject(), ilContentStyleSettingsGUI\confirmedDelete(), ilObjStyleSheetGUI\copyStyleObject(), ilContainerXmlParser\createObject(), ilObjWorkspaceFolderGUI\cut(), ilObjRoleFolder\delete(), ilObject2GUI\deleteConfirmedObjects(), ilSoapUtils\deleteExpiredDualOptInUserObjects(), ilSoapRBACAdministration\deleteRole(), ilObjRoleFolderGUI\deleteRoleObject(), ilSoapRBACAdministration\deleteUserRoleEntry(), ilMailSearchObjectGUI\doesExposeMembers(), ilLPStatusLtiOutcome\ensureObject(), ilLPStatusCmiXapiAbstract\ensureObject(), ilPublicSubmissionsTableGUI\fillRow(), ilObjectConsumerTableGUI\fillRow(), ilContentPageImporter\finalProcessing(), ilForumImporter\finalProcessing(), ilTestImporter\finalProcessing(), ilPdfGenerator\generateFileName(), ilObjCategoryGUI\getAssignableRoles(), ilLocalUserGUI\getAssignableRoles(), ilObjForumAccess\getCachedUserInstance(), ilSoapCourseAdministration\getCoursesForUser(), ilObjCourse\getDefaultAdminRole(), ilObjGroup\getDefaultGroupRoles(), ilObjCourse\getDefaultTutorRole(), ilChatroom\getDescription(), ilUsersGalleryContacts\getGroupedCollections(), ilSoapGroupAdministration\getGroupsForUser(), ilObjLTIConsumerListGUI\getIconHref(), ilSoapSCORMAdministration\getIMSManifestXML(), ilCertificateObjectHelper\getInstanceByObjId(), ilUserRoleStartingPointTableGUI\getItems(), ilObjCourse\getLocalCourseRoles(), ilObjGroup\getLocalGroupRoles(), ilSoapRBACAdministration\getLocalRoles(), ilAttendanceList\getNonMemberUserData(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilCourseMembershipGUI\getPrintMemberData(), ilLTIConsumerProviderTableGUI\getProviderCreatorLabel(), ilLearningSequenceRoles\getRoleObject(), ilSoapRBACAdministration\getRoles(), ilChatroom\getTitle(), ilObjectPermissionStatusGUI\getUser(), ilCmiXapiScoringTableGUI\getUsername(), ilLTIConsumerScoringTableGUI\getUsername(), ilCmiXapiStatementsTableGUI\getUsername(), ilObjStudyProgrammeAutoCategoriesGUI\getUserRepresentation(), ilObjStudyProgrammeAutoMembershipsGUI\getUserRepresentation(), ilSoapRBACAdministration\getUserRoles(), ilUsersGalleryParticipants\getUsers(), ilContentPageExporter\getXmlExportTailDependencies(), ilForumExporter\getXmlExportTailDependencies(), ilChatroomExporter\getXmlRepresentation(), ilSoapRBACAdministration\grantPermissions(), ilSessionAppEventListener\handle(), ilAuthFrontend\handleAuthenticationSuccess(), ilObjCourse\handleAutoFill(), ilObjGroup\handleAutoFill(), ilObjSession\handleAutoFill(), ilECSTaskScheduler\handleDeprecatedAccounts(), XapiProxy\XapiProxy\handleStatementEvaluation(), ilRemoteObjectBase\handleUpdate(), ilObjTestAccess\hasFinished(), ilIndividualAssessmentMembersTableGUI\hasPublicProfile(), ilObjectGUI\importFileObject(), ilBlogDataSet\importRecord(), ilCmiXapiDataSet\importRecord(), ilContentPageDataSet\importRecord(), ilGlossaryDataSet\importRecord(), ilIndividualAssessmentDataSet\importRecord(), ilLearningModuleDataSet\importRecord(), ilMediaCastDataSet\importRecord(), ilMediaPoolDataSet\importRecord(), ilPortfolioDataSet\importRecord(), ilWikiDataSet\importRecord(), ilStyleDataSet\importRecord(), ilObjStyleSheetGUI\importStyleObject(), ilChatroomImporter\importXmlRepresentation(), ilFileImporter\importXmlRepresentation(), ilFolderImporter\importXmlRepresentation(), ilGlossaryImporter\importXmlRepresentation(), ilLearningModuleImporter\importXmlRepresentation(), ilLearningSequenceImporter\importXmlRepresentation(), ilSurveyQuestionPoolImporter\importXmlRepresentation(), ilTestImporter\importXmlRepresentation(), ilTestQuestionPoolImporter\importXmlRepresentation(), ilWebResourceImporter\importXmlRepresentation(), ilFolderXmlWriter\init(), ilWebLinkXmlWriter\init(), ilPluginLP\initPlugin(), ilRoleXmlImporter\initRole(), ilCmiXapiHighscoreReport\initTableData(), ilBadgeWAC\isAssignedBadgeOfPublishedUserProfile(), ilParticipants\isGroupingMember(), XapiProxy\XapiProxy\isSubStatementCheck(), ilAuthFrontend\migrateAccount(), ilStartingPoint\onRoleDeleted(), ilSoapMailXmlParser\parseName(), ilLPTableBaseGUI\parseTitle(), ilLocalUserGUI\performDeleteUsers(), ilObjCategoryGUI\performDeleteUsersObject(), ilObjWorkspaceFolderGUI\performPasteIntoMultipleObjects(), ilCmiXapiImporter\prepareContainerObject(), ilParticipants\readSubscribers(), ilPreviewGUI\renderPreview(), ilPCLauncher\replaceWithRenderedButtons(), ilPCCurriculum\replaceWithRenderedCurriculum(), ilTestLP\resetCustomLPDataForUserIds(), ilSoapRBACAdministration\revokePermissions(), ilXapiResultsCronjob\run(), ilCronDeleteInactivatedUserAccounts\run(), ilCronDeleteNeverLoggedInUserAccounts\run(), ilObjStyleSheetGUI\saveObject(), ilPermissionGUI\savePermissions(), ilSessionMembershipMailNotification\send(), ilEmployeeTalkTableGUI\setTalkData(), ilLocalUserGUI\showRolesTable(), ilPasswordAssistanceGUI\submitAssignPasswordForm(), ILIAS\Notifications\ilNotificationSystem\toUsers(), ilPermissionGUI\unblockRoles(), ilECSCourseCreationHandler\updateParallelCourses(), ilECSCourseCreationHandler\updateParallelGroups(), ilRegistrationSettingsGUI\updateRoles(), ilSoapWebLinkAdministration\updateWebLink(), and ilObjTestAccess\visibleUserResultExists().

+ Here is the caller graph for this function:

◆ getInstanceByRefId()

static ilObjectFactory::getInstanceByRefId ( int  $ref_id,
bool  $stop_on_error = true 
)
static

get an instance of an Ilias object by reference id

Exceptions
ilDatabaseException
ilObjectNotFoundException

Definition at line 143 of file class.ilObjectFactory.php.

143 : ?ilObject
144 {
145 global $DIC;
146 $objDefinition = $DIC["objDefinition"];
147 $ilDB = $DIC->database();
148
149 // check reference id
150 if (!isset($ref_id)) {
151 if ($stop_on_error === true) {
152 $message = "ilObjectFactory::getInstanceByRefId(): No ref_id given!";
154 }
155 return null;
156 }
157
158 // read object data
159 $sql =
160 "SELECT object_data.obj_id, object_data.type" . PHP_EOL
161 . "FROM object_data, object_reference" . PHP_EOL
162 . "WHERE object_reference.obj_id = object_data.obj_id" . PHP_EOL
163 . "AND object_reference.ref_id = " . $ilDB->quote($ref_id, 'integer') . PHP_EOL
164 ;
165
166 $result = $ilDB->query($sql);
167
168 // check number of records
169 if ($result->numRows() == 0) {
170 if ($stop_on_error === true) {
171 $message = "ilObjectFactory::getInstanceByRefId(): Object with ref_id " . $ref_id . " not found!";
173 }
174 return null;
175 }
176
177 $row = $result->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
178 $class_name = "ilObj" . $objDefinition->getClassName($row["type"]);
179
180 // check class
181 if ($class_name == "ilObj") {
182 if ($stop_on_error === true) {
183 $message = "ilObjectFactory::getInstanceByRefId(): Not able to determine object " .
184 "class for type" . $row["type"] . ".";
186 }
187 return null;
188 }
189
190 (new self())->includeClassIfNotExists($class_name, $row["type"], $objDefinition);
191
192 // create instance
193 $obj = new $class_name(0, false); // this avoids reading of data
194 $obj->setId((int) $row["obj_id"]);
195 $obj->setRefId($ref_id);
196 $obj->read();
197 return $obj;
198 }
$ref_id
Definition: ltiauth.php:67

References $DIC, $ilDB, $message, $ref_id, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by ilRepositoryObjectSearchGUI\__construct(), ilConditionHandlerGUI\__construct(), ilCourseObjectivesGUI\__initCourseObject(), ilECSObjectSettings\_handleDelete(), ilForumNotification\_isParentNodeGrpCrs(), ilSoapCourseAdministration\addCourse(), ilSoapExerciseAdministration\addExercise(), ilSoapFileAdministration\addFile(), ilTestExpressPageObjectGUI\addPageOfQuestions(), ilSoapObjectAdministration\addReference(), ilSoapRBACAdministration\addRole(), ilSoapRBACAdministration\addRoleFromTemplate(), ilConditionHandlerGUI\assign(), ilObjCourseGroupingGUI\assignCourse(), ilSoapCourseAdministration\assignCourseMember(), ilObject2GUI\assignObject(), ilObjectGUI\assignObject(), assQuestionGUI\cancelSync(), ilSoapAdministration\checkObjectAccess(), ilContainerGUI\clipboardObject(), ilContainerGUI\cloneAllObject(), ilSoapUtils\cloneDependencies(), ilObjectActivation\cloneDependencies(), ilObjCourseGrouping\cloneGrouping(), ilSoapUtils\cloneNode(), ilObjLearningSequenceContentGUI\confirmDelete(), ilObjectCopyGUI\copyContainer(), ilObjectCopyGUI\copyMultipleNonContainer(), ilSoapObjectAdministration\copyObject(), ilObjStyleSheetGUI\copyStyleObject(), ilSoapWebLinkAdministration\createWebLink(), ilOerHarvester\deleteObject(), ilSoapObjectAdministration\deleteObject(), ilContainerReferenceAppEventListener\deleteReferences(), ilForumNotificationDataProvider\determineClosestContainer(), ilCourseAppEventListener\doAutoFill(), ilGroupAppEventListener\doAutoFill(), ilContainerGUI\downloadObject(), ilObjTest\ensureParticipantsLastActivePassFinished(), ilTestInfoScreenToolbarFactory\ensureTestObjectInitialised(), ilObjSessionGUI\eventsListObject(), ilSoapCourseAdministration\excludeCourseMember(), ilTestExpressPageObjectGUI\executeCommand(), ilSessionOverviewGUI\exportCSV(), ilChatroomAdminViewGUI\forcePublicRoom(), ilSessionOverviewTableGUI\gatherEvents(), ilStudyProgrammeExpandableProgressListGUI\getAccordionContentCoursesHTML(), ilObjLearningSequence\getInstanceByRefId(), ilLSViewFactory\getInstanceByRefId(), ilObjectFactoryWrapper\getInstanceByRefId(), ilMailAddressTypeHelperImpl\getInstanceByRefId(), ilSoapRBACAdministration\getLocalRoles(), ilCourseObjectiveQuestion\getMaxPointsByObjective(), ilCourseObjectiveQuestion\getMaxPointsByTest(), ilSoapObjectAdministration\getObjectByReference(), ilLSItemsDB\getObjectFor(), ilSoapObjectAdministration\getObjectsByTitle(), ilSoapRBACAdministration\getObjectTreeOperations(), ilOrgUnitExtension\getOrgUnit(), ilForumSettingsGUI\getParticipants(), ilContainerStartObjectsTableGUI\getPossibleObjects(), ilCourseStartObjectsTableGUI\getPossibleObjects(), ilObjWikiGUI\getSettingsFormValues(), ilContainerStartObjectsTableGUI\getStartObjects(), ilCourseStartObjectsTableGUI\getStartObjects(), ilSOAPStructureObjectAdministration\getStructureObjects(), ilSoapObjectAdministration\getTreeChilds(), ilCategoryExporter\getXmlRepresentation(), ilCourseExporter\getXmlRepresentation(), ilGroupExporter\getXmlRepresentation(), ilContainerReferenceExporter\getXmlRepresentation(), ilSoapObjectAdministration\getXMLTree(), ilSoapRBACAdministration\grantPermissions(), ilRemoteObjectBase\handleDelete(), ilContainerImporter\handleOfflineStatus(), ilECSCategoryMapping\handleUpdate(), ilOerHarvester\harvest(), ilCourseObjective\ilClone(), ilSessionDataSet\importRecord(), ilObjStyleSheetGUI\importStyleObject(), ilSoapUserAdministration\importUsers(), ilCategoryImporter\importXmlRepresentation(), ilCourseImporter\importXmlRepresentation(), ilFolderImporter\importXmlRepresentation(), ilGroupImporter\importXmlRepresentation(), ilCourseContentGUI\initCourseObject(), ilAssQuestionPreviewGUI\initQuestion(), ilECSUserConsentModalGUI\initRemoteObject(), ilAssQuestionPreviewSettings\initSettingsWithTestObject(), ilDidacticTemplateAction\initSourceObject(), ilSoapUtils\internalLinkNode(), ilObjLearningSequenceAccess\isOffline(), ilObjTest\isParticipantsLastPassActive(), ilObjectGUI\isVisible(), ilSoapUtils\linkNode(), ilContainerGUI\linkObject(), ilLOUtils\lookupQplBySequence(), ilLearningSequenceParticipantsTableGUI\parse(), ilCourseObjectiveQuestionAssignmentTableGUI\parse(), ilContainerGUI\pasteObject(), ilContainerGUI\performPasteIntoMultipleObjectsObject(), ilLOSettings\purgeReferences(), ilObjQuestionPoolGUI\questionsObject(), ilRepUtil\removeDeletedNodes(), ilSoapObjectAdministration\removeFromSystemByImportId(), ilSystemCheckTrash\removeSelectedFromSystem(), ilSoapTestAdministration\removeTestResults(), ilCourseObjectiveResult\reset(), ilSystemCheckTrash\restore(), ilWebDAVObjFactory\retrieveDAVObjectByRefID(), ilSoapRBACAdministration\revokePermissions(), ilCollectFilesJob\run(), ilObjStyleSheetGUI\saveObject(), ilSoapObjectAdministration\searchObjects(), ilCourseMembershipMailNotification\send(), ilGroupMembershipMailNotification\send(), LSItemOnlineStatus\setOnlineStatus(), ilSoapRoleObjectXMLWriter\start(), ilDidacticTemplateUtils\switchTemplate(), assQuestionGUI\sync(), ilECSCmsTreeSynchronizer\syncCategory(), ilECSCourseCreationHandler\updateCourseData(), ilMembershipRegistrationCodeUtils\useCode(), and ilConditionHandler\validate().

+ Here is the caller graph for this function:

◆ getObjectsForOwner()

static ilObjectFactory::getObjectsForOwner ( string  $object_type,
int  $owner_id 
)
static

returns all objects of an owner, filtered by type, objects are not deleted!

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

56 : array
57 {
58 global $DIC;
59 $ilDB = $DIC->database();
60
61 $sql =
62 "SELECT object_data.obj_id" . PHP_EOL
63 . "FROM object_data, object_reference" . PHP_EOL
64 . "WHERE object_reference.obj_id = object_data.obj_id" . PHP_EOL
65 . "AND object_data.type = " . $ilDB->quote($object_type, 'text') . PHP_EOL
66 . "AND object_data.owner = " . $ilDB->quote($owner_id, 'integer') . PHP_EOL
67 ;
68
69 $result = $ilDB->query($sql);
70
71 $obj_ids = [];
72 while ($row = $result->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) {
73 $obj_ids [] = $row["obj_id"];
74 }
75
76 return $obj_ids;
77 }

References $DIC, $ilDB, and ilDBConstants\FETCHMODE_ASSOC.

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

+ Here is the caller graph for this function:

◆ getTypeByRefId()

static ilObjectFactory::getTypeByRefId ( int  $ref_id,
bool  $stop_on_error = true 
)
static

get object type by reference id

Exceptions
ilObjectNotFoundException
Deprecated:
since version 5.3

Definition at line 205 of file class.ilObjectFactory.php.

205 : ?string
206 {
207 global $DIC;
208 $ilDB = $DIC->database();
209
210 // check reference id
211 if (!isset($ref_id)) {
212 if ($stop_on_error === true) {
213 $message = "ilObjectFactory::getTypeByRefId(): No ref_id given!";
215 }
216 return null;
217 }
218
219 // read object data
220 $sql =
221 "SELECT object_data.obj_id, object_data.type" . PHP_EOL
222 . "FROM object_data" . PHP_EOL
223 . "LEFT JOIN object_reference ON object_data.obj_id=object_reference.obj_id " . PHP_EOL
224 . "WHERE object_reference.ref_id=" . $ilDB->quote($ref_id, 'integer') . PHP_EOL
225 ;
226 $result = $ilDB->query($sql);
227
228 if ($result->numRows() == 0) {
229 if ($stop_on_error === true) {
230 $message = "ilObjectFactory::getTypeByRefId(): Object with ref_id " . $ref_id . " not found!";
232 }
233 return null;
234 }
235
236 $row = $result->fetchRow(ilDBConstants::FETCHMODE_ASSOC);
237 return $row["type"];
238 }

References $DIC, $ilDB, $message, $ref_id, and ilDBConstants\FETCHMODE_ASSOC.

Referenced by ilSoapObjectAdministration\copyObject(), ilCopyWizardSettingsXMLParser\handlerBeginTag(), and ilSoapObjectAdministration\moveObject().

+ Here is the caller graph for this function:

◆ includeClassIfNotExists()

ilObjectFactory::includeClassIfNotExists ( string  $class_name,
string  $a_obj_type,
ilObjectDefinition  $objDefinition 
)
protected

Ensures a class is properly included.

This is needed, since not all possible classes are yet part of the autoloader (e.g. repo-plugins). See: #27073

Parameters
string$class_name
string$a_obj_type
ilObjectDefinition$objDefinition

Definition at line 260 of file class.ilObjectFactory.php.

264 : void {
265 if (!class_exists($class_name)) {
266 $location = $objDefinition->getLocation($a_obj_type);
267 include_once($location . "/class." . $class_name . ".php");
268 }
269 }
$location
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Definition: buildRTE.php:22

References $location, and ilObjectDefinition\getLocation().

+ Here is the call graph for this function:

◆ ObjectIdExists()

ilObjectFactory::ObjectIdExists ( int  $obj_id)

check if obj_id exists.

To check for ref_ids use ilTree::isInTree()

Definition at line 37 of file class.ilObjectFactory.php.

37 : bool
38 {
39 global $DIC;
40 $ilDB = $DIC->database();
41
42 $sql =
43 "SELECT obj_id, type, title, description, owner, create_date, last_update, import_id, offline" . PHP_EOL
44 . "FROM object_data" . PHP_EOL
45 . "WHERE obj_id = " . $ilDB->quote($obj_id, 'integer') . PHP_EOL
46 ;
47
48 $result = $ilDB->query($sql);
49
50 return (bool) $result->numRows();
51 }

References $DIC, and $ilDB.


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