⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 application.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php/** * @version		$Id: application.php 11687 2009-03-11 17:49:23Z ian $ * @package		Joomla * @subpackage	Config * @copyright	Copyright (C) 2005 - 2008 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. */require_once( JPATH_COMPONENT.DS.'views'.DS.'application'.DS.'view.php' );/** * @package		Joomla * @subpackage	Config */class ConfigControllerApplication extends ConfigController{	/**	 * Custom Constructor	 */	function __construct( $default = array() )	{		$default['default_task'] = 'showConfig';		parent::__construct( $default );		$this->registerTask( 'apply', 'save' );	}	/**	 * Show the configuration edit form	 * @param string The URL option	 */	function showConfig()	{		// Initialize some variables		$db =& JFactory::getDBO();		$row = new JConfig();		// compile list of the languages		$langs 		= array ();		$menuitems 	= array ();		$lists 		= array ();		// PRE-PROCESS SOME LIST		// -- Editors --		// compile list of the editors		$query = 'SELECT element AS value, name AS text'				.' FROM #__plugins'				.' WHERE folder = "editors"'				.' AND published = 1'				.' ORDER BY ordering, name'				;		$db->setQuery($query);		$edits = $db->loadObjectList();		// -- Show/Hide --		$show_hide		= array (JHTML::_('select.option', 1, JText::_('Hide')), JHTML::_('select.option', 0, JText::_('Show')),);		$show_hide_r 	= array (JHTML::_('select.option', 0, JText::_('Hide')), JHTML::_('select.option', 1, JText::_('Show')),);		// -- menu items --		$query = 'SELECT id AS value, name AS text FROM #__menu'				.' WHERE ( type="content_section" OR type="components" OR type="content_typed" )'				.' AND published = 1'				.' AND access = 0'				.' ORDER BY name'				;		$db->setQuery($query);		$menuitems = array_merge($menuitems, $db->loadObjectList());		// SITE SETTINGS		$lists['offline'] = JHTML::_('select.booleanlist', 'offline', 'class="inputbox"', $row->offline);		if (!$row->editor) {			$row->editor = '';		}		// build the html select list		$lists['editor'] 		= JHTML::_('select.genericlist',  $edits, 'editor', 'class="inputbox" size="1"', 'value', 'text', $row->editor);		$listLimit 				= array (JHTML::_('select.option', 5, 5), JHTML::_('select.option', 10, 10), JHTML::_('select.option', 15, 15), JHTML::_('select.option', 20, 20), JHTML::_('select.option', 25, 25), JHTML::_('select.option', 30, 30), JHTML::_('select.option', 50, 50), JHTML::_('select.option', 100, 100),);		$lists['list_limit'] 	= JHTML::_('select.genericlist',  $listLimit, 'list_limit', 'class="inputbox" size="1"', 'value', 'text', ($row->list_limit ? $row->list_limit : 50));		jimport('joomla.language.help');		$helpsites 				= array ();		$helpsites 				= JHelp::createSiteList(JPATH_BASE.DS.'help'.DS.'helpsites-15.xml', $row->helpurl);		array_unshift($helpsites, JHTML::_('select.option', '', JText::_('local')));		$lists['helpsites'] 	= JHTML::_('select.genericlist',  $helpsites, 'helpurl', ' class="inputbox"', 'value', 'text', $row->helpurl);		// DEBUG		$lists['debug'] 		= JHTML::_('select.booleanlist', 'debug', 'class="inputbox"', $row->debug);		$lists['debug_lang'] 	= JHTML::_('select.booleanlist', 'debug_lang', 'class="inputbox"', $row->debug_lang);		// DATABASE SETTINGS		// SERVER SETTINGS		$lists['gzip'] 			= JHTML::_('select.booleanlist', 'gzip', 'class="inputbox"', $row->gzip);		$errors 				= array (JHTML::_('select.option', -1, JText::_('System Default')), JHTML::_('select.option', 0, JText::_('None')), JHTML::_('select.option', E_ERROR | E_WARNING | E_PARSE, JText::_('Simple')), JHTML::_('select.option', E_ALL, JText::_('Maximum')));		$lists['xmlrpc_server'] = JHTML::_('select.booleanlist', 'xmlrpc_server', 'class="inputbox"', $row->xmlrpc_server);		$lists['error_reporting'] = JHTML::_('select.genericlist',  $errors, 'error_reporting', 'class="inputbox" size="1"', 'value', 'text', $row->error_reporting);		$lists['enable_ftp'] 	= JHTML::_('select.booleanlist', 'ftp_enable', 'class="inputbox"', intval($row->ftp_enable));				$forceSSL = array(								JHTML::_('select.option', 0, JText::_('None')),								JHTML::_('select.option', 1, JText::_('Administrator Only')),								JHTML::_('select.option', 2, JText::_('Entire Site')),						);		$lists['force_ssl'] = JHTML::_('select.genericlist', $forceSSL, 'force_ssl', 'class="inputbox" size="1"', 'value', 'text', @$row->force_ssl);		// LOCALE SETTINGS		$timeoffset = array (	JHTML::_('select.option', -12, JText::_('(UTC -12:00) International Date Line West')),								JHTML::_('select.option', -11, JText::_('(UTC -11:00) Midway Island, Samoa')),								JHTML::_('select.option', -10, JText::_('(UTC -10:00) Hawaii')),								JHTML::_('select.option', -9.5, JText::_('(UTC -09:30) Taiohae, Marquesas Islands')),								JHTML::_('select.option', -9, JText::_('(UTC -09:00) Alaska')),								JHTML::_('select.option', -8, JText::_('(UTC -08:00) Pacific Time (US &amp; Canada)')),								JHTML::_('select.option', -7, JText::_('(UTC -07:00) Mountain Time (US &amp; Canada)')),								JHTML::_('select.option', -6, JText::_('(UTC -06:00) Central Time (US &amp; Canada), Mexico City')),								JHTML::_('select.option', -5, JText::_('(UTC -05:00) Eastern Time (US &amp; Canada), Bogota, Lima')),								JHTML::_('select.option', -4.5, JText::_('(UTC -04:30) Venezuela')),								JHTML::_('select.option', -4, JText::_('(UTC -04:00) Atlantic Time (Canada), Caracas, La Paz')),								JHTML::_('select.option', -3.5, JText::_('(UTC -03:30) St. John\'s, Newfoundland, Labrador')),								JHTML::_('select.option', -3, JText::_('(UTC -03:00) Brazil, Buenos Aires, Georgetown')),								JHTML::_('select.option', -2, JText::_('(UTC -02:00) Mid-Atlantic')),								JHTML::_('select.option', -1, JText::_('(UTC -01:00) Azores, Cape Verde Islands')),								JHTML::_('select.option', 0, JText::_('(UTC 00:00) Western Europe Time, London, Lisbon, Casablanca')),								JHTML::_('select.option', 1, JText::_('(UTC +01:00) Amsterdam, Berlin, Brussels, Copenhagen, Madrid, Paris')),								JHTML::_('select.option', 2, JText::_('(UTC +02:00) Istanbul, Jerusalem, Kaliningrad, South Africa')),								JHTML::_('select.option', 3, JText::_('(UTC +03:00) Baghdad, Riyadh, Moscow, St. Petersburg')),								JHTML::_('select.option', 3.5, JText::_('(UTC +03:30) Tehran')),								JHTML::_('select.option', 4, JText::_('(UTC +04:00) Abu Dhabi, Muscat, Baku, Tbilisi')),								JHTML::_('select.option', 4.5, JText::_('(UTC +04:30) Kabul')),								JHTML::_('select.option', 5, JText::_('(UTC +05:00) Ekaterinburg, Islamabad, Karachi, Tashkent')),								JHTML::_('select.option', 5.5, JText::_('(UTC +05:30) Bombay, Calcutta, Madras, New Delhi, Colombo')),								JHTML::_('select.option', 5.75, JText::_('(UTC +05:45) Kathmandu')),								JHTML::_('select.option', 6, JText::_('(UTC +06:00) Almaty, Dhaka')),								JHTML::_('select.option', 6.30, JText::_('(UTC +06:30) Yagoon')),								JHTML::_('select.option', 7, JText::_('(UTC +07:00) Bangkok, Hanoi, Jakarta')),								JHTML::_('select.option', 8, JText::_('(UTC +08:00) Beijing, Perth, Singapore, Hong Kong')),								JHTML::_('select.option', 8.75, JText::_('(UTC +08:00) Western Australia')),								JHTML::_('select.option', 9, JText::_('(UTC +09:00) Tokyo, Seoul, Osaka, Sapporo, Yakutsk')),								JHTML::_('select.option', 9.5, JText::_('(UTC +09:30) Adelaide, Darwin, Yakutsk')),								JHTML::_('select.option', 10, JText::_('(UTC +10:00) Eastern Australia, Guam, Vladivostok')),								JHTML::_('select.option', 10.5, JText::_('(UTC +10:30) Lord Howe Island (Australia)')),								JHTML::_('select.option', 11, JText::_('(UTC +11:00) Magadan, Solomon Islands, New Caledonia')),								JHTML::_('select.option', 11.30, JText::_('(UTC +11:30) Norfolk Island')),								JHTML::_('select.option', 12, JText::_('(UTC +12:00) Auckland, Wellington, Fiji, Kamchatka')),								JHTML::_('select.option', 12.75, JText::_('(UTC +12:45) Chatham Island')),								JHTML::_('select.option', 13, JText::_('(UTC +13:00) Tonga')),								JHTML::_('select.option', 14, JText::_('(UTC +14:00) Kiribati')),);		$lists['offset'] 		= JHTML::_('select.genericlist',  $timeoffset, 'offset', 'class="inputbox" size="1"', 'value', 'text', $row->offset);		// MAIL SETTINGS		$mailer 				= array (JHTML::_('select.option', 'mail', JText::_('PHP mail function')), JHTML::_('select.option', 'sendmail', JText::_('Sendmail')), JHTML::_('select.option', 'smtp', JText::_('SMTP Server')));		$lists['mailer'] 		= JHTML::_('select.genericlist',  $mailer, 'mailer', 'class="inputbox" size="1"', 'value', 'text', $row->mailer);		$lists['smtpauth'] 		= JHTML::_('select.booleanlist', 'smtpauth', 'class="inputbox"', $row->smtpauth);		// CACHE SETTINGS		$lists['caching'] 		= JHTML::_('select.booleanlist', 'caching', 'class="inputbox"', $row->caching);		jimport('joomla.cache.cache');		$stores = JCache::getStores();		$options = array();		foreach($stores as $store) {			$options[] = JHTML::_('select.option', $store, JText::_(ucfirst($store)) );		}		$lists['cache_handlers'] = JHTML::_('select.genericlist',  $options, 'cache_handler', 'class="inputbox" size="1"', 'value', 'text', $row->cache_handler);		// MEMCACHE SETTINGS		if (!empty($row->memcache_settings) && !is_array($row->memcache_settings)) {			$row->memcache_settings = unserialize(stripslashes($row->memcache_settings));		}		$lists['memcache_persist'] = JHTML::_('select.booleanlist', 'memcache_settings[persistent]', 'class="inputbox"', @$row->memcache_settings['persistent']);		$lists['memcache_compress'] = JHTML::_('select.booleanlist', 'memcache_settings[compression]', 'class="inputbox"', @$row->memcache_settings['compression']);		// META SETTINGS		$lists['MetaAuthor'] 	= JHTML::_('select.booleanlist', 'MetaAuthor', 'class="inputbox"', $row->MetaAuthor);		$lists['MetaTitle'] 	= JHTML::_('select.booleanlist', 'MetaTitle', 'class="inputbox"', $row->MetaTitle);		// SEO SETTINGS		$lists['sef'] 			= JHTML::_('select.booleanlist', 'sef', 'class="inputbox"', $row->sef);		$lists['sef_rewrite'] 	= JHTML::_('select.booleanlist', 'sef_rewrite', 'class="inputbox"', $row->sef_rewrite);		$lists['sef_suffix'] 	= JHTML::_('select.booleanlist', 'sef_suffix', 'class="inputbox"', $row->sef_suffix);		// FEED SETTINGS		$formats	= array (JHTML::_('select.option', 'RSS2.0', JText::_('RSS')), JHTML::_('select.option', 'Atom', JText::_('Atom')));		$summary	= array (JHTML::_('select.option', 1, JText::_('Full Text')), JHTML::_('select.option', 0, JText::_('Intro Text')),);		$lists['feed_limit']	= JHTML::_('select.genericlist',  $listLimit, 'feed_limit', 'class="inputbox" size="1"', 'value', 'text', ($row->feed_limit ? $row->feed_limit : 10));		$emailOptions = array (	JHTML::_('select.option', 'author', JText::_('Author Email')),								JHTML::_('select.option', 'site', JText::_('Site Email')));		$lists['feed_email'] = JHTML::_('select.genericlist', $emailOptions, 'feed_email', 'class="inputbox" size="1"', 'value', 'text', ($row->feed_email) ? $row->feed_email : 'author');				// SESSION SETTINGS		$stores = JSession::getStores();		$options = array();		foreach($stores as $store) {			$options[] = JHTML::_('select.option', $store, JText::_(ucfirst($store)) );		}		$lists['session_handlers'] = JHTML::_('select.genericlist',  $options, 'session_handler', 'class="inputbox" size="1"', 'value', 'text', $row->session_handler);		// SHOW EDIT FORM		ConfigApplicationView::showConfig($row, $lists);	}	/**	 * Save the configuration	 */	function save()	{		global $mainframe;		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Set FTP credentials, if given		jimport('joomla.client.helper');		JClientHelper::setCredentialsFromRequest('ftp');		$ftp = JClientHelper::getCredentials('ftp');		//Save user and media manager settings		$table =& JTable::getInstance('component');		$userpost['params'] = JRequest::getVar('userparams', array(), 'post', 'array');		$userpost['option'] = 'com_users';		$table->loadByOption( 'com_users' );		$table->bind( $userpost );		// pre-save checks		if (!$table->check()) {			JError::raiseWarning( 500, $table->getError() );			return false;		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -