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

📄 controller.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php/** * @version		$Id: controller.php 11646 2009-03-01 19:34:56Z ian $ * @package		Joomla * @subpackage	Menus * @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. */// Check to ensure this file is included in Joomla!defined('_JEXEC') or die( 'Restricted access' );jimport('joomla.application.component.controller');/** * @package		Joomla * @subpackage	Menus */class MenusController extends JController{	/**	 * New menu item wizard	 */	function newItem()	{		JRequest::setVar( 'edit', false );		$model	=& $this->getModel( 'Item' );		$view =& $this->getView( 'Item' );		$view->setModel( $model, true );		// Set the layout and display		$view->setLayout('type');		$view->type();	}	/**	 * Edit menu item wizard	 */	function type()	{		JRequest::setVar( 'edit', true );		$model	=& $this->getModel( 'Item' );		$view =& $this->getView( 'Item' );		$view->setModel( $model, true );		// Set the layout and display		$view->setLayout('type');		$view->type();	}	/**	 * Edits a menu item	 */	function edit()	{		JRequest::setVar( 'edit', true );		$model	=& $this->getModel( 'Item' );		$model->checkout();		$view =& $this->getView( 'Item' );		$view->setModel( $model, true );		// Set the layout and display		$view->setLayout('form');		$view->edit();	}	/**	 * Saves a menu item	 */	function save()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		$model	=& $this->getModel( 'Item' );		$post	= JRequest::get('post');		// allow name only to contain html		$post['name'] = JRequest::getVar( 'name', '', 'post', 'string', JREQUEST_ALLOWHTML );		$model->setState( 'request', $post );		if ($model->store()) {			$msg = JText::_( 'Menu item Saved' );		} else {			$msg = JText::_( 'Error Saving Menu item' );		}		$item =& $model->getItem();		switch ( $this->_task ) {			case 'apply':				$this->setRedirect( 'index.php?option=com_menus&menutype='.$item->menutype.'&task=edit&cid[]='.$item->id.'' , $msg );				break;			case 'save':			default:				$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$item->menutype, $msg );				break;		}	}	/**	* Cancels an edit operation	*/	function cancelItem()	{		global $mainframe;		JRequest::checkToken() or jexit( 'Invalid Token' );		$menutype = $mainframe->getUserStateFromRequest( 'com_menus.menutype', 'menutype', 'mainmenu', 'string' );		$model = $this->getModel('item');		$model->checkin();		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menutype);	}	/**	* Cancels an edit operation	*/	function cancel()	{		$this->setRedirect( 'index.php?option=com_menus');	}	/**	* Form for copying item(s) to a specific menu	*/	function copy()	{		$model	=& $this->getModel( 'List' );		$view =& $this->getView( 'List' );		$view->setModel( $model, true );		$view->copyForm();	}	/**	* Save the item(s) to the menu selected	*/	function doCopy()	{		global $mainframe;		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	 	= JRequest::getString( 'menu', '', 'post');		$cid		= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		//Check to see of a menu was selected to copy the items too		if (empty($menu))		{			$msg = JText::_('Please select a menu from the list');			$mainframe->enqueueMessage($msg, 'message');			return $this->execute('copy');		}		$model	=& $this->getModel( 'List' );		if ($model->copy($cid, $menu)) {			$msg = JText::sprintf( 'Menu Items Copied to', count( $cid ), $menu );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Form for moving item(s) to a specific menu	*/	function move()	{		$model	=& $this->getModel( 'List');		$view =& $this->getView( 'List' );		$view->setModel( $model, true );		$view->moveForm();	}	/**	* Save the item(s) to the menu selected	*/	function doMove()	{		global $mainframe;		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menu', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		//Check to see if a menu was selected to copy the items too		if (empty($menu))		{			$msg = JText::_('Please select a menu from the list');			$mainframe->enqueueMessage($msg, 'message');			return $this->execute('move');		}		$model	=& $this->getModel( 'List' );		if ($model->move($cid, $menu)) {			$msg = JText::sprintf( 'Menu Items Moved to', count( $cid ), $menu );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function publish()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setItemState($cid, 1)) {			$msg = JText::sprintf( 'Menu Items Published', count( $cid ) );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function unpublish()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setItemState($cid, 0)) {			$msg = JText::sprintf( 'Menu Items Unpublished', count( $cid ) );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function orderup()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		if (isset($cid[0]) && $cid[0]) {			$id = $cid[0];		} else {			$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, JText::_('No Items Selected') );			return false;		}		$model =& $this->getModel( 'List' );		if ($model->orderItem($id, -1)) {			$msg = JText::_( 'Menu Item Moved Up' );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function orderdown()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		if (isset($cid[0]) && $cid[0]) {			$id = $cid[0];		} else {			$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, JText::_('No Items Selected') );			return false;		}		$model =& $this->getModel( 'List' );		if ($model->orderItem($id, 1)) {			$msg = JText::_( 'Menu Item Moved Down' );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function saveorder()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setOrder($cid, $menu)) {			$msg = JText::_( 'New ordering saved' );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function accesspublic()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setAccess($cid, 0)) {			$msg = JText::sprintf( 'Menu Items Set Public', count( $cid ) );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function accessregistered()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setAccess($cid, 1)) {			$msg = JText::sprintf( 'Menu Items Set Registered', count( $cid ) );		} else {			$msg = $model->getError();		}		$this->setRedirect( 'index.php?option=com_menus&task=view&menutype='.$menu, $msg );	}	/**	* Save the item(s) to the menu selected	*/	function accessspecial()	{		// Check for request forgeries		JRequest::checkToken() or jexit( 'Invalid Token' );		// Get some variables from the request		$menu	= JRequest::getVar( 'menutype', '', 'post', 'string' );		$cid	= JRequest::getVar( 'cid', array(), 'post', 'array' );		JArrayHelper::toInteger($cid);		$model =& $this->getModel( 'List' );		if ($model->setAccess($cid, 2)) {			$msg = JText::sprintf( 'Menu Items Set Special', count( $cid ) );

⌨️ 快捷键说明

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