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

📄 admin.typedcontent.php

📁 mambo的cms源代码
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php/*** @version $Id: admin.typedcontent.php,v 1.15 2005/02/16 07:48:36 kochp Exp $* @package Mambo* @subpackage Content* @copyright (C) 2000 - 2005 Miro International Pty Ltd* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL* Mambo is Free Software*//** ensure this file is being included by a parent file */defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );require_once( $mainframe->getPath( 'admin_html' ) );$id 	= mosGetParam( $_REQUEST, 'id', '' );$cid 	= mosGetParam( $_POST, 'cid', array(0) );if (!is_array( $cid )) {	$cid = array(0);}switch ( $task ) {	case 'cancel':		cancel( $option );		break;	case 'new':		edit( 0, $option );		break;	case 'edit':		edit( $id, $option );		break;	case 'editA':		edit( $cid[0], $option );		break;	case 'go2menu':	case 'go2menuitem':	case 'resethits':	case 'menulink':	case 'save':	case 'apply':		save( $option, $task );		break;	case 'remove':		trash( $cid, $option );		break;	case 'publish':		changeState( $cid, 1, $option );		break;	case 'unpublish':		changeState( $cid, 0, $option );		break;	case 'accesspublic':		changeAccess( $cid[0], 0, $option );		break;	case 'accessregistered':		changeAccess( $cid[0], 1, $option );		break;	case 'accessspecial':		changeAccess( $cid[0], 2, $option );		break;	case 'saveorder':		saveOrder( $cid );		break;	default:		view( $option );		break;}/*** Compiles a list of installed or defined modules* @param database A database connector object*/function view( $option ) {	global $database, $mainframe, $mosConfig_list_limit;	$filter_authorid 	= $mainframe->getUserStateFromRequest( "filter_authorid{$option}", 'filter_authorid', 0 );	$order 				= $mainframe->getUserStateFromRequest( "zorder", 'zorder', 'c.ordering DESC' );	$limit 				= $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', $mosConfig_list_limit );	$limitstart 		= $mainframe->getUserStateFromRequest( "view{$option}limitstart", 'limitstart', 0 );	$search 			= $mainframe->getUserStateFromRequest( "search{$option}", 'search', '' );	$search 			= $database->getEscaped( trim( strtolower( $search ) ) );	// used by filter	if ( $search ) {		$search_query = "\n AND ( LOWER( c.title ) LIKE '%$search%' OR LOWER( c.title_alias ) LIKE '%$search%' )";	} else {		$search_query = '';	}	$filter = '';	if ( $filter_authorid > 0 ) {		$filter = "\n AND c.created_by = '$filter_authorid'";	}	// get the total number of records	$query = "SELECT count(*)"	. "\n FROM #__content AS c"	. "\n WHERE c.sectionid = '0'"	. "\n AND c.catid = '0'"	. "\n AND c.state <> '-2'"	. $filter	;	$database->setQuery( $query );	$total = $database->loadResult();	require_once( $GLOBALS['mosConfig_absolute_path'] . '/administrator/includes/pageNavigation.php' );	$pageNav = new mosPageNav( $total, $limitstart, $limit );	$query = "SELECT c.*, g.name AS groupname, u.name AS editor, z.name AS creator"	. "\n FROM #__content AS c"	. "\n LEFT JOIN #__groups AS g ON g.id = c.access"	. "\n LEFT JOIN #__users AS u ON u.id = c.checked_out"	. "\n LEFT JOIN #__users AS z ON z.id = c.created_by"	. "\n WHERE c.sectionid = '0'"	. "\n AND c.catid = '0'"	. "\n AND c.state <> '-2'"	. $search_query	. $filter	. "\n ORDER BY ". $order	. "\n LIMIT $pageNav->limitstart,$pageNav->limit"	;	$database->setQuery( $query );	$rows = $database->loadObjectList();	if ($database->getErrorNum()) {		echo $database->stderr();		return false;	}	$count = count( $rows );	for( $i = 0; $i < $count; $i++ ) {		$query = "SELECT COUNT( id )"		. "\n FROM #__menu"		. "\n WHERE componentid = ". $rows[$i]->id		. "\n AND type = 'content_typed'"		. "\n AND published <> '-2'"		;		$database->setQuery( $query );		$rows[$i]->links = $database->loadResult();	}	$ordering[] = mosHTML::makeOption( 'c.ordering ASC', 'Ordering asc' );	$ordering[] = mosHTML::makeOption( 'c.ordering DESC', 'Ordering desc' );	$ordering[] = mosHTML::makeOption( 'c.id ASC', 'ID asc' );	$ordering[] = mosHTML::makeOption( 'c.id DESC', 'ID desc' );	$ordering[] = mosHTML::makeOption( 'c.title ASC', 'Title asc' );	$ordering[] = mosHTML::makeOption( 'c.title DESC', 'Title desc' );	$ordering[] = mosHTML::makeOption( 'c.created ASC', 'Date asc' );	$ordering[] = mosHTML::makeOption( 'c.created DESC', 'Date desc' );	$ordering[] = mosHTML::makeOption( 'z.name ASC', 'Author asc' );	$ordering[] = mosHTML::makeOption( 'z.name DESC', 'Author desc' );	$ordering[] = mosHTML::makeOption( 'c.state ASC', 'Published asc' );	$ordering[] = mosHTML::makeOption( 'c.state DESC', 'Published desc' );	$ordering[] = mosHTML::makeOption( 'c.access ASC', 'Access asc' );	$ordering[] = mosHTML::makeOption( 'c.access DESC', 'Access desc' );	$javascript = 'onchange="document.adminForm.submit();"';	$lists['order'] = mosHTML::selectList( $ordering, 'zorder', 'class="inputbox" size="1"'. $javascript, 'value', 'text', $order );	// get list of Authors for dropdown filter	$query = "SELECT c.created_by AS value, u.name AS text"	. "\n FROM #__content AS c"	. "\n LEFT JOIN #__users AS u ON u.id = c.created_by"	. "\n WHERE c.sectionid = 0"	. "\n GROUP BY u.name"	. "\n ORDER BY u.name"	;	$authors[] = mosHTML::makeOption( '0', _SEL_AUTHOR );	$database->setQuery( $query );	$authors = array_merge( $authors, $database->loadObjectList() );	$lists['authorid']	= mosHTML::selectList( $authors, 'filter_authorid', 'class="inputbox" size="1" onchange="document.adminForm.submit( );"', 'value', 'text', $filter_authorid );	HTML_typedcontent::showContent( $rows, $pageNav, $option, $search, $lists );}/*** Compiles information to add or edit content* @param database A database connector object* @param string The name of the category section* @param integer The unique id of the category to edit (0 if new)*/function edit( $uid, $option ) {	global $database, $my, $mainframe, $adminLanguage;	global $mosConfig_absolute_path, $mosConfig_live_site;	$row = new mosContent( $database );	// fail if checked out not by 'me'	if ($row->checked_out && $row->checked_out <> $my->id) {		echo "<script>alert(\"". $adminLanguage->A_COMP_CONTENT_MODULE ." ". $row->title ." ". $adminLanguage->A_COMP_ANOTHER_ADMIN ."\"); document.location.href='index2.php?option=$option'</script>\n";		exit(0);	}	$lists = array();	if ($uid) {		// load the row from the db table		$row->load( $uid );		$row->checkout( $my->id );		if (trim( $row->images )) {			$row->images = explode( "\n", $row->images );		} else {			$row->images = array();		}		if (trim( $row->publish_down ) == "0000-00-00 00:00:00") {			$row->publish_down = "Never";		}		$query = "SELECT name from #__users"		. "\n WHERE id=$row->created_by"		;		$database->setQuery( $query );		$row->creator = $database->loadResult();		$query = "SELECT name from #__users"		. "\n WHERE id=$row->modified_by"		;		$database->setQuery( $query );		$row->modifier = $database->loadResult();		// get list of links to this item		$and 	= "\n AND componentid = ". $row->id;		$menus 	= mosAdminMenus::Links2Menu( 'content_typed', $and );	} else {		// initialise values for a new item		$row->version = 0;		$row->state = 1;		$row->images = array();		$row->publish_up = date( "Y-m-d", time() );		$row->publish_down = "Never";		$row->sectionid = 0;		$row->catid = 0;		$row->creator = '';		$row->modifier = '';		$row->ordering = 0;		$menus = array();	}	// calls function to read image from directory	$pathA 	= $mosConfig_absolute_path .'/images/stories';	$pathL 		= $mosConfig_live_site .'/images/stories';	$images 	= array();	$folders 	= array();	$folders[] 	= mosHTML::makeOption( '/' );	mosAdminMenus::ReadImages( $pathA, '/', $folders, $images );	// list of folders in images/stories/	$lists['folders'] 		= mosAdminMenus::GetImageFolders( $folders, $pathL );	// list of images in specfic folder in images/stories/	$lists['imagefiles']	= mosAdminMenus::GetImages( $images, $pathL );	// list of saved images	$lists['imagelist'] 	= mosAdminMenus::GetSavedImages( $row, $pathL );	// build list of users	$active = ( intval( $row->created_by ) ? intval( $row->created_by ) : $my->id );	$lists['created_by'] 	= mosAdminMenus::UserSelect( 'created_by', $active );	// build the html select list for the group access	$lists['access'] 		= mosAdminMenus::Access( $row );	// build the html select list for menu selection	$lists['menuselect']	= mosAdminMenus::MenuSelect( );	// build the select list for the image positions	$lists['_align'] 		= mosAdminMenus::Positions( '_align' );	// build the select list for the image caption alignment	$lists['_caption_align'] 	= mosAdminMenus::Positions( '_caption_align' );	// build the select list for the image caption position	$pos[] = mosHTML::makeOption( 'bottom', _CMN_BOTTOM );	$pos[] = mosHTML::makeOption( 'top', _CMN_TOP );	$lists['_caption_position'] = mosHTML::selectList( $pos, '_caption_position', 'class="inputbox" size="1"', 'value', 'text' );	// get params definitions	$params =& new mosParameters( $row->attribs, $mainframe->getPath( 'com_xml', 'com_typedcontent' ), 'component' );	HTML_typedcontent::edit( $row, $images, $lists, $params, $option, $menus );}/*** Saves the typed content item*/function save( $option, $task ) {	global $database, $my, $adminLanguage;	$menu 		= mosGetParam( $_POST, 'menu', 'mainmenu' );

⌨️ 快捷键说明

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