当前位置: 首页>>代码示例>>PHP>>正文


PHP JURI::getPath方法代码示例

本文整理汇总了PHP中JURI::getPath方法的典型用法代码示例。如果您正苦于以下问题:PHP JURI::getPath方法的具体用法?PHP JURI::getPath怎么用?PHP JURI::getPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在JURI的用法示例。


在下文中一共展示了JURI::getPath方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testSetPath

	public function testSetPath() {
		$this->object->setPath('/this/is/a/path/to/a/file.htm');

		$this->assertThat(
			$this->object->getPath(),
			$this->equalTo('/this/is/a/path/to/a/file.htm')
		);
	}
开发者ID:realityking,项目名称:JAJAX,代码行数:8,代码来源:JURITest.php

示例2: pathAddHost

 /**
  * Give a relative path, return path with host.
  *
  * @param   string $path A system path.
  *
  * @return  string  Path with host added.
  */
 public static function pathAddHost($path)
 {
     if (!$path) {
         return;
     }
     // build path
     $uri = new JURI($path);
     if ($uri->getHost()) {
         return $path;
     }
     $uri->parse(JURI::root());
     $root_path = $uri->getPath();
     if (strpos($path, $root_path) === 0) {
         $num = JString::strlen($root_path);
         $path = JString::substr($path, $num);
     }
     $uri->setPath($uri->getPath() . $path);
     $uri->setScheme('http');
     $uri->setQuery(null);
     return $uri->toString();
 }
开发者ID:beingsane,项目名称:quickcontent,代码行数:28,代码来源:uri.php

示例3: parseRoute

 /**
  * Method to parse the router
  *
  * @param   JRouter  $router  JRouter instance
  * @param   JURI     $uri     Current JURI instance
  *
  * @return array
  */
 public function parseRoute($router, $uri)
 {
     $path = $uri->getPath();
     $segments = explode('/', $path);
     $alias = end($segments);
     if (preg_match('/^([0-9])\\-/', $alias) == false) {
         $alias = preg_replace('/\\-$/', '', $alias);
         $slug = $this->getSlugByAlias($alias);
         if (!empty($slug)) {
             $path = str_replace($alias, $slug, $path);
             $uri->setPath($path);
         }
     }
     return array();
 }
开发者ID:pjasmits,项目名称:JoomlaPluginsBook,代码行数:23,代码来源:ch06test04.php

示例4: parse

 function parse(&$uri)
 {
     $mainframe =& JFactory::getApplication();
     // test for the backlink plugin to work correctly
     if (JPluginHelper::isEnabled('system', 'backlink')) {
         // && $uri->getQuery() ) {    // commented out - causing problems
         $joomlaRequest = urldecode($_SERVER['REQUEST_URI']);
         $realRequest = $uri->toString(array('path', 'query'));
         if ($realRequest != $joomlaRequest) {
             $uri = new JURI($joomlaRequest);
         }
     }
     // store the old URI before we change it in case we will need it
     // for default Joomla SEF
     $oldUri = new JURI($uri->toString());
     if (!SEFTools::JoomFishInstalled()) {
         $url_query = $uri->getQuery();
         $host = explode(".", $uri->getHost());
         $subdomain = array_shift($host);
         $db = JFactory::getDBO();
         // Subdomain titlepage
         if ($uri->getPath() == '/' && empty($url_query) && empty($_POST)) {
             $query = "SELECT Itemid_titlepage FROM #__sef_subdomains WHERE subdomain = " . $db->quote($subdomain) . " LIMIT 1";
             $db->setQuery($query);
             $Itemid = $db->loadResult();
             if ($Itemid > 0) {
                 $uri->setVar('Itemid', $Itemid);
                 JoomSEF::set('real_domain', JFactory::getUri()->getHost());
                 JFactory::getUri()->setHost(implode(".", $host));
             }
         } else {
             $query = "SELECT COUNT(*) FROM #__sef_subdomains WHERE subdomain = " . $db->quote($subdomain);
             $db->setQuery($query);
             $cnt = $db->loadResult();
             if ($cnt) {
                 JoomSEF::set('real_domain', JFactory::getUri()->getHost());
                 JFactory::getUri()->setHost(implode(".", $host));
             }
         }
     }
     $sefConfig =& SEFConfig::getConfig();
     // load patches
     JPluginHelper::importPlugin('sefpatch');
     // trigger onSefLoad patches
     $mainframe->triggerEvent('onSefLoad');
     // get path
     $path = $uri->getPath();
     // remove basepath
     $path = substr_replace($path, '', 0, strlen(JURI::base(true)));
     // remove slashes
     $path = ltrim($path, '/');
     // Redirect URL with / on the end to URL without / on the end
     if ($sefConfig->redirectSlash) {
         $request = $_SERVER["REQUEST_URI"];
         $noBase = substr_replace($request, '', 0, strlen(JURI::base(true)));
         if ($request != "/" && $noBase != "/" && substr($request, -1) == '/') {
             $mainframe->redirect(rtrim($request, "/"), '', 'message');
             JFactory::getApplication()->close();
         }
     }
     // Redirect the index.php (need to check this before index.php removal)
     if ($sefConfig->fixIndexPhp && $path == 'index.php' && count($_POST) == 0) {
         $q = $uri->getQuery(true);
         if (count($q) == 0) {
             $newUrl = JURI::root();
             if (substr($newUrl, -1) != '/') {
                 $newUrl .= '/';
             }
             $mainframe->redirect($newUrl, '', 'message', true);
             exit;
         }
     }
     // Try the 301 Alias redirect
     if (count($_POST) == 0) {
         JoomSEF::_parseAlias($path, $uri->getQuery(true));
     }
     // Disable non-SEF redirect for index2.php links
     // EDIT: don't even parse index2.php links!
     if (substr($path, 0, 10) == 'index2.php') {
         //$sefConfig->nonSefRedirect = false;
         return $uri->getQuery(true);
     }
     // Redirect old /index.php/ links if set to
     if ($sefConfig->fixIndexPhp && substr($path, 0, 10) == 'index.php/' && count($_POST) == 0) {
         $newUrl = JURI::root();
         if (substr($newUrl, -1) != '/') {
             $newUrl .= '/';
         }
         $newUrl .= substr($path, 10);
         $mainframe->redirect($newUrl, '', 'message', true);
         exit;
     }
     // remove prefix (both index.php and index2.php)
     $path = preg_replace('/^index2?.php/i', '', $path);
     // remove slashes again to be sure there aren't any left
     $path = ltrim($path, '/');
     // replace spaces with our replacement character
     // (mainly for '+' handling, but may be useful in some other situations too)
     $path = str_replace(' ', $sefConfig->replacement, $path);
     // set the route
//.........这里部分代码省略.........
开发者ID:andreassetiawanhartanto,项目名称:PDKKI,代码行数:101,代码来源:joomsef.php

示例5: isImage

 function isImage($link)
 {
     $uri = new JURI($link);
     $path = $uri->getPath();
     return preg_match('/\\.(jpg|jpeg|png|bmp|gif)$/i', $path) > 0;
 }
开发者ID:ashanrupasinghe,项目名称:dnp,代码行数:6,代码来源:class.LightboxEngine.php

示例6: _fetchStringForSigning

 /**
  * Method to get the OAuth message string for signing.
  *
  * Note: As of PHP 5.3 the $this->encode() function is RFC 3986 compliant therefore this requires PHP 5.3+
  *
  * @param   string  $requestUrl     The message's request URL.
  * @param   string  $requestMethod  The message's request method.
  *
  * @return  string  The unsigned OAuth message string.
  *
  * @link    http://www.faqs.org/rfcs/rfc3986
  * @see     $this->encode()
  * @since   1.0
  */
 public function _fetchStringForSigning($requestUrl, $requestMethod)
 {
     // Get a JURI instance for the request URL.
     $uri = new JURI($requestUrl);
     // Initialise base array.
     $base = array();
     // Get the found parameters.
     $params = $this->getParameters();
     // Add the variables from the URI query string.
     foreach ($uri->getQuery(true) as $k => $v) {
         if (strpos($k, 'oauth_') !== 0) {
             $params[$k] = $v;
         }
     }
     // Make sure that any found oauth_signature is not included.
     unset($params['oauth_signature']);
     // Ensure the parameters are in order by key.
     ksort($params);
     // Iterate over the keys to add properties to the base.
     foreach ($params as $key => $value) {
         // If we have multiples for the parameter let's loop over them.
         if (is_array($value)) {
             // Don't want to do this more than once in the inner loop.
             $key = $this->encode($key);
             // Sort the value array and add each one.
             sort($value, SORT_STRING);
             foreach ($value as $v) {
                 $base[] = $key . '=' . $this->encode($v);
             }
         } else {
             $base[] = $this->encode($key) . '=' . $this->encode($value);
         }
     }
     // Start off building the base string by adding the request method and URI.
     $base = array($this->encode(strtoupper($requestMethod)), $this->encode(strtolower($uri->toString(array('scheme', 'user', 'pass', 'host', 'port'))) . $uri->getPath()), $this->encode(implode('&', $base)));
     return implode('&', $base);
 }
开发者ID:prox91,项目名称:joomla-dev,代码行数:51,代码来源:get.php

示例7: _do404

 protected function _do404(&$uri)
 {
     if (self::$requestParsed) {
         return array();
     }
     // get config objects
     $pageInfo =& Sh404sefFactory::getPageInfo();
     $sefConfig = Sh404sefFactory::getConfig();
     // store the status
     $pageInfo->httpStatus = 404;
     // request path
     $reqPath = $uri->getPath();
     // optionnally log the 404 details
     if ($sefConfig->shLog404Errors && !empty($reqPath)) {
         try {
             $record = Sh404sefHelperDb::selectObject('#__sh404sef_urls', '*', array('oldurl' => $reqPath));
             if (!empty($record)) {
                 // we have, so update counter
                 Sh404sefHelperDb::queryQuote('update ?? set cpt=(cpt+1) where ?? = ?', array('#__sh404sef_urls', 'oldurl'), array($reqPath));
             } else {
                 // record the 404
                 Sh404sefHelperDb::insert('#__sh404sef_urls', array('cpt' => 1, 'rank' => 0, 'oldurl' => $reqPath, 'newurl' => '', 'dateadd' => Sh404sefHelperDate::getUTCNow('Y-m-d')));
             }
             // add more details about 404 into security log file
             if ($sefConfig->shSecEnableSecurity && $sefConfig->shSecLogAttacks) {
                 $sep = "\t";
                 $logData = date('Y-m-d') . $sep . date('H:i:s') . $sep . 'Page not found (404)' . $sep . $_SERVER['REMOTE_ADDR'] . $sep;
                 $logData .= getHostByAddr($_SERVER['REMOTE_ADDR']) . $sep;
                 $userAgent = empty($_SERVER['HTTP_USER_AGENT']) ? 'No user agent' : $_SERVER['HTTP_USER_AGENT'];
                 $logData .= $userAgent . $sep . $_SERVER['REQUEST_METHOD'] . $sep . $_SERVER['REQUEST_URI'];
                 $logData .= empty($_SERVER['HTTP_REFERER']) ? "\n" : $sep . $_SERVER['HTTP_REFERER'] . "\n";
                 shLogToSecFile($logData);
             }
         } catch (Sh404sefExceptionDefault $e) {
             _log(__METHOD__ . '/' . __LINE__ . '/' . __CLASS__ . ': Database error: ' . $e->getMessage());
         }
     }
     // display the error page
     $vars['option'] = 'com_content';
     $vars['view'] = 'article';
     // use provided Itemid
     if (empty($sefConfig->shPageNotFoundItemid)) {
         $shHomePage = JFactory::getApplication()->getMenu()->getDefault();
         $vars['Itemid'] = empty($shHomePage) ? null : $shHomePage->id;
     } else {
         $vars['Itemid'] = $sefConfig->shPageNotFoundItemid;
     }
     // user picked our default 404 error page, read its id from DB
     if ($sefConfig->page404 == '0') {
         try {
             $requestedlanguageTag = JFactory::getLanguage()->getTag();
             $languageTag = JRequest::getString(JUtility::getHash('language'), null, 'cookie');
             if (!empty($languageTag)) {
                 $vars['lang'] = $languageTag;
             }
             $ids = Sh404sefHelperDb::queryQuoteOnly('select ?? from ?? where ?? = ? and ?? in ( ?, ?) order by ?? desc', array('id', '#__content', 'title', 'language', 'language'), array('__404__', $languageTag, '*'))->eLoadResultArray();
             $id = empty($ids[0]) ? null : $ids[0];
         } catch (Sh404sefExceptionDefault $e) {
             _log(__METHOD__ . '/' . __LINE__ . '/' . __CLASS__ . ': Database error: ' . $e->getMessage());
         }
         if (empty($id)) {
             JError::raiseError(404, JText::_('Component Not Found') . ' (' . $pageInfo->getDefaultLiveSite() . '/' . $uri->getPath() . ')');
         }
     } else {
         $id = $sefConfig->page404;
     }
     $vars['id'] = $id;
     $uri = new JURI($pageInfo->getDefaultLiveSite() . '/index.php?' . 'option=com_content&view=article&id=' . $id . (empty($vars['Itemid']) ? '' : '&Itemid=' . $vars['Itemid']) . (empty($vars['lang']) ? '' : '&lang=' . shGetIsoCodeFromName($vars['lang'])));
     $tmpl = str_replace('.php', '', $sefConfig->error404SubTemplate);
     if (!empty($tmpl)) {
         $vars['tmpl'] = $tmpl;
     }
     // and prepare the item for display
     $menus =& JFactory::getApplication()->getMenu();
     $menuItem = $menus->getItem($vars['Itemid']);
     if (!empty($menuItem)) {
         $menus->setActive($vars['Itemid']);
     } else {
         $menuItem = $menus->getDefault();
     }
     if (!empty($menuItem->params)) {
         $disableParams = array('show_title', 'show_category', 'show_author', 'show_create_date', 'show_modify_date', 'show_publish_date', 'show_vote', 'show_readmore', 'show_icons', 'show_hits', 'show_feed_link', 'show_page_heading');
         foreach ($disableParams as $p) {
             $menuItem->params->set($p, 0);
         }
         //set a custom page title
         $menuItem->params->set('page_title', htmlspecialchars($uri->get('_uri')));
     }
     // set the menu query array, J! will use that for breadcrumb
     $menuItem->query = $vars;
     // throw 404 http return code, and prepare for page display
     if (!headers_sent()) {
         JResponse::setHeader('status', '404 NOT FOUND');
         // custom error page, faster than loading Joomla 404 page. Not recommended though, why not show
         // your site ?
         if (is_readable(sh404SEF_FRONT_ABS_PATH . '404-Not-Found.tpl.html')) {
             $errorPage = file_get_contents(sh404SEF_FRONT_ABS_PATH . '404-Not-Found.tpl.html');
             if ($errorPage !== false) {
                 $errorPage = str_replace('%sh404SEF_404_URL%', ' (' . $pageInfo->getDefaultLiveSite() . '/' . $uri->getPath() . ')', $errorPage);
                 $errorPage = str_replace('%sh404SEF_404_SITE_URL%', $pageInfo->getDefaultLiveSite(), $errorPage);
//.........这里部分代码省略.........
开发者ID:srbsnkr,项目名称:sellingonlinemadesimple,代码行数:101,代码来源:router.php

示例8: setHost

 /**
  * setHost
  *
  * @param $host
  *
  * @return void
  */
 public function setHost($host)
 {
     $uri = new JURI($host);
     $this->host = $host = $uri->getHost() . $uri->getPath();
     $this->uri->setHost($host);
 }
开发者ID:beingsane,项目名称:quickcontent,代码行数:13,代码来源:sdk.php

示例9: _buildSefRoute

 /**
  * Function to build a sef route
  *
  * @param   JURI  $uri  The uri
  *
  * @return  void
  */
 protected function _buildSefRoute($uri)
 {
     // Get the route
     $route = $uri->getPath();
     // Get the query data
     $query = $uri->getQuery(true);
     if (!isset($query['option'])) {
         return;
     }
     $app = JApplication::getInstance('site');
     $menu = $app->getMenu();
     /*
      * Build the component route
      */
     $component = preg_replace('/[^A-Z0-9_\\.-]/i', '', $query['option']);
     $tmp = '';
     // Use the component routing handler if it exists
     $path = JPATH_SITE . '/components/' . $component . '/router.php';
     // Use the custom routing handler if it exists
     if (file_exists($path) && !empty($query)) {
         require_once $path;
         $function = substr($component, 4) . 'BuildRoute';
         $function = str_replace(array("-", "."), "", $function);
         $parts = $function($query);
         // Encode the route segments
         if ($component != 'com_search') {
             // Cheep fix on searches
             $parts = $this->_encodeSegments($parts);
         } else {
             // Fix up search for URL
             $total = count($parts);
             for ($i = 0; $i < $total; $i++) {
                 // Urlencode twice because it is decoded once after redirect
                 $parts[$i] = urlencode(urlencode(stripcslashes($parts[$i])));
             }
         }
         $result = implode('/', $parts);
         $tmp = $result != "" ? $result : '';
     }
     /*
      * Build the application route
      */
     $built = false;
     if (isset($query['Itemid']) && !empty($query['Itemid'])) {
         $item = $menu->getItem($query['Itemid']);
         if (is_object($item) && $query['option'] == $item->component) {
             if (!$item->home || $item->language != '*') {
                 $tmp = !empty($tmp) ? $item->route . '/' . $tmp : $item->route;
             }
             $built = true;
         }
     }
     if (!$built) {
         $tmp = 'component/' . substr($query['option'], 4) . '/' . $tmp;
     }
     if ($tmp) {
         $route .= '/' . $tmp;
     } elseif ($route == 'index.php') {
         $route = '';
     }
     // Unset unneeded query information
     if (isset($item) && $query['option'] == $item->component) {
         unset($query['Itemid']);
     }
     unset($query['option']);
     // Set query again in the URI
     $uri->setQuery($query);
     $uri->setPath($route);
 }
开发者ID:RuDers,项目名称:JoomlaSQL,代码行数:76,代码来源:site.php

示例10: route

 /**
  * Replaces the matched tags
  *
  * @param array An array of matches (see preg_match_all)
  * @return string
  */
 function route(&$matches)
 {
     $url = str_replace('&amp;', '&', $matches[3]);
     $uri = new JURI(JURI::base(true) . '/' . $url);
     //Remove basepath
     $path = substr_replace($uri->getPath(), '', 0, strlen(JURI::base(true)));
     //Remove prefix
     $path = trim(str_replace('index.php', '', $path), '/');
     if (empty($path)) {
         $route = JRoute::_($url);
         $result = $matches[1] . $matches[2] . $route;
     } else {
         $result = $matches[0];
     }
     return $result;
 }
开发者ID:JSWebdesign,项目名称:intranet-platform,代码行数:22,代码来源:sef.php

示例11: array

 static function append_sid($hook, $url, $params = false, $is_amp = true, $session_id = false)
 {
     global $_SID, $_EXTRA_URL;
     $arrParams = array();
     $arrExtra = array();
     $anchor = '';
     JForumHook::fixPage();
     $config =& JFactory::getConfig();
     if ($url == '.php') {
         $url = '/' . $config->getValue('config.phpbb_path') . '/index.php';
     }
     // Assign sid if session id is not specified
     if ($session_id === false) {
         $session_id = $_SID;
     }
     //Clean the url and the params first
     if ($is_amp) {
         $url = str_replace('&amp;', '&', $url);
         if (!is_array($params)) {
             $params = str_replace('&amp;', '&', $params);
         }
     }
     $amp_delim = $is_amp ? '&amp;' : '&';
     $url_delim = strpos($url, '?') === false ? '?' : $amp_delim;
     // Process the parameters array
     if (is_array($params)) {
         foreach ($params as $key => $item) {
             if ($item === NULL) {
                 continue;
             }
             if ($key == '#') {
                 $anchor = '#' . $item;
                 continue;
             }
             $arrParams[$key] = $item;
         }
     } else {
         if (strpos($params, '#') !== false) {
             list($params, $anchor) = explode('#', $params, 2);
             $anchor = '#' . $anchor;
         }
         parse_str($params, $arrParams);
     }
     //Process the extra array
     if (!empty($_EXTRA_URL)) {
         $extra = implode('&', $_EXTRA_URL);
         parse_str($extra, $arrExtra);
     }
     //Create the URL
     $uri = new JURI($url);
     $query = $uri->getQuery(true);
     $query = $query + $arrParams + $arrExtra;
     $uri->setQuery($query);
     //Set session id variable
     if ($session_id) {
         $uri->setVar('sid', $session_id);
     }
     //Set fragment
     if ($anchor) {
         $uri->setFragment($anchor);
     }
     $view = basename($uri->getPath(), '.php');
     if (!$uri->getVar('rb_v') && $view != "style") {
         if (JRequest::getVar('rb_v') == 'adm') {
             if (strpos($url, $config->getValue('config.phpbb_path')) === false) {
                 $view = 'adm';
             }
         }
         if (stripos($url, $config->getValue('config.phpbb_path') . '/adm') !== false) {
             $view = 'adm';
         }
         if ($view != 'index') {
             $uri->setVar('rb_v', $view);
         }
     }
     if ($view != 'style') {
         $url = 'index.php' . $uri->toString(array('query', 'fragment'));
         // {} getting lost in encoding
         $url = str_replace(array('%7B', '%7D'), array('{', '}'), $url);
         return urldecode(JURI::base() . JRoute::_($url, $is_amp));
     } else {
         $url = 'style.php' . $uri->toString(array('query', 'fragment'));
         $url = str_replace(array('%7B', '%7D'), array('{', '}'), $url);
         return urldecode(JPATH_ROOT . '/' . $config->getValue('config.phpbb_path') . '/' . $url);
     }
 }
开发者ID:skyview059,项目名称:e-learning-website,代码行数:86,代码来源:hooks.php

示例12: parse

 function parse(&$siteRouter, &$uri)
 {
     if ($this->parsing) {
         return array();
     }
     $this->parsing = true;
     $uri->setPath(JURI::base(true) . '/' . $uri->getPath());
     $mainframe = JFactory::getApplication();
     $router = $mainframe->get('mijosef.global.jrouter');
     $router->setMode(JROUTER_MODE_DONT_PARSE);
     // Fix the missing question mark
     if (count($_POST) == 0) {
         $url = $uri->toString();
         $new_url = preg_replace('/^([^?&]*)&([^?]+=[^?]*)$/', '$1?$2', $url);
         // Redirect if question mark fixed
         if ($new_url != $url) {
             $mainframe->redirect($new_url, '', 'message', true);
         }
     }
     // Check if URI is string
     if (is_string($uri)) {
         $uri = JURI::getInstance($uri);
     }
     // Backlink plugin compatibility
     if (JPluginHelper::isEnabled('system', 'backlink')) {
         $joomla_request = $_SERVER['REQUEST_URI'];
         $real_request = $uri->toString(array('path', 'query'));
         if ($real_request != $joomla_request) {
             $uri = new JURI($joomla_request);
         }
     }
     // We'll use it for Joomla! SEF to MijoSEF redirection
     $old_uri = clone $uri;
     // get path
     $path = $uri->getPath();
     // remove basepath
     $path = substr_replace($path, '', 0, strlen(JURI::base(true)));
     // remove slashes
     $path = ltrim($path, '/');
     // Check if the URL starts with index2.php
     if (substr($path, 0, 10) == 'index2.php') {
         return $uri->getQuery(true);
     }
     // remove prefix (both index.php and index2.php)
     $path = preg_replace('/^index2?.php/i', '', $path);
     // remove slashes again to be sure there aren't any left
     $path = ltrim($path, '/');
     // replace spaces with our replacement character
     $path = str_replace(' ', $this->MijosefConfig->replacement_character, $path);
     // set the route
     $uri->setPath($path);
     $vars = Mijosef::get('uri')->parseURI($uri, $old_uri);
     // Parsing done
     $this->parsing = false;
     // Fix the start variable
     if ($start = $uri->getVar('start')) {
         $uri->delVar('start');
         $vars['limitstart'] = $start;
     }
     $menu = Mijosef::get('utility')->getMenu();
     // Handle an empty URL (special case)
     if (empty($vars['Itemid']) && empty($vars['option'])) {
         $item = Mijosef::get('uri')->getDefaultMenuItem();
         if (!is_object($item)) {
             return $vars;
         }
         // set the information in the request
         $vars = $item->query;
         // get the itemid
         $vars['Itemid'] = $item->id;
         // set the active menu item
         $menu->setActive($vars['Itemid']);
         // set vars
         $this->setRequestVars($vars);
         return $vars;
     }
     // Get the item id, if it hasn't been set force it to null
     if (empty($vars['Itemid'])) {
         $vars['Itemid'] = JRequest::getInt('Itemid', null);
     }
     // Get the variables from the uri
     $this->setVars($vars);
     // No option? Get the full information from the itemid
     if (empty($vars['option'])) {
         $item = $menu->getItem($this->getVar('Itemid'));
         if (!is_object($item)) {
             return $vars;
         }
         // No default item set
         $vars = $vars + $item->query;
     }
     // Set the active menu item
     $menu->setActive($this->getVar('Itemid'));
     Mijosef::get('language')->parseLang($vars);
     // Set vars
     $this->setRequestVars($vars);
     return $vars;
 }
开发者ID:affiliatelk,项目名称:ecc,代码行数:98,代码来源:router.php

示例13: foreach

 /**
  * Replace Joomla! M_images standard Icons from main images folder to design image folder
  * @param body HTML body content
  * @return replaced image path for M_images
  **/
 function replaceM_images($body)
 {
     // find M_images (joomla default icons) in input and img elements
     preg_match_all('/(<img|<input).*?src="(.+?)"(.*?)>/is', $body, $matches);
     /* with input preg_match_all('/<img|<input.*?src="(.+?)"(.*?)>/is', $body, $matches); */
     // reduce dublicates
     $images = array_unique($matches[2]);
     $old_img_path = 'images/M_images/';
     $new_img_path = JYAML_PATH_REL . '/images/' . $this->config->design . '/M_images/';
     foreach ($images as $image) {
         if (strpos($image, $old_img_path) === false) {
             continue;
         }
         // Get Path withourt URL if in path
         $uri = new JURI($image);
         $image = $uri->getPath();
         // absolute path to check if file exists
         if (strpos($image, JURI::base(true) . '/' . $old_img_path) !== false) {
             $check_file = $new_img_path . str_replace(JURI::base(true) . '/' . $old_img_path, '', $image);
         } else {
             $check_file = $new_img_path . str_replace($old_img_path, '', $image);
         }
         $check_file = JPATH_SITE . DS . str_replace('/', DS, $check_file);
         // check image replacement exists in design/image/M_images/ folder
         if (JFile::exists($check_file)) {
             $this->_logs[] = 'M_Image Replaced: ' . $old_img_path . basename($image) . " \n\t\t\t\t\\ - To: " . $new_img_path . basename($image);
             $body = str_replace($old_img_path . basename($image), $new_img_path . basename($image), $body);
         }
     }
     return $body;
 }
开发者ID:albertobraschi,项目名称:Hab,代码行数:36,代码来源:jyaml.helper.php

示例14: JURI

 function _finalizeURI($uri, $route)
 {
     // Prepare non-SEF part
     if ($this->attributes->non_sef_part != '' && strstr($route, '?')) {
         $this->attributes->non_sef_part = str_replace('?', '&amp;', $this->attributes->non_sef_part);
     }
     // Get domain
     $url = self::getDomain();
     // Add non-SEF vars
     if ($this->MijosefConfig->append_non_sef == 1) {
         $url .= $route . $this->attributes->non_sef_part;
     } else {
         $url .= $route;
     }
     // Add fragment
     $fragment = $uri->getFragment();
     if (!empty($fragment)) {
         $url .= '#' . $fragment;
     }
     // Finally return new URI
     $uri = new JURI($url);
     $uri->setPath(JString::substr($uri->getPath(), JString::strlen(JURI::base(true))));
     return $uri;
 }
开发者ID:affiliatelk,项目名称:ecc,代码行数:24,代码来源:uri.php

示例15: createAvatarThumb

 /**
  * TuiyoTableResources::createAvatarThumb()
  * Creates and saves a thumb for the avatar image.
  * @param mixed $width
  * @return
  */
 private function createAvatarThumb($width)
 {
     $filePath = TUIYO_FILES . DS . "avatars" . DS . $this->userID . DS;
     $userAvatar = array();
     $imageMani = TuiyoAPI::get("imagemanipulation");
     $thumbX = clone $this;
     $thumbXDir = $filePath . "thumb" . $width . DS;
     $thumbXtarget = $thumbXDir . $this->fileName;
     $thumbSource = $this->filePath . $this->fileName;
     if (!JFolder::exists($thumbXDir)) {
         JFolder::create($thumbXDir);
         JPath::setPermissions($thumbXDir);
     }
     if ($imageMani->resizeImage($thumbSource, $thumbXtarget, $width, $width, true)) {
         $thumbX->resourceID = null;
         $thumbX->filePath = JPath::clean($thumbXDir);
         $thumbX->url = JURI::getPath(true) . str_replace(array(JPATH_ROOT, DS), array("", "/"), $thumbXtarget);
         $thumbX->fileTitle = $thumbX->fileTitle . "_" . $width . "x" . $width;
         //3. Save the Object in the Database
         if (!$thumbX->store()) {
             //echo $thumbX->getError(); die;
             trigger_error($thumbX->getError(), E_USER_ERROR);
             return false;
         }
     }
     $URL = $thumbX->url;
     $thumbX = null;
     return $URL;
 }
开发者ID:night-coder,项目名称:ignite,代码行数:35,代码来源:resources.php


注:本文中的JURI::getPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。