function probePlugin($instance_id, &$class_name, &$pluginPath) { global $serendipity; $filename = false; $is_internal = false; $class_name = serendipity_plugin_api::getClassByInstanceID($instance_id, $is_internal); if (!$is_internal) { /* plugin from the plugins/ dir */ // $serendipity['debug']['pluginload'][] = "Including plugin $class_name, $pluginPath"; $filename = serendipity_plugin_api::includePlugin($class_name, $pluginPath, $instance_id); if (empty($filename) && !empty($instance_id)) { // $serendipity['debug']['pluginload'][] = "No valid path/filename found."; $sql = "SELECT path from {$serendipity['dbPrefix']}plugins WHERE name = '" . $instance_id . "'"; $plugdata = serendipity_db_query($sql, true, 'both', false, false, false, true); if (is_array($plugdata) && isset($plugdata[0])) { $pluginPath = $plugdata[0]; } if (empty($pluginPath)) { $pluginPath = $class_name; } // $serendipity['debug']['pluginload'][] = "Including plugin(2) $class_name, $pluginPath"; $filename = serendipity_plugin_api::includePlugin($class_name, $pluginPath); } if (empty($filename)) { $serendipity['debug']['pluginload'][] = "No valid path/filename found. Aborting."; $retval = false; return $retval; } } // $serendipity['debug']['pluginload'][] = "Found plugin file $filename"; return $filename; }