API16:JApplicationHelper/getPath
From Joomla! Documentation
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.
Contents |
Description
Get a path
Description:JApplicationHelper/getPath
Syntax
static 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
public static 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::getInstance()->clean($user_option, 'path'); } $result = null; $name = substr($user_option, 4); switch ($varname) { case 'front': $result = self::_checkPath(DS.'components'.DS. $user_option .DS. $name .'.php', 0); break; case 'html': case 'front_html': if (!($result = self::_checkPath(DS.'templates'.DS. JApplication::getTemplate() .DS.'components'.DS. $name .'.html.php', 0))) { $result = self::_checkPath(DS.'components'.DS. $user_option .DS. $name .'.html.php', 0); } break; case 'toolbar': $result = self::_checkPath(DS.'components'.DS. $user_option .DS.'toolbar.'. $name .'.php', -1); break; case 'toolbar_html': $result = self::_checkPath(DS.'components'.DS. $user_option .DS.'toolbar.'. $name .'.html.php', -1); break; case 'toolbar_default': case 'toolbar_front': $result = self::_checkPath(DS.'includes'.DS.'HTML_toolbar.php', 0); break; case 'admin': $path = DS.'components'.DS. $user_option .DS.'admin.'. $name .'.php'; $result = self::_checkPath($path, -1); if ($result == null) { $path = DS.'components'.DS. $user_option .DS. $name .'.php'; $result = self::_checkPath($path, -1); } break; case 'admin_html': $path = DS.'components'.DS. $user_option .DS.'admin.'. $name .'.html.php'; $result = self::_checkPath($path, -1); break; case 'admin_functions': $path = DS.'components'.DS. $user_option .DS. $name .'.functions.php'; $result = self::_checkPath($path, -1); break; case 'class': if (!($result = self::_checkPath(DS.'components'.DS. $user_option .DS. $name .'.class.php'))) { $result = self::_checkPath(DS.'includes'.DS. $name .'.php'); } break; case 'helper': $path = DS.'components'.DS. $user_option .DS. $name .'.helper.php'; $result = self::_checkPath($path); break; case 'com_xml': $path = DS.'components'.DS. $user_option .DS. $name .'.xml'; $result = self::_checkPath($path, 1); break; case 'mod0_xml': $path = DS.'modules'.DS. $user_option .DS. $user_option. '.xml'; $result = self::_checkPath($path); break; case 'mod1_xml': // admin modules $path = DS.'modules'.DS. $user_option .DS. $user_option. '.xml'; $result = self::_checkPath($path, -1); break; case 'plg_xml': // Site plugins $j15path = DS.'plugins'.DS. $user_option .'.xml'; $parts = explode(DS, $user_option); $j16path = DS.'plugins'.DS. $user_option.DS.$parts[1].'.xml'; $j15 = self::_checkPath($j15path, 0); $j16 = self::_checkPath( $j16path, 0); // return 1.6 if working otherwise default to whatever 1.5 gives us $result = $j16 ? $j16 : $j15; break; case 'menu_xml': $path = DS.'components'.DS.'com_menus'.DS. $user_option .DS. $user_option .'.xml'; $result = self::_checkPath($path, -1); break; } return $result; }
[Edit See Also] SeeAlso:JApplicationHelper/getPath
Examples
<CodeExamplesForm />
