Файловый менеджер - Редактировать - /home/lmsyaran/public_html/khsh/mod_random_image.tar
Назад
helper.php 0000644 00000005723 15116773527 0006561 0 ustar 00 <?php /** * @package Joomla.Site * @subpackage mod_random_image * * @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\String\StringHelper; /** * Helper for mod_random_image * * @since 1.5 */ class ModRandomImageHelper { /** * Retrieves a random image * * @param \Joomla\Registry\Registry &$params module parameters object * @param array $images list of images * * @return mixed */ public static function getRandomImage(&$params, $images) { $width = $params->get('width', 100); $height = $params->get('height', null); $i = count($images); $random = mt_rand(0, $i - 1); $image = $images[$random]; $size = getimagesize(JPATH_BASE . '/' . $image->folder . '/' . $image->name); if ($size[0] < $width) { $width = $size[0]; } $coeff = $size[0] / $size[1]; if ($height === null) { $height = (int) ($width / $coeff); } else { $newheight = min($height, (int) ($width / $coeff)); if ($newheight < $height) { $height = $newheight; } else { $width = $height * $coeff; } } $image->width = $width; $image->height = $height; $image->folder = str_replace('\\', '/', $image->folder); return $image; } /** * Retrieves images from a specific folder * * @param \Joomla\Registry\Registry &$params module params * @param string $folder folder to get the images from * * @return array */ public static function getImages(&$params, $folder) { $type = $params->get('type', 'jpg'); $files = array(); $images = array(); $dir = JPATH_BASE . '/' . $folder; // Check if directory exists if (is_dir($dir)) { if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file !== '.' && $file !== '..' && $file !== 'CVS' && $file !== 'index.html') { $files[] = $file; } } } closedir($handle); $i = 0; foreach ($files as $img) { if (!is_dir($dir . '/' . $img) && preg_match('/' . $type . '/', $img)) { $images[$i] = new stdClass; $images[$i]->name = $img; $images[$i]->folder = $folder; $i++; } } } return $images; } /** * Get sanitized folder * * @param \Joomla\Registry\Registry &$params module params objects * * @return mixed */ public static function getFolder(&$params) { $folder = $params->get('folder'); $LiveSite = JUri::base(); // If folder includes livesite info, remove if (StringHelper::strpos($folder, $LiveSite) === 0) { $folder = str_replace($LiveSite, '', $folder); } // If folder includes absolute path, remove if (StringHelper::strpos($folder, JPATH_SITE) === 0) { $folder = str_replace(JPATH_BASE, '', $folder); } return str_replace(array('\\', '/'), DIRECTORY_SEPARATOR, $folder); } } mod_random_image.php 0000644 00000001557 15116773527 0010564 0 ustar 00 <?php /** * @package Joomla.Site * @subpackage mod_random_image * * @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; // Include the random image functions only once JLoader::register('ModRandomImageHelper', __DIR__ . '/helper.php'); $link = $params->get('link'); $folder = ModRandomImageHelper::getFolder($params); $images = ModRandomImageHelper::getImages($params, $folder); if (!count($images)) { echo JText::_('MOD_RANDOM_IMAGE_NO_IMAGES'); return; } $image = ModRandomImageHelper::getRandomImage($params, $images); $moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'), ENT_COMPAT, 'UTF-8'); require JModuleHelper::getLayoutPath('mod_random_image', $params->get('layout', 'default')); mod_random_image.xml 0000644 00000004405 15116773527 0010570 0 ustar 00 <?xml version="1.0" encoding="utf-8"?> <extension type="module" version="3.1" client="site" method="upgrade"> <name>mod_random_image</name> <author>Joomla! Project</author> <creationDate>July 2006</creationDate> <copyright>Copyright (C) 2005 - 2020 Open Source Matters. All rights reserved.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_RANDOM_IMAGE_XML_DESCRIPTION</description> <files> <filename module="mod_random_image">mod_random_image.php</filename> <folder>tmpl</folder> <filename>helper.php</filename> </files> <languages> <language tag="en-GB">en-GB.mod_random_image.ini</language> <language tag="en-GB">en-GB.mod_random_image.sys.ini</language> </languages> <help key="JHELP_EXTENSIONS_MODULE_MANAGER_RANDOM_IMAGE" /> <config> <fields name="params"> <fieldset name="basic"> <field name="type" type="text" label="MOD_RANDOM_IMAGE_FIELD_TYPE_LABEL" description="MOD_RANDOM_IMAGE_FIELD_TYPE_DESC" default="jpg" /> <field name="folder" type="text" label="MOD_RANDOM_IMAGE_FIELD_FOLDER_LABEL" description="MOD_RANDOM_IMAGE_FIELD_FOLDER_DESC" validate="filePath" /> <field name="link" type="text" label="MOD_RANDOM_IMAGE_FIELD_LINK_LABEL" description="MOD_RANDOM_IMAGE_FIELD_LINK_DESC" /> <field name="width" type="number" label="MOD_RANDOM_IMAGE_FIELD_WIDTH_LABEL" description="MOD_RANDOM_IMAGE_FIELD_WIDTH_DESC" default="100" filter="integer" /> <field name="height" type="number" label="MOD_RANDOM_IMAGE_FIELD_HEIGHT_LABEL" description="MOD_RANDOM_IMAGE_FIELD_HEIGHT_DESC" filter="integer" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" description="JFIELD_ALT_MODULE_LAYOUT_DESC" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" description="COM_MODULES_FIELD_MODULECLASS_SFX_DESC" rows="3" /> </fieldset> </fields> </config> </extension> tmpl/default.php 0000644 00000001315 15116773527 0007673 0 ustar 00 <?php /** * @package Joomla.Site * @subpackage mod_random_image * * @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; ?> <div class="random-image<?php echo $moduleclass_sfx; ?>"> <?php if ($link) : ?> <a href="<?php echo htmlspecialchars($link, ENT_QUOTES, 'UTF-8'); ?>"> <?php endif; ?> <?php echo JHtml::_('image', $image->folder . '/' . htmlspecialchars($image->name, ENT_COMPAT, 'UTF-8'), htmlspecialchars($image->name, ENT_COMPAT, 'UTF-8'), array('width' => $image->width, 'height' => $image->height)); ?> <?php if ($link) : ?> </a> <?php endif; ?> </div>
| ver. 1.4 |
Github
|
.
| PHP 8.1.33 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка