Back to FileAdapter class

Method extensionExistsInSystem

protected bool
extensionExistsInSystem
(mixed $extension = null)
Function used to check if extension is already installed
Parameters
  • string $extension The element name of the extension to install
Returns
  • bool True if extension exists
Since
  • 3.1
Class: FileAdapter
Project: Joomla

Method extensionExistsInSystem - Source code

/**
 * Function used to check if extension is already installed
 *
 * @param   string  $extension  The element name of the extension to install
 *
 * @return  boolean  True if extension exists
 *
 * @since   3.1
 */
protected function extensionExistsInSystem($extension = null)
{
    // Get a database connector object
    $db = $this->parent->getDbo();
    $query = $db->getQuery(true)->select($db->quoteName('extension_id'))->from($db->quoteName('#__extensions'))->where($db->quoteName('type') . ' = ' . $db->quote('file'))->where($db->quoteName('element') . ' = :extension')->bind(':extension', $extension);
    $db->setQuery($query);
    try {
        $db->execute();
    } catch (\RuntimeException $e) {
        // Install failed, rollback changes - error logged by the installer
        return false;
    }
    $id = $db->loadResult();
    if (empty($id)) {
        return false;
    }
    return true;
}