Spade
Mini Shell
| Directory:~$ /home/lmsyaran/public_html/joomla4/ |
| [Home] [System Details] [Kill Me] |
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>