if ($site_guid) {
$site = get_entity($site_guid);
-
- if (!($site instanceof ElggSite)) {
- return false;
- }
} else {
- $site = get_config('site');
+ $site_guid = get_config('site');
+ $site = get_entity($site_guid);
+ }
+
+ if (!($site instanceof ElggSite)) {
+ return false;
}
return check_entity_relationship($this->guid, 'active_plugin', $site->guid);
* @return bool
*/
function is_plugin_enabled($plugin, $site_guid = 0) {
- elgg_deprecated_notice('is_plugin_enabled() was deprecated by ElggPlugin->isActive()', 1.8);
-
- $plugin = sanitise_string($plugin);
-
- $site_guid = (int) $site_guid;
- if (!$site_guid) {
- $site = get_config('site');
- $site_guid = $site->guid;
- }
-
- try {
- $plugin = new ElggPlugin($plugin);
- } catch(Exception $e) {
- return false;
- }
-
- return $plugin->isActive($site_guid);
+ elgg_deprecated_notice('is_plugin_enabled() was deprecated by elgg_is_active_plugin()', 1.8);
+ return elgg_is_active_plugin($plugin, $site_guid);
}
/**
return 1;
}
+/**
+ * Returns if a plugin is active for a current site.
+ *
+ * @param string $plugin_id The plugin ID
+ * @param int $site_guid The site guid
+ * @return bool
+ */
+function elgg_is_active_plugin($plugin_id, $site_guid = null) {
+ if ($site_guid) {
+ $site = get_entity($site_guid);
+ } else {
+ $site = elgg_get_site_entity();
+ }
+
+ if (!($site instanceof ElggSite)) {
+ return false;
+ }
+
+ $plugin = elgg_get_plugin_from_id($plugin_id);
+
+ if (!$plugin) {
+ return false;
+ }
+
+ return $plugin->isActive($site->guid);
+}
+
/**
* Loads all active plugins in the order specified in the tool admin panel.
*