ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilComponent Class Reference
+ Inheritance diagram for ilComponent:
+ Collaboration diagram for ilComponent:

Public Member Functions

 getVersion ()
 Get Version Number of Component. More...
 
 isCore ()
 
 getName ()
 Get Name. More...
 
 __construct ()
 
 setId ($a_id)
 Set Id. More...
 
 getId ()
 Get Id. More...
 
 setPluginSlots ($a_pluginslots)
 Set Plugin Slots. More...
 
 getPluginSlots ()
 Get Plugin Slots. More...
 
 setSubDirectory ($a_subdirectory)
 Set Sub Directory. More...
 
 getSubDirectory ()
 Get Sub Directory. More...
 
 getPluginSlotName ($a_id)
 Get name of plugin slot. More...
 
 getPluginSlotDirectory ($a_id)
 Get directory of plugin slot. More...
 
 getPluginSlotLanguagePrefix ($a_id)
 Get language prefix for plugin slot. More...
 

Static Public Member Functions

static getComponentType ()
 
static getComponentObject ($a_ctype, $a_cname)
 Get component object. More...
 
static lookupPluginSlots ($a_type, $a_name)
 Lookup all plugin slots of a component. More...
 
static lookupId ($a_type, $a_name)
 Lookup ID of a component. More...
 
static getComponentInfo ($a_type, $a_name)
 
static checkVersionNumber ($a_ver)
 Check version number. More...
 
static isVersionGreaterString ($a_ver1, $a_ver2)
 
static isVersionGreater ($a_ver1, $a_ver2)
 Check whether version number is greater than another version number. More...
 
static lookupComponentName ($a_component_id)
 lookup component name @global type $ilDB More...
 

Protected Attributes

 $global_cache
 

Detailed Description

Definition at line 23 of file class.ilComponent.php.

Constructor & Destructor Documentation

◆ __construct()

ilComponent::__construct ( )

Reimplemented in ilCloudModule, ilTestModule, ilTestQuestionPoolModule, ilAuthShibbolethService, ilModule, ilCOPageService, ilEventHandlingService, ilPreviewService, ilRepositoryService, and ilUIComponentService.

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

60 {
61// global $ilDB;
62 $this->global_cache = ilCachedComponentData::getInstance();
63
64 $this->setId($this->global_cache->lookCompId($this->getComponentType(), $this->getName()));
66 $this->getComponentType(), $this->getName()));
67
68//
69// echo '<pre>' . print_r($data, 1) . '</pre>';
70//
71//
72// $set = $ilDB->queryF("SELECT * FROM il_component WHERE type = %s ".
73// " AND name = %s", array("text", "text"),
74// array($this->getComponentType(), $this->getName()));
75// $rec = $ilDB->fetchAssoc($set);
76//
77// $this->setId($rec["id"]);
78// $this->setPluginSlots(ilComponent::lookupPluginSlots(
79// $this->getComponentType(), $this->getName()));
80 }
setPluginSlots($a_pluginslots)
Set Plugin Slots.
getName()
Get Name.
setId($a_id)
Set Id.
static getComponentType()
static lookupPluginSlots($a_type, $a_name)
Lookup all plugin slots of a component.

References getComponentType(), ilCachedComponentData\getInstance(), getName(), lookupPluginSlots(), setId(), and setPluginSlots().

+ Here is the call graph for this function:

Member Function Documentation

◆ checkVersionNumber()

static ilComponent::checkVersionNumber (   $a_ver)
staticfinal

Check version number.

Definition at line 281 of file class.ilComponent.php.

282 {
283 global $lng;
284
285 $parts = explode(".", $a_ver);
286
287 if (count($parts) != 3)
288 {
289 return "Version Number does not conform to format a.b.c";
290 }
291
292 if (!is_numeric($parts[0]) || !is_numeric($parts[1]) || !is_numeric($parts[2]))
293 {
294 return "Not all version number parts a.b.c are numeric.";
295 }
296
297 return $parts;
298 }
global $lng
Definition: privfeed.php:17

References $lng.

Referenced by isVersionGreaterString().

+ Here is the caller graph for this function:

◆ getComponentInfo()

static ilComponent::getComponentInfo (   $a_type,
  $a_name 
)
static
Parameters
$a_type
$a_name
Returns
mixed

Definition at line 272 of file class.ilComponent.php.

272 {
274
275 return $global_cache->lookupCompInfo($a_type, $a_name);
276 }
$a_type
Definition: workflow.php:93

References $a_type, $global_cache, and ilCachedComponentData\getInstance().

Referenced by ilCtrl\callBaseClass().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getComponentObject()

static ilComponent::getComponentObject (   $a_ctype,
  $a_cname 
)
staticfinal

Get component object.

Parameters
string$a_ctypeIL_COMP_MODULE | IL_COMP_SERVICE
string$a_cnamecomponent name

Definition at line 128 of file class.ilComponent.php.

129 {
130 global $ilDB;
131
132 $set = $ilDB->queryF("SELECT * FROM il_component WHERE type = %s ".
133 " AND name = %s", array("text", "text"),
134 array($a_ctype, $a_cname));
135 if (!$ilDB->fetchAssoc($set))
136 {
137 return null;
138 }
139
140 switch ($a_ctype)
141 {
142 case IL_COMP_MODULE:
143 if (is_file("./Modules/".$a_cname."/classes/class.il".$a_cname."Module.php"))
144 {
145 include_once("./Modules/".$a_cname."/classes/class.il".$a_cname."Module.php");
146 $class = "il".$a_cname."Module";
147 $comp = new $class();
148 return $comp;
149 }
150 break;
151
152 case IL_COMP_SERVICE:
153 if (is_file("./Services/".$a_cname."/classes/class.il".$a_cname."Service.php"))
154 {
155 include_once("./Services/".$a_cname."/classes/class.il".$a_cname."Service.php");
156 $class = "il".$a_cname."Service";
157 $comp = new $class();
158 return $comp;
159 }
160 break;
161 }
162
163 return null;
164 }
const IL_COMP_SERVICE
const IL_COMP_MODULE
global $ilDB

References $ilDB, IL_COMP_MODULE, and IL_COMP_SERVICE.

Referenced by ilObjComponentSettingsGUI\showPluginSlotInfo().

+ Here is the caller graph for this function:

◆ getComponentType()

static ilComponent::getComponentType ( )
staticabstract

Reimplemented in ilModule, and ilService.

Referenced by __construct().

+ Here is the caller graph for this function:

◆ getId()

ilComponent::getId ( )
final

Get Id.

Returns
string Id

Definition at line 97 of file class.ilComponent.php.

98 {
99 return $this->id;
100 }

Referenced by getPluginSlotLanguagePrefix().

+ Here is the caller graph for this function:

◆ getName()

ilComponent::getName ( )
abstract

Get Name.

Returns
string Name

Reimplemented in ilModule, and ilService.

Referenced by __construct(), and getPluginSlotDirectory().

+ Here is the caller graph for this function:

◆ getPluginSlotDirectory()

ilComponent::getPluginSlotDirectory (   $a_id)

Get directory of plugin slot.

Parameters
string$a_idPlugin Slot ID

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

229 {
230 $slots = $this->getPluginSlots();
231
232 return "Customizing/global/plugins/".$this->getComponentType()."/".
233 $this->getName()."/".$slots[$a_id]["name"];
234 }
getPluginSlots()
Get Plugin Slots.

References getName(), and getPluginSlots().

+ Here is the call graph for this function:

◆ getPluginSlotLanguagePrefix()

ilComponent::getPluginSlotLanguagePrefix (   $a_id)

Get language prefix for plugin slot.

Parameters
string$a_idPlugin Slot ID

Definition at line 241 of file class.ilComponent.php.

242 {
243 $slots = $this->getPluginSlots();
244 return $this->getId()."_".$slots[$a_id]["id"]."_";
245 }

References getId(), and getPluginSlots().

+ Here is the call graph for this function:

◆ getPluginSlotName()

ilComponent::getPluginSlotName (   $a_id)

Get name of plugin slot.

Parameters
string$a_idPlugin Slot ID

Definition at line 216 of file class.ilComponent.php.

217 {
218 $slots = $this->getPluginSlots();
219
220 return $slots[$a_id]["name"];
221 }

References getPluginSlots().

+ Here is the call graph for this function:

◆ getPluginSlots()

ilComponent::getPluginSlots ( )
final

Get Plugin Slots.

Returns
array Plugin Slots

Definition at line 117 of file class.ilComponent.php.

118 {
119 return $this->pluginslots;
120 }

Referenced by getPluginSlotDirectory(), getPluginSlotLanguagePrefix(), and getPluginSlotName().

+ Here is the caller graph for this function:

◆ getSubDirectory()

ilComponent::getSubDirectory ( )

Get Sub Directory.

Returns
string Sub Directory

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

182 {
183 return $this->subdirectory;
184 }

◆ getVersion()

ilComponent::getVersion ( )
abstract

Get Version Number of Component.

The number should be changed if anything in the code is changed. Otherwise ILIAS will not be able to recognize any change in the module.

The format must be: <major number>.<minor number>.<bugfix number> <bugfix number> should be increased for bugfixes <minor number> should be increased for behavioural changes (and new functionalities) <major number> should be increased for major revisions

The number should be returned directly as string, e.g. return "1.0.2";

Returns
string version number

Reimplemented in ilCloudModule, ilSurveyQuestionPoolModule, ilTestModule, ilTestQuestionPoolModule, ilAdvancedMetaDataService, ilAuthenticationService, ilAuthShibbolethService, ilCOPageService, ilCronService, ilEventHandlingService, ilLDAPService, ilPersonalDesktopService, ilPreviewService, ilRepositoryService, ilUIComponentService, and ilUserService.

◆ isCore()

◆ isVersionGreater()

static ilComponent::isVersionGreater (   $a_ver1,
  $a_ver2 
)
staticfinal

Check whether version number is greater than another version number.

Parameters
$a_ver1array version number as array as returned by checkVersionNumber()
$a_ver2array version number as array as returned by checkVersionNumber()

$return boolean true, if $a_ver1 is greater than $a_ver2

Definition at line 322 of file class.ilComponent.php.

323 {
324 if ($a_ver1[0] > $a_ver2[0])
325 {
326 return true;
327 }
328 else if ($a_ver1[0] < $a_ver2[0])
329 {
330 return false;
331 }
332 else if ($a_ver1[1] > $a_ver2[1])
333 {
334 return true;
335 }
336 else if ($a_ver1[1] < $a_ver2[1])
337 {
338 return false;
339 }
340 else if ($a_ver1[2] > $a_ver2[2])
341 {
342 return true;
343 }
344
345 return false;
346 }

Referenced by isVersionGreaterString().

+ Here is the caller graph for this function:

◆ isVersionGreaterString()

static ilComponent::isVersionGreaterString (   $a_ver1,
  $a_ver2 
)
staticfinal

Definition at line 300 of file class.ilComponent.php.

301 {
302 $a_arr1 = ilComponent::checkVersionNumber($a_ver1);
303 $a_arr2 = ilComponent::checkVersionNumber($a_ver2);
304 if (is_array($a_arr1) && is_array($a_arr2))
305 {
306 return ilComponent::isVersionGreater($a_arr1, $a_arr2);
307 }
308 else
309 {
310 return false;
311 }
312 }
static checkVersionNumber($a_ver)
Check version number.
static isVersionGreater($a_ver1, $a_ver2)
Check whether version number is greater than another version number.

References checkVersionNumber(), and isVersionGreater().

Referenced by ilPluginAdmin\getPluginData().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lookupComponentName()

static ilComponent::lookupComponentName (   $a_component_id)
static

lookup component name @global type $ilDB

Parameters
type$a_component_id
Returns
type

Definition at line 354 of file class.ilComponent.php.

355 {
356 global $ilDB;
357
358 $query = 'SELECT name from il_component '.
359 'WHERE id = '.$ilDB->quote($a_component_id,'text');
360
361 $res = $ilDB->query($query);
362 while($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT))
363 {
364 return $row->name;
365 }
366 }

References $ilDB, $query, $res, $row, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ilLogComponentTableGUI\parse().

+ Here is the caller graph for this function:

◆ lookupId()

static ilComponent::lookupId (   $a_type,
  $a_name 
)
static

Lookup ID of a component.

Definition at line 250 of file class.ilComponent.php.

251 {
253
254 return $global_cache->lookCompId($a_type, $a_name);
255
256 //global $ilDB;
257
258 //$set = $ilDB->queryF("SELECT * FROM il_component WHERE type = %s ".
259 // " AND name = %s", array("text", "text"),
260 // array($a_type, $a_name));
261 //$rec = $ilDB->fetchAssoc($set);
262
263 //return $rec["id"];
264 }

References $a_type, $global_cache, and ilCachedComponentData\getInstance().

Referenced by ilPlugin\_getImagePath(), ilPluginSlot\getPrefix(), ilPlugin\getStyleSheetLocation(), and lookupPluginSlots().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lookupPluginSlots()

static ilComponent::lookupPluginSlots (   $a_type,
  $a_name 
)
static

Lookup all plugin slots of a component.

Definition at line 189 of file class.ilComponent.php.

190 {
191// global $ilDB;
192
193 $cached_component = ilCachedComponentData::getInstance();
194 $recs = $cached_component->lookupPluginSlotByComponent($a_type."/".$a_name);
195
196 //$set = $ilDB->query("SELECT * FROM il_pluginslot WHERE component = ".
197 // $ilDB->quote($a_type."/".$a_name, "text"));
198 $ps = array();
199//echo "<br>".$a_type."/".$a_name;
200 //while($rec = $ilDB->fetchAssoc($set))
201 foreach($recs as $rec)
202 {
203 $rec["dir"] = "Customizing/global/plugins/".$a_type."/".$a_name."/".$rec["name"];
204 $rec["dir_pres"] = "Customizing/global/plugins/<br />".$a_type."/".$a_name."/".$rec["name"];
205 $rec["lang_prefix"] = ilComponent::lookupId($a_type,$a_name)."_".$rec["id"]."_";
206 $ps[$rec["id"]] = $rec;
207 }
208 return $ps;
209 }
static lookupId($a_type, $a_name)
Lookup ID of a component.

References $a_type, ilCachedComponentData\getInstance(), and lookupId().

Referenced by __construct(), ilComponentsTableGUI\getComponents(), and ilPluginsOverviewTableGUI\getComponents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setId()

ilComponent::setId (   $a_id)
final

Set Id.

Parameters
string$a_idId

Definition at line 87 of file class.ilComponent.php.

88 {
89 $this->id = $a_id;
90 }

Referenced by __construct().

+ Here is the caller graph for this function:

◆ setPluginSlots()

ilComponent::setPluginSlots (   $a_pluginslots)
final

Set Plugin Slots.

Parameters
array$a_pluginslotsPlugin Slots

Definition at line 107 of file class.ilComponent.php.

108 {
109 $this->pluginslots = $a_pluginslots;
110 }

Referenced by __construct().

+ Here is the caller graph for this function:

◆ setSubDirectory()

ilComponent::setSubDirectory (   $a_subdirectory)

Set Sub Directory.

Parameters
string$a_subdirectorySub Directory

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

172 {
173 $this->subdirectory = $a_subdirectory;
174 }

Field Documentation

◆ $global_cache

ilComponent::$global_cache
protected

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

Referenced by getComponentInfo(), and lookupId().


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