| [ Index ] |
PHP Cross Reference of Joomla 2.5.4 DE |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * @package Joomla.Site 4 * @subpackage mod_login 5 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. 6 * @license GNU General Public License version 2 or later; see LICENSE.txt 7 */ 8 9 // no direct access 10 defined('_JEXEC') or die; 11 12 class modLoginHelper 13 { 14 static function getReturnURL($params, $type) 15 { 16 $app = JFactory::getApplication(); 17 $router = $app->getRouter(); 18 $url = null; 19 if ($itemid = $params->get($type)) 20 { 21 $db = JFactory::getDbo(); 22 $query = $db->getQuery(true); 23 24 $query->select($db->quoteName('link')); 25 $query->from($db->quoteName('#__menu')); 26 $query->where($db->quoteName('published') . '=1'); 27 $query->where($db->quoteName('id') . '=' . $db->quote($itemid)); 28 29 $db->setQuery($query); 30 if ($link = $db->loadResult()) { 31 if ($router->getMode() == JROUTER_MODE_SEF) { 32 $url = 'index.php?Itemid='.$itemid; 33 } 34 else { 35 $url = $link.'&Itemid='.$itemid; 36 } 37 } 38 } 39 if (!$url) 40 { 41 // stay on the same page 42 $uri = clone JFactory::getURI(); 43 $vars = $router->parse($uri); 44 unset($vars['lang']); 45 if ($router->getMode() == JROUTER_MODE_SEF) 46 { 47 if (isset($vars['Itemid'])) 48 { 49 $itemid = $vars['Itemid']; 50 $menu = $app->getMenu(); 51 $item = $menu->getItem($itemid); 52 unset($vars['Itemid']); 53 if (isset($item) && $vars == $item->query) { 54 $url = 'index.php?Itemid='.$itemid; 55 } 56 else { 57 $url = 'index.php?'.JURI::buildQuery($vars).'&Itemid='.$itemid; 58 } 59 } 60 else 61 { 62 $url = 'index.php?'.JURI::buildQuery($vars); 63 } 64 } 65 else 66 { 67 $url = 'index.php?'.JURI::buildQuery($vars); 68 } 69 } 70 71 return base64_encode($url); 72 } 73 74 static function getType() 75 { 76 $user = JFactory::getUser(); 77 return (!$user->get('guest')) ? 'logout' : 'login'; 78 } 79 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Tue Apr 3 11:40:28 2012 | Cross-referenced by PHPXref 0.7.1 |