diff --git a/lib/plugins/pluginutil.inc.php b/lib/plugins/pluginutil.inc.php index 66cbb38..c0e0253 100644 --- a/lib/plugins/pluginutil.inc.php +++ b/lib/plugins/pluginutil.inc.php @@ -61,7 +61,9 @@ class KTPluginUtil { if (count($aPlugins) === 0) { KTPluginUtil::registerPlugins(); } - $aPaths = array(KT_DIR . '/plugins/ktcore/KTCorePlugin.php'); + $aPaths = array(); + $aPaths[] = KT_DIR . '/plugins/ktcore/KTCorePlugin.php'; + $aPaths[] = KT_DIR . '/plugins/ktcore/KTCoreLanguagePlugin.php'; foreach ($aPlugins as $oPlugin) { if (!is_a($oPlugin, 'KTPluginEntity')) { print "
";
@@ -81,9 +83,20 @@ class KTPluginUtil {
require_once($sPath);
}
}
+
$oRegistry =& KTPluginRegistry::getSingleton();
- foreach ($oRegistry->getPlugins() as $oPlugin) {
- $oPlugin->load();
+ $aPlugins =& $oRegistry->getPlugins();
+ foreach ($aPlugins as $oPlugin) {
+ if (!isset($aOrder[$oPlugin->iOrder])) {
+ $aOrder[$oPlugin->iOrder] = array();
+ }
+ $aOrder[$oPlugin->iOrder][] = $oPlugin;
+ }
+ ksort($aOrder, SORT_NUMERIC);
+ foreach ($aOrder as $iOrder => $aOrderPlugins) {
+ foreach ($aOrderPlugins as $oPlugin) {
+ $oPlugin->load();
+ }
}
}