25 include_once(
"./Services/Component/classes/class.ilComponent.php");
54 private final function getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname)
58 if (!isset($this->got_data[$a_ctype][$a_cname][$a_slot_id][$a_pname]))
60 include_once
"./Services/Component/classes/class.ilPluginSlot.php";
63 $plugin_php_file =
"./Customizing/global/plugins/".$a_ctype.
"/".
64 $a_cname.
"/".$slot_name.
"/".$a_pname.
"/plugin.php";
68 if (is_file($plugin_php_file))
70 include_once($plugin_php_file);
71 $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname] =
72 array(
"version" => $version,
"id" => $id,
73 "ilias_min_version" => $ilias_min_version,
74 "ilias_max_version" => $ilias_max_version,
75 "responsible" => $responsible,
76 "responsible_mail" => $responsible_mail);
79 $active = $rec[
"active"];
80 $needs_update =
false;
81 $activation_possible = !$active;
82 $inactive_reason =
"";
90 $inactive_reason = $lng->txt(
"cmps_needs_newer_ilias_version");
94 $inactive_reason =
"Plugin needs a newer version of ILIAS.";
96 $activation_possible =
false;
103 $inactive_reason = $lng->txt(
"cmps_needs_newer_plugin_version");
107 $inactive_reason =
"Plugin does not support current version of ILIAS. Newer version of plugin needed.";
109 $activation_possible =
false;
111 else if ($rec[
"last_update_version"] ==
"")
116 $inactive_reason = $lng->txt(
"cmps_needs_update");
120 $inactive_reason =
"Update needed.";
122 $needs_update =
true;
123 $activation_possible =
false;
130 $inactive_reason = $lng->txt(
"cmps_needs_upgrade");
134 $inactive_reason =
"Upgrade needed.";
136 $activation_possible =
false;
138 else if ($rec[
"last_update_version"] != $version)
143 $inactive_reason = $lng->txt(
"cmps_needs_update");
147 $inactive_reason =
"Update needed.";
149 $needs_update =
true;
150 $activation_possible =
false;
153 $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"is_active"] = $active;
154 $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"inactive_reason"] = $inactive_reason;
155 $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"needs_update"] = $needs_update;
156 $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"activation_possible"] = $activation_possible;
158 $this->got_data[$a_ctype][$a_cname][$a_slot_id][$a_pname] =
true;
170 function getVersion($a_ctype, $a_cname, $a_slot_id, $a_pname)
172 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
173 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"version"];
186 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
187 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"ilias_min_version"];
200 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
201 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"ilias_max_version"];
212 function getId($a_ctype, $a_cname, $a_slot_id, $a_pname)
214 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
215 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"id"];
226 function isActive($a_ctype, $a_cname, $a_slot_id, $a_pname)
228 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
229 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"is_active"];
240 function exists($a_ctype, $a_cname, $a_slot_id, $a_pname)
242 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
243 return isset($this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname]);
256 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
257 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname][
"needs_update"];
268 function getAllData($a_ctype, $a_cname, $a_slot_id, $a_pname)
270 $this->
getPluginData($a_ctype, $a_cname, $a_slot_id, $a_pname);
271 return $this->data[$a_ctype][$a_cname][$a_slot_id][$a_pname];
279 include_once
"./Services/Component/classes/class.ilPlugin.php";