API15:JApplicationHelper/getPath
From Joomla! Documentation
Description
Get a path
<! removed transcluded page call, red link never existed >
Syntax
getPath($varname, $user_option=null)
| Parameter Name | Default Value | Description |
|---|---|---|
| $varname | $varname | |
| $user_option | null | $user_option |
Returns
string The requested path
Defined in
libraries/joomla/application/helper.php
Importing
jimport( 'joomla.application.helper' );
Source Body
function getPath( $varname, $user_option=null )
{
// check needed for handling of custom/new module xml file loading
$check = ( ( $varname == 'mod0_xml' ) || ( $varname == 'mod1_xml' ) );
if ( !$user_option && !$check ) {
$user_option = JRequest::getCmd('option');
} else {
$user_option = JFilterInput::clean($user_option, 'path');
}
$result = null;
$name = substr( $user_option, 4 );
switch ($varname) {
case 'front':
$result = JApplicationHelper::_checkPath( DS.'components'.DS. $user_option .DS. $name .'.php', 0 );
break;
case 'html':
case 'front_html':
if ( !( $result = JApplicationHelper::_checkPath( DS.'templates'.DS. JApplication::getTemplate() .DS.'components'.DS. $name .'.html.php', 0 ) ) ) {
$result = JApplicationHelper::_checkPath( DS.'components'.DS. $user_option .DS. $name .'.html.php', 0 );
}
break;
case 'toolbar':
$result = JApplicationHelper::_checkPath( DS.'components'.DS. $user_option .DS.'toolbar.'. $name .'.php', -1 );
break;
case 'toolbar_html':
$result = JApplicationHelper::_checkPath( DS.'components'.DS. $user_option .DS.'toolbar.'. $name .'.html.php', -1 );
break;
case 'toolbar_default':
case 'toolbar_front':
$result = JApplicationHelper::_checkPath( DS.'includes'.DS.'HTML_toolbar.php', 0 );
break;
case 'admin':
$path = DS.'components'.DS. $user_option .DS.'admin.'. $name .'.php';
$result = JApplicationHelper::_checkPath( $path, -1 );
if ($result == null) {
$path = DS.'components'.DS. $user_option .DS. $name .'.php';
$result = JApplicationHelper::_checkPath( $path, -1 );
}
break;
case 'admin_html':
$path = DS.'components'.DS. $user_option .DS.'admin.'. $name .'.html.php';
$result = JApplicationHelper::_checkPath( $path, -1 );
break;
case 'admin_functions':
$path = DS.'components'.DS. $user_option .DS. $name .'.functions.php';
$result = JApplicationHelper::_checkPath( $path, -1 );
break;
case 'class':
if ( !( $result = JApplicationHelper::_checkPath( DS.'components'.DS. $user_option .DS. $name .'.class.php' ) ) ) {
$result = JApplicationHelper::_checkPath( DS.'includes'.DS. $name .'.php' );
}
break;
case 'helper':
$path = DS.'components'.DS. $user_option .DS. $name .'.helper.php';
$result = JApplicationHelper::_checkPath( $path );
break;
case 'com_xml':
$path = DS.'components'.DS. $user_option .DS. $name .'.xml';
$result = JApplicationHelper::_checkPath( $path, 1 );
break;
case 'mod0_xml':
$path = DS.'modules'.DS. $user_option .DS. $user_option. '.xml';
$result = JApplicationHelper::_checkPath( $path );
break;
case 'mod1_xml':
// admin modules
$path = DS.'modules'.DS. $user_option .DS. $user_option. '.xml';
$result = JApplicationHelper::_checkPath( $path, -1 );
break;
case 'bot_xml':
// legacy value
case 'plg_xml':
// Site plugins
$path = DS.'plugins'.DS. $user_option .'.xml';
$result = JApplicationHelper::_checkPath( $path, 0 );
break;
case 'menu_xml':
$path = DS.'components'.DS.'com_menus'.DS. $user_option .DS. $user_option .'.xml';
$result = JApplicationHelper::_checkPath( $path, -1 );
break;
}
return $result;
}
<! removed transcluded page call, red link never existed >
Examples
Code Examples