Spade

Mini Shell

Directory:~$ /home/lmsyaran/public_html/joomla4/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/public_html/joomla4/mod_articles_popular.tar

helper.php000064400000006117151161233500006536 0ustar00<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_articles_popular
 *
 * @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;

JLoader::register('ContentHelperRoute', JPATH_SITE .
'/components/com_content/helpers/route.php');

JModelLegacy::addIncludePath(JPATH_SITE .
'/components/com_content/models', 'ContentModel');

/**
 * Helper for mod_articles_popular
 *
 * @since  1.6
 */
abstract class ModArticlesPopularHelper
{
	/**
	 * Get a list of popular articles from the articles model
	 *
	 * @param   \Joomla\Registry\Registry  &$params  object holding the
models parameters
	 *
	 * @return mixed
	 */
	public static function getList(&$params)
	{
		// Get an instance of the generic articles model
		$model = JModelLegacy::getInstance('Articles',
'ContentModel', array('ignore_request' => true));

		// Set application parameters in model
		$app = JFactory::getApplication();
		$appParams = $app->getParams();
		$model->setState('params', $appParams);

		$model->setState('list.start', 0);
		$model->setState('filter.published', 1);

		// Set the filters based on the module params
		$model->setState('list.limit', (int)
$params->get('count', 5));
		$model->setState('filter.featured',
$params->get('show_front', 1) == 1 ? 'show' :
'hide');

		// This module does not use tags data
		$model->setState('load_tags', false);

		// Access filter
		$access =
!JComponentHelper::getParams('com_content')->get('show_noauth');
		$authorised =
JAccess::getAuthorisedViewLevels(JFactory::getUser()->get('id'));
		$model->setState('filter.access', $access);

		// Category filter
		$model->setState('filter.category_id',
$params->get('catid', array()));

		// Date filter
		$date_filtering = $params->get('date_filtering',
'off');

		if ($date_filtering !== 'off')
		{
			$model->setState('filter.date_filtering', $date_filtering);
			$model->setState('filter.date_field',
$params->get('date_field', 'a.created'));
			$model->setState('filter.start_date_range',
$params->get('start_date_range', '1000-01-01
00:00:00'));
			$model->setState('filter.end_date_range',
$params->get('end_date_range', '9999-12-31
23:59:59'));
			$model->setState('filter.relative_date',
$params->get('relative_date', 30));
		}

		// Filter by language
		$model->setState('filter.language',
$app->getLanguageFilter());

		// Ordering
		$model->setState('list.ordering', 'a.hits');
		$model->setState('list.direction', 'DESC');

		$items = $model->getItems();

		foreach ($items as &$item)
		{
			$item->slug = $item->id . ':' . $item->alias;

			/** @deprecated Catslug is deprecated, use catid instead. 4.0 */
			$item->catslug = $item->catid . ':' .
$item->category_alias;

			if ($access || in_array($item->access, $authorised))
			{
				// We know that user has the privilege to view the article
				$item->link =
JRoute::_(ContentHelperRoute::getArticleRoute($item->slug,
$item->catid, $item->language));
			}
			else
			{
				$item->link =
JRoute::_('index.php?option=com_users&view=login');
			}
		}

		return $items;
	}
}
mod_articles_popular.php000064400000001173151161233500011463
0ustar00<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_articles_popular
 *
 * @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 popular functions only once
JLoader::register('ModArticlesPopularHelper', __DIR__ .
'/helper.php');

$list = ModArticlesPopularHelper::getList($params);
$moduleclass_sfx =
htmlspecialchars($params->get('moduleclass_sfx'), ENT_COMPAT,
'UTF-8');

require JModuleHelper::getLayoutPath('mod_articles_popular',
$params->get('layout', 'default'));
mod_articles_popular.xml000064400000011035151161233500011472
0ustar00<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.1"
client="site" method="upgrade">
	<name>mod_articles_popular</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_POPULAR_XML_DESCRIPTION</description>
	<files>
		<filename
module="mod_articles_popular">mod_articles_popular.php</filename>
		<folder>tmpl</folder>
		<filename>helper.php</filename>
	</files>
	<languages>
		<language
tag="en-GB">en-GB.mod_articles_popular.ini</language>
		<language
tag="en-GB">en-GB.mod_articles_popular.sys.ini</language>
	</languages>
	<help key="JHELP_EXTENSIONS_MODULE_MANAGER_MOST_READ" />
	<config>
		<fields name="params">
			<fieldset name="basic">
				<field
					name="catid"
					type="category"
					label="JCATEGORY"
					description="MOD_POPULAR_FIELD_CATEGORY_DESC"
					extension="com_content"
					multiple="true"
					filter="int_array"
				/>

				<field
					name="count"
					type="number"
					label="MOD_POPULAR_FIELD_COUNT_LABEL"
					description="MOD_POPULAR_FIELD_COUNT_DESC"
					default="5"
					filter="integer"
				/>

				<field
					name="show_front"
					type="radio"
					label="MOD_POPULAR_FIELD_FEATURED_LABEL"
					description="MOD_POPULAR_FIELD_FEATURED_DESC"
					class="btn-group btn-group-yesno"
					default="1"
					filter="integer"
					>
					<option value="1">JSHOW</option>
					<option value="0">JHIDE</option>
				</field>

				<field
					name="basicspacer1"
					type="spacer"
					hr="true"
				/>

				<field
					name="date_filtering"
					type="list"
					label="MOD_POPULAR_FIELD_DATEFILTERING_LABEL"
					description="MOD_POPULAR_FIELD_DATEFILTERING_DESC"
					default="off"
					validate="options"
					>
					<option
value="off">MOD_POPULAR_OPTION_OFF_VALUE</option>
					<option
value="range">MOD_POPULAR_OPTION_DATERANGE_VALUE</option>
					<option
value="relative">MOD_POPULAR_OPTION_RELATIVEDAY_VALUE</option>
				</field>

				<field
					name="date_field"
					type="list"
					label="MOD_POPULAR_FIELD_DATEFIELD_LABEL"
					description="MOD_POPULAR_FIELD_DATEFIELD_DESC"
					default="a.created"
					showon="date_filtering:range,relative"
					validate="options"
					>
					<option
value="a.created">MOD_POPULAR_OPTION_CREATED_VALUE</option>
					<option
value="a.modified">MOD_POPULAR_OPTION_MODIFIED_VALUE</option>
					<option
value="a.publish_up">MOD_POPULAR_OPTION_STARTPUBLISHING_VALUE</option>
				</field>

				<field
					name="start_date_range"
					type="calendar"
					label="MOD_POPULAR_FIELD_STARTDATE_LABEL"
					description="MOD_POPULAR_FIELD_STARTDATE_DESC"
					translateformat="true"
					showtime="true"
					size="22"
					filter="user_utc"
					showon="date_filtering:range"
				/>

				<field
					name="end_date_range"
					type="calendar"
					label="MOD_POPULAR_FIELD_ENDDATE_LABEL"
					description="MOD_POPULAR_FIELD_ENDDATE_DESC"
					translateformat="true"
					showtime="true"
					size="22"
					filter="user_utc"
					showon="date_filtering:range"
				/>

				<field
					name="relative_date"
					type="number"
					label="MOD_POPULAR_FIELD_RELATIVEDATE_LABEL"
					description="MOD_POPULAR_FIELD_RELATIVEDATE_DESC"
					default="30"
					filter="integer"
					showon="date_filtering:relative"
				/>
			</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"
				/>

				<field
					name="cache"
					type="list"
					label="COM_MODULES_FIELD_CACHING_LABEL"
					description="COM_MODULES_FIELD_CACHING_DESC"
					default="1"
					filter="integer"
					>
					<option value="1">JGLOBAL_USE_GLOBAL</option>
					<option
value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option>
				</field>

				<field
					name="cache_time"
					type="number"
					label="COM_MODULES_FIELD_CACHE_TIME_LABEL"
					description="COM_MODULES_FIELD_CACHE_TIME_DESC"
					default="900"
					filter="integer"
				/>

				<field
					name="cachemode"
					type="hidden"
					default="static"
					>
					<option value="static"></option>
				</field>

			</fieldset>
		</fields>
	</config>
</extension>
tmpl/default.php000064400000001125151161233500007651 0ustar00<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_articles_popular
 *
 * @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;
?>
<ul class="mostread<?php echo $moduleclass_sfx; ?>
mod-list">
<?php foreach ($list as $item) : ?>
	<li itemscope itemtype="https://schema.org/Article">
		<a href="<?php echo $item->link; ?>"
itemprop="url">
			<span itemprop="name">
				<?php echo $item->title; ?>
			</span>
		</a>
	</li>
<?php endforeach; ?>
</ul>