git-svn-id: https://192.168.0.254/svn/Proyectos.FundacionLQDVI_WebCongresos/trunk@2 94ccb1af-fd9d-d947-8d90-7f70ea60afc8
404 lines
13 KiB
PHP
404 lines
13 KiB
PHP
<?php
|
|
/**
|
|
* @version $Id: legacy.php 14401 2010-01-26 14:10:00Z louis $
|
|
* @package Joomla
|
|
* @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
|
|
* @license GNU/GPL, see LICENSE.php
|
|
* Joomla! is free software. This version may have been modified pursuant
|
|
* to the GNU General Public License, and as distributed it includes or
|
|
* is derivative of works licensed under the GNU General Public License or
|
|
* other free or open source software licenses.
|
|
* See COPYRIGHT.php for copyright notices and details.
|
|
*/
|
|
|
|
// no direct access
|
|
defined( '_JEXEC' ) or die( 'Restricted access' );
|
|
|
|
jimport( 'joomla.plugin.plugin' );
|
|
|
|
/**
|
|
* Joomla! Debug plugin
|
|
*
|
|
* @package Joomla
|
|
* @subpackage System
|
|
*/
|
|
class plgSystemLegacy extends JPlugin
|
|
{
|
|
/**
|
|
* Constructor
|
|
*
|
|
* For php4 compatability we must not use the __constructor as a constructor for plugins
|
|
* because func_get_args ( void ) returns a copy of all passed arguments NOT references.
|
|
* This causes problems with cross-referencing necessary for the observer design pattern.
|
|
*
|
|
* @param object $subject The object to observe
|
|
* @param array $config An array that holds the plugin configuration
|
|
* @since 1.0
|
|
*/
|
|
function plgSystemLegacy(& $subject, $config)
|
|
{
|
|
parent::__construct($subject, $config);
|
|
|
|
global $mainframe;
|
|
|
|
// Define the 1.0 legacy mode constant
|
|
define('_JLEGACY', '1.0');
|
|
|
|
// Set global configuration var for legacy mode
|
|
$config = &JFactory::getConfig();
|
|
$config->setValue('config.legacy', 1);
|
|
|
|
// Import library dependencies
|
|
require_once(dirname(__FILE__).DS.'legacy'.DS.'classes.php');
|
|
require_once(dirname(__FILE__).DS.'legacy'.DS.'functions.php');
|
|
|
|
// Register legacy classes for autoloading
|
|
JLoader::register('mosAdminMenus' , dirname(__FILE__).DS.'legacy'.DS.'adminmenus.php');
|
|
JLoader::register('mosCache' , dirname(__FILE__).DS.'legacy'.DS.'cache.php');
|
|
JLoader::register('mosCategory' , dirname(__FILE__).DS.'legacy'.DS.'category.php');
|
|
JLoader::register('mosCommonHTML' , dirname(__FILE__).DS.'legacy'.DS.'commonhtml.php');
|
|
JLoader::register('mosComponent' , dirname(__FILE__).DS.'legacy'.DS.'component.php');
|
|
JLoader::register('mosContent' , dirname(__FILE__).DS.'legacy'.DS.'content.php');
|
|
JLoader::register('mosDBTable' , dirname(__FILE__).DS.'legacy'.DS.'dbtable.php');
|
|
JLoader::register('mosHTML' , dirname(__FILE__).DS.'legacy'.DS.'html.php');
|
|
JLoader::register('mosInstaller' , dirname(__FILE__).DS.'legacy'.DS.'installer.php');
|
|
JLoader::register('mosMainFrame' , dirname(__FILE__).DS.'legacy'.DS.'mainframe.php');
|
|
JLoader::register('mosMambot' , dirname(__FILE__).DS.'legacy'.DS.'mambot.php');
|
|
JLoader::register('mosMambotHandler', dirname(__FILE__).DS.'legacy'.DS.'mambothandler.php');
|
|
JLoader::register('mosMenu' , dirname(__FILE__).DS.'legacy'.DS.'menu.php');
|
|
JLoader::register('mosMenuBar' , dirname(__FILE__).DS.'legacy'.DS.'menubar.php');
|
|
JLoader::register('mosModule' , dirname(__FILE__).DS.'legacy'.DS.'module.php');
|
|
//JLoader::register('mosPageNav' , dirname(__FILE__).DS.'legacy'.DS.'pagination.php');
|
|
JLoader::register('mosParameters' , dirname(__FILE__).DS.'legacy'.DS.'parameters.php');
|
|
JLoader::register('patFactory' , dirname(__FILE__).DS.'legacy'.DS.'patfactory.php');
|
|
JLoader::register('mosProfiler' , dirname(__FILE__).DS.'legacy'.DS.'profiler.php');
|
|
JLoader::register('mosSection' , dirname(__FILE__).DS.'legacy'.DS.'section.php');
|
|
JLoader::register('mosSession' , dirname(__FILE__).DS.'legacy'.DS.'session.php');
|
|
JLoader::register('mosToolbar' , dirname(__FILE__).DS.'legacy'.DS.'toolbar.php');
|
|
JLoader::register('mosUser' , dirname(__FILE__).DS.'legacy'.DS.'user.php');
|
|
|
|
// Register class for the database, depends on which db type has been selected for use
|
|
$dbtype = $config->getValue('config.dbtype', 'mysql');
|
|
JLoader::register('database' , dirname(__FILE__).DS.'legacy'.DS.$dbtype.'.php');
|
|
|
|
/**
|
|
* Legacy define, _ISO define not used anymore. All output is forced as utf-8.
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
define('_ISO','charset=utf-8');
|
|
|
|
/**
|
|
* Legacy constant, use _JEXEC instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
define( '_VALID_MOS', 1 );
|
|
|
|
/**
|
|
* Legacy constant, use _JEXEC instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
define( '_MOS_MAMBO_INCLUDED', 1 );
|
|
|
|
/**
|
|
* Legacy constant, use DATE_FORMAT_LC instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
DEFINE('_DATE_FORMAT_LC', JText::_('DATE_FORMAT_LC1') ); //Uses PHP's strftime Command Format
|
|
|
|
/**
|
|
* Legacy constant, use DATE_FORMAT_LC2 instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
DEFINE('_DATE_FORMAT_LC2', JText::_('DATE_FORMAT_LC2'));
|
|
|
|
/**
|
|
* Legacy constant, use JFilterInput instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
DEFINE( "_MOS_NOTRIM", 0x0001 );
|
|
|
|
/**
|
|
* Legacy constant, use JFilterInput instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
DEFINE( "_MOS_ALLOWHTML", 0x0002 );
|
|
|
|
/**
|
|
* Legacy constant, use JFilterInput instead
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
DEFINE( "_MOS_ALLOWRAW", 0x0004 );
|
|
|
|
/**
|
|
* Legacy global, use JVersion->getLongVersion() instead
|
|
* @name $_VERSION
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$GLOBALS['_VERSION'] = new JVersion();
|
|
$version = $GLOBALS['_VERSION']->getLongVersion();
|
|
|
|
/**
|
|
* Legacy global, use JFactory::getDBO() instead
|
|
* @name $database
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$conf =& JFactory::getConfig();
|
|
$GLOBALS['database'] = new database($conf->getValue('config.host'), $conf->getValue('config.user'), $conf->getValue('config.password'), $conf->getValue('config.db'), $conf->getValue('config.dbprefix'));
|
|
$GLOBALS['database']->debug($conf->getValue('config.debug'));
|
|
|
|
/**
|
|
* Legacy global, use JFactory::getUser() [JUser object] instead
|
|
* @name $my
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$user =& JFactory::getUser();
|
|
|
|
$GLOBALS['my'] = (object)$user->getProperties();
|
|
$GLOBALS['my']->gid = $user->get('aid', 0);
|
|
|
|
/**
|
|
* Insert configuration values into global scope (for backwards compatibility)
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
|
|
$temp = new JConfig;
|
|
foreach (get_object_vars($temp) as $k => $v) {
|
|
$name = 'mosConfig_'.$k;
|
|
$GLOBALS[$name] = $v;
|
|
}
|
|
|
|
$GLOBALS['mosConfig_live_site'] = substr_replace(JURI::root(), '', -1, 1);
|
|
$GLOBALS['mosConfig_absolute_path'] = JPATH_SITE;
|
|
$GLOBALS['mosConfig_cachepath'] = JPATH_BASE.DS.'cache';
|
|
|
|
$GLOBALS['mosConfig_offset_user'] = 0;
|
|
|
|
$lang =& JFactory::getLanguage();
|
|
$GLOBALS['mosConfig_lang'] = $lang->getBackwardLang();
|
|
|
|
$config->setValue('config.live_site', $GLOBALS['mosConfig_live_site']);
|
|
$config->setValue('config.absolute_path', $GLOBALS['mosConfig_absolute_path']);
|
|
$config->setValue('config.lang', $GLOBALS['mosConfig_lang']);
|
|
|
|
/**
|
|
* Legacy global, use JFactory::getUser() instead
|
|
* @name $acl
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$acl =& JFactory::getACL();
|
|
|
|
// Legacy ACL's for backward compat
|
|
$acl->addACL( 'administration', 'edit', 'users', 'super administrator', 'components', 'all' );
|
|
$acl->addACL( 'administration', 'edit', 'users', 'administrator', 'components', 'all' );
|
|
$acl->addACL( 'administration', 'edit', 'users', 'super administrator', 'user properties', 'block_user' );
|
|
$acl->addACL( 'administration', 'manage', 'users', 'super administrator', 'components', 'com_users' );
|
|
$acl->addACL( 'administration', 'manage', 'users', 'administrator', 'components', 'com_users' );
|
|
$acl->addACL( 'administration', 'config', 'users', 'super administrator' );
|
|
//$acl->addACL( 'administration', 'config', 'users', 'administrator' );
|
|
|
|
$acl->addACL( 'action', 'add', 'users', 'author', 'content', 'all' );
|
|
$acl->addACL( 'action', 'add', 'users', 'editor', 'content', 'all' );
|
|
$acl->addACL( 'action', 'add', 'users', 'publisher', 'content', 'all' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'author', 'content', 'own' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'editor', 'content', 'all' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'publisher', 'content', 'all' );
|
|
$acl->addACL( 'action', 'publish', 'users', 'publisher', 'content', 'all' );
|
|
|
|
$acl->addACL( 'action', 'add', 'users', 'manager', 'content', 'all' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'manager', 'content', 'all' );
|
|
$acl->addACL( 'action', 'publish', 'users', 'manager', 'content', 'all' );
|
|
|
|
$acl->addACL( 'action', 'add', 'users', 'administrator', 'content', 'all' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'administrator', 'content', 'all' );
|
|
$acl->addACL( 'action', 'publish', 'users', 'administrator', 'content', 'all' );
|
|
|
|
$acl->addACL( 'action', 'add', 'users', 'super administrator', 'content', 'all' );
|
|
$acl->addACL( 'action', 'edit', 'users', 'super administrator', 'content', 'all' );
|
|
$acl->addACL( 'action', 'publish', 'users', 'super administrator', 'content', 'all' );
|
|
|
|
$acl->addACL( 'com_syndicate', 'manage', 'users', 'super administrator' );
|
|
$acl->addACL( 'com_syndicate', 'manage', 'users', 'administrator' );
|
|
$acl->addACL( 'com_syndicate', 'manage', 'users', 'manager' );
|
|
|
|
$GLOBALS['acl'] =& $acl;
|
|
|
|
/**
|
|
* Legacy global
|
|
* @name $task
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$GLOBALS['task'] = JRequest::getString('task');
|
|
|
|
/**
|
|
* Load the site language file (the old way - to be deprecated)
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
global $mosConfig_lang;
|
|
$mosConfig_lang = JFilterInput::clean($mosConfig_lang, 'cmd');
|
|
$file = JPATH_SITE.DS.'language'.DS.$mosConfig_lang.'.php';
|
|
if (file_exists( $file )) {
|
|
require_once( $file);
|
|
} else {
|
|
$file = JPATH_SITE.DS.'language'.DS.'english.php';
|
|
if (file_exists( $file )) {
|
|
require_once( $file );
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Legacy global
|
|
* use JApplicaiton->registerEvent and JApplication->triggerEvent for event handling
|
|
* use JPlugingHelper::importPlugin to load bot code
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$GLOBALS['_MAMBOTS'] = new mosMambotHandler();
|
|
|
|
$mosmsg = JRequest::getVar( 'mosmsg' );
|
|
$mainframe->enqueueMessage( $mosmsg );
|
|
}
|
|
|
|
/**
|
|
* Fixes the $my global if the user was restored by the remember me plugin
|
|
*/
|
|
function onAfterInitialise()
|
|
{
|
|
$user =& JFactory::getUser();
|
|
if ($user->id) {
|
|
if ($GLOBALS['my']->id === 0) {
|
|
$GLOBALS['my'] = (object)$user->getProperties();
|
|
$GLOBALS['my']->gid = $user->get('aid', 0);
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
|
|
|
|
function onAfterRoute()
|
|
{
|
|
global $mainframe;
|
|
if ($mainframe->isAdmin()) {
|
|
return;
|
|
}
|
|
|
|
switch(JRequest::getCmd('option'))
|
|
{
|
|
case 'com_content' :
|
|
$this->routeContent();
|
|
break;
|
|
case 'com_newsfeeds' :
|
|
$this->routeNewsfeeds();
|
|
break;
|
|
case 'com_weblinks' :
|
|
$this->routeWeblinks();
|
|
break;
|
|
case 'com_frontpage' :
|
|
JRequest::setVar('option', 'com_content');
|
|
JRequest::setVar('view', 'frontpage');
|
|
break;
|
|
case 'com_login' :
|
|
JRequest::setVar('option', 'com_user');
|
|
JRequest::setVar('view', 'login');
|
|
break;
|
|
case 'com_registration' :
|
|
JRequest::setVar('option', 'com_user');
|
|
JRequest::setVar('view', 'register');
|
|
break;
|
|
}
|
|
|
|
/**
|
|
* Legacy global, use JApplication::getTemplate() instead
|
|
* @name $cur_template
|
|
* @deprecated As of version 1.5
|
|
*/
|
|
$GLOBALS['cur_template'] = $mainframe->getTemplate();
|
|
}
|
|
|
|
function routeContent()
|
|
{
|
|
$viewName = JRequest::getCmd( 'view', 'article' );
|
|
$layout = JRequest::getCmd( 'layout', 'default' );
|
|
|
|
// interceptors to support legacy urls
|
|
switch( JRequest::getCmd('task'))
|
|
{
|
|
//index.php?option=com_content&task=x&id=x&Itemid=x
|
|
case 'blogsection':
|
|
$viewName = 'section';
|
|
$layout = 'blog';
|
|
break;
|
|
case 'section':
|
|
$viewName = 'section';
|
|
break;
|
|
case 'category':
|
|
$viewName = 'category';
|
|
break;
|
|
case 'blogcategory':
|
|
$viewName = 'category';
|
|
$layout = 'blog';
|
|
break;
|
|
case 'archivesection':
|
|
case 'archivecategory':
|
|
$viewName = 'archive';
|
|
break;
|
|
case 'frontpage' :
|
|
$viewName = 'frontpage';
|
|
break;
|
|
case 'view':
|
|
$viewName = 'article';
|
|
break;
|
|
}
|
|
|
|
JRequest::setVar('layout', $layout);
|
|
JRequest::setVar('view', $viewName);
|
|
}
|
|
|
|
function routeNewsfeeds()
|
|
{
|
|
$viewName = JRequest::getCmd( 'view', 'categories' );
|
|
|
|
// interceptors to support legacy urls
|
|
switch( JRequest::getCmd('task'))
|
|
{
|
|
//index.php?option=com_newsfeeds&task=x&catid=xid=x&Itemid=x
|
|
case 'view':
|
|
$viewName = 'newsfeed';
|
|
break;
|
|
|
|
default:
|
|
{
|
|
if(JRequest::getInt('catid') && !JRequest::getCmd('view')) {
|
|
$viewName = 'category';
|
|
}
|
|
}
|
|
}
|
|
|
|
JRequest::setVar('view', $viewName);
|
|
}
|
|
|
|
function routeWeblinks()
|
|
{
|
|
$viewName = JRequest::getCmd( 'view', 'categories' );
|
|
|
|
// interceptors to support legacy urls
|
|
switch( JRequest::getCmd('task'))
|
|
{
|
|
//index.php?option=com_weblinks&task=x&catid=xid=x
|
|
case 'view':
|
|
$viewName = 'weblink';
|
|
break;
|
|
|
|
default:
|
|
{
|
|
if(($catid = JRequest::getInt('catid')) && !JRequest::getCmd('view')) {
|
|
$viewName = 'category';
|
|
JRequest::setVar('id', $catid);
|
|
}
|
|
}
|
|
}
|
|
|
|
JRequest::setVar('view', $viewName);
|
|
}
|
|
}
|