API16

JInstallerComponent/discover: Difference between revisions

From Joomla! Documentation

m removing red link to edit, no existant pages
m clean up
Line 1: Line 1:
<span class="editsection" style="font-size:76%;">
<nowiki>[<! removed edit link to red link >]</nowiki>
</span>
<! removed transcluded page call, red link never existed >
<! removed transcluded page call, red link never existed >


Line 49: Line 45:
</source>
</source>


<span class="editsection" style="font-size:76%;">
 
<nowiki>[<! removed edit link to red link >]</nowiki>
</span>
<! removed transcluded page call, red link never existed >
<! removed transcluded page call, red link never existed >



Revision as of 14:09, 24 March 2017

<! removed transcluded page call, red link never existed >

Syntax

discover()


Defined in

libraries/joomla/installer/adapters/component.php

Importing

jimport( 'joomla.installer.adapters.component' );

Source Body

function discover()
{
        $results = Array();
        $site_components = JFolder::folders(JPATH_SITE.DS.'components');
        $admin_components = JFolder::folders(JPATH_ADMINISTRATOR.DS.'components');

        foreach ($site_components as $component) {
                if (file_exists(JPATH_SITE.DS.'components'.DS.$component.DS.str_replace('com_','', $component).'.xml')) {
                        $extension = &JTable::getInstance('extension');
                        $extension->set('type', 'component');
                        $extension->set('client_id', 0);
                        $extension->set('element', $component);
                        $extension->set('name', $component);
                        $extension->set('state', -1);
                        $results[] = $extension;
                }
        }

        foreach ($admin_components as $component) {
                if (file_exists(JPATH_ADMINISTRATOR.DS.'components'.DS.$component.DS.str_replace('com_','', $component).'.xml')) {
                        $extension = &JTable::getInstance('extension');
                        $extension->set('type', 'component');
                        $extension->set('client_id', 1);
                        $extension->set('element', $component);
                        $extension->set('name', $component);
                        $extension->set('state', -1);
                        $results[] = $extension;
                }
        }
        return $results;
}


<! removed transcluded page call, red link never existed >

Examples

<CodeExamplesForm />