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

📄 list.php

📁 Joomla!是一套获得过多个奖项的内容管理系统(Content Management System, CMS)。Joomla!采用PHP+MySQL数据库开发
💻 PHP
字号:
<?php/** * @version		$Id: list.php 10381 2008-06-01 03:35:53Z pasamio $ * @package		Joomla * @subpackage	Media * @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.model');jimport('joomla.filesystem.folder');jimport('joomla.filesystem.file');/** * Media Component List Model * * @package		Joomla * @subpackage	Media * @since 1.5 */class MediaModelList extends JModel{	function getState($property = null)	{		static $set;		if (!$set) {			$folder = JRequest::getVar( 'folder', '', '', 'path' );			$this->setState('folder', $folder);			$parent = str_replace("\\", "/", dirname($folder));			$parent = ($parent == '.') ? null : $parent;			$this->setState('parent', $parent);			$set = true;		}		return parent::getState($property);	}	function getImages()	{		$list = $this->getList();		return $list['images'];	}	function getFolders()	{		$list = $this->getList();		return $list['folders'];	}	function getDocuments()	{		$list = $this->getList();		return $list['docs'];	}	/**	 * Build imagelist	 *	 * @param string $listFolder The image directory to display	 * @since 1.5	 */	function getList()	{		static $list;		// Only process the list once per request		if (is_array($list)) {			return $list;		}		// Get current path from request		$current = $this->getState('folder');		// If undefined, set to empty		if ($current == 'undefined') {			$current = '';		}		// Initialize variables		if (strlen($current) > 0) {			$basePath = COM_MEDIA_BASE.DS.$current;		} else {			$basePath = COM_MEDIA_BASE;		}		$mediaBase = str_replace(DS, '/', COM_MEDIA_BASE.'/');		$images 	= array ();		$folders 	= array ();		$docs 		= array ();		// Get the list of files and folders from the given folder		$fileList 	= JFolder::files($basePath);		$folderList = JFolder::folders($basePath);		// Iterate over the files if they exist		if ($fileList !== false) {			foreach ($fileList as $file)			{				if (is_file($basePath.DS.$file) && substr($file, 0, 1) != '.' && strtolower($file) !== 'index.html') {					$tmp = new JObject();					$tmp->name = $file;					$tmp->path = str_replace(DS, '/', JPath::clean($basePath.DS.$file));					$tmp->path_relative = str_replace($mediaBase, '', $tmp->path);					$tmp->size = filesize($tmp->path);					$ext = strtolower(JFile::getExt($file));					switch ($ext)					{						// Image						case 'jpg':						case 'png':						case 'gif':						case 'xcf':						case 'odg':						case 'bmp':						case 'jpeg':							$info = @getimagesize($tmp->path);							$tmp->width		= @$info[0];							$tmp->height	= @$info[1];							$tmp->type		= @$info[2];							$tmp->mime		= @$info['mime'];							$filesize		= MediaHelper::parseSize($tmp->size);							if (($info[0] > 60) || ($info[1] > 60)) {								$dimensions = MediaHelper::imageResize($info[0], $info[1], 60);								$tmp->width_60 = $dimensions[0];								$tmp->height_60 = $dimensions[1];							} else {								$tmp->width_60 = $tmp->width;								$tmp->height_60 = $tmp->height;							}							if (($info[0] > 16) || ($info[1] > 16)) {								$dimensions = MediaHelper::imageResize($info[0], $info[1], 16);								$tmp->width_16 = $dimensions[0];								$tmp->height_16 = $dimensions[1];							} else {								$tmp->width_16 = $tmp->width;								$tmp->height_16 = $tmp->height;							}							$images[] = $tmp;							break;						// Non-image document						default:							$iconfile_32 = JPATH_ADMINISTRATOR.DS."components".DS."com_media".DS."images".DS."mime-icon-32".DS.$ext.".png";							if (file_exists($iconfile_32)) {								$tmp->icon_32 = "components/com_media/images/mime-icon-32/".$ext.".png";							} else {								$tmp->icon_32 = "components/com_media/images/con_info.png";							}							$iconfile_16 = JPATH_ADMINISTRATOR.DS."components".DS."com_media".DS."images".DS."mime-icon-16".DS.$ext.".png";							if (file_exists($iconfile_16)) {								$tmp->icon_16 = "components/com_media/images/mime-icon-16/".$ext.".png";							} else {								$tmp->icon_16 = "components/com_media/images/con_info.png";							}							$docs[] = $tmp;							break;					}				}			}		}		// Iterate over the folders if they exist		if ($folderList !== false) {			foreach ($folderList as $folder) {				$tmp = new JObject();				$tmp->name = basename($folder);				$tmp->path = str_replace(DS, '/', JPath::clean($basePath.DS.$folder));				$tmp->path_relative = str_replace($mediaBase, '', $tmp->path);				$count = MediaHelper::countFiles($tmp->path);				$tmp->files = $count[0];				$tmp->folders = $count[1];				$folders[] = $tmp;			}		}		$list = array('folders' => $folders, 'docs' => $docs, 'images' => $images);		return $list;	}}

⌨️ 快捷键说明

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