diff --git a/source/script.php b/source/script.php index 42f89938..8ad33dcc 100644 --- a/source/script.php +++ b/source/script.php @@ -77,6 +77,7 @@ class Pkg_MokosuiteInstallerScript $this->enablePlugin('system', 'mokosuite_tenant'); $this->enablePlugin('system', 'mokosuite_devtools'); $this->enablePlugin('system', 'mokosuite_offline'); + $this->enablePlugin('system', 'mokosuite_dbip'); $this->enablePlugin('webservices', 'mokosuite'); $this->enablePlugin('task', 'mokosuitedemo'); $this->enablePlugin('task', 'mokosuitesync'); @@ -958,13 +959,22 @@ class Pkg_MokosuiteInstallerScript // Check if a module instance already exists in #__modules $query = $db->getQuery(true) - ->select('COUNT(*)') + ->select('id') ->from($db->quoteName('#__modules')) ->where($db->quoteName('module') . ' = ' . $db->quote('mod_mokosuite_cpanel')); $db->setQuery($query); + $existingId = (int) $db->loadResult(); - if ((int) $db->loadResult() > 0) + if ($existingId > 0) { + // Ensure it's published with correct position + $db->setQuery( + $db->getQuery(true) + ->update('#__modules') + ->set('published = 1') + ->set($db->quoteName('position') . ' = ' . $db->quote('top')) + ->where('id = ' . $existingId) + )->execute(); return; } @@ -1028,13 +1038,21 @@ class Pkg_MokosuiteInstallerScript // Check if module instance exists $db->setQuery( $db->getQuery(true) - ->select('COUNT(*)') + ->select('id') ->from($db->quoteName('#__modules')) ->where($db->quoteName('module') . ' = ' . $db->quote('mod_mokosuite_menu')) ); + $existingId = (int) $db->loadResult(); - if ((int) $db->loadResult() > 0) + if ($existingId > 0) { + $db->setQuery( + $db->getQuery(true) + ->update('#__modules') + ->set('published = 1') + ->set($db->quoteName('position') . ' = ' . $db->quote('menu')) + ->where('id = ' . $existingId) + )->execute(); return; } @@ -1091,13 +1109,21 @@ class Pkg_MokosuiteInstallerScript // Check if module instance exists $db->setQuery( $db->getQuery(true) - ->select('COUNT(*)') + ->select('id') ->from($db->quoteName('#__modules')) ->where($db->quoteName('module') . ' = ' . $db->quote('mod_mokosuite_cache')) ); + $existingId = (int) $db->loadResult(); - if ((int) $db->loadResult() > 0) + if ($existingId > 0) { + $db->setQuery( + $db->getQuery(true) + ->update('#__modules') + ->set('published = 1') + ->set($db->quoteName('position') . ' = ' . $db->quote('status')) + ->where('id = ' . $existingId) + )->execute(); return; }