本文整理汇总了PHP中JInstaller::_isManifest方法的典型用法代码示例。如果您正苦于以下问题:PHP JInstaller::_isManifest方法的具体用法?PHP JInstaller::_isManifest怎么用?PHP JInstaller::_isManifest使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JInstaller
的用法示例。
在下文中一共展示了JInstaller::_isManifest方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getComponentManifestFile
function getComponentManifestFile($com)
{
$short_element = str_replace('com_', '', $com);
$manifestPath = JPATH_ADMINISTRATOR . '/components/' . $com . '/' . 'manifest.xml';
$shortElementManifestPath = JPATH_ADMINISTRATOR . '/components/' . $com . '/' . $short_element . '.xml';
if (JFile::exists($manifestPath)) {
$file = $manifestPath;
}
if (JFile::exists($shortElementManifestPath)) {
$file = $shortElementManifestPath;
}
if (empty($file)) {
return false;
}
$installer = new JInstaller();
if (version_compare(JVERSION, '1.6.0', 'ge')) {
// Joomla! 1.6+ code here
$manifest = $installer->isManifest($file);
} else {
// Joomla! 1.5 code here
$manifest = $installer->_isManifest($file);
}
return $manifest;
}
示例2: uninstallExtension
/**
* Attempts to uninstall the specified extension
*
* @param array $pkg the paket package information
* @return Boolean True if successful, false otherwise
*/
function uninstallExtension($package)
{
//Get an installer instance, always get a new one
$installer = new JInstaller();
//attemp to load the manifest file
$file = $this->findManifest($package);
//check to see if the manifest was found
if (isset($file)) {
// Is it a valid joomla installation manifest file?
$manifest = $installer->_isManifest($file);
if (!is_null($manifest)) {
// If the root method attribute is set to upgrade, allow file overwrite
$root = $manifest->document;
if ($root->attributes('method') == 'upgrade') {
$installer->_overwrite = true;
}
// Set the manifest object and path
$installer->_manifest = $manifest;
$installer->setPath('manifest', $file);
// Set the installation source path to that of the manifest file
$installer->setPath('source', dirname($file));
}
} else {
$this->setError(JText::_('COM_TIENDA_UNABLE_TO_LOCATE_MANIFEST_FILE'));
return false;
}
//check if the extension is installed already and if so uninstall it
//$manifestInformation = $this->paketItemToManifest($package);
$manifestInformation = $package;
$elementID = $this->checkIfInstalledAlready($manifestInformation);
if (!empty($elementID)) {
$clientid = 0;
if ($package['client'] == 'administrator') {
$clientid = '1';
}
//uninstall the extension using the joomla uninstaller
if ($installer->uninstall($manifestInformation["type"], $elementID, $clientid)) {
$this->setError(JText::_('COM_TIENDA_ELEMENT_UNINSTALLED'));
return true;
} else {
$this->setError(JText::_('COM_TIENDA_ELEMENT_UNINSTALL_FAILED') . " :: " . $installer->getError());
return false;
}
}
$this->setError(JText::_('COM_TIENDA_ELEMENT_NOT_UNINSTALLED'));
return false;
}