| Server IP : 54.36.91.62 / Your IP : 216.73.217.112 Web Server : Apache System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : coopiak ( 151928) PHP Version : 8.3.23 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/coopiak/amisdesseniors-fr/plugins/system/nrframework/NRFramework/Notices/Notices/ |
Upload File : |
<?php
/**
* @author Tassos Marinos <info@tassos.gr>
* @link https://www.tassos.gr
* @copyright Copyright © 2024 Tassos All Rights Reserved
* @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
*/
namespace Tassos\Framework\Notices\Notices;
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
use Tassos\Framework\Functions;
use Tassos\Framework\Extension;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Session\Session;
class Outdated extends Notice
{
/**
* How old the extension needs to be to be defined as "outdated".
*
* @var int
*/
private $oudated_notice_days_old = 120;
protected $notice_payload = [
'type' => 'warning',
'class' => 'outdated'
];
/**
* Notice title.
*
* @return string
*/
protected function getTitle()
{
return sprintf(Text::_('NR_EXTENSION_IS_OUTDATED'), $this->extension_name);
}
/**
* Notice description.
*
* @return string
*/
protected function getDescription()
{
return sprintf(Text::_('NR_OUTDATED_EXTENSION'), $this->extension_name, $this->oudated_notice_days_old);
}
/**
* Notice actions.
*
* @return string
*/
protected function getActions()
{
return '<a href="' . Uri::base() . 'index.php?option=com_installer&task=update.find&' . Session::getFormToken() . '=1" class="tf-notice-btn info">' . Text::_('NR_UPDATE_NOW') . '</a>';
}
/**
* Whether the notice can run.
*
* @return string
*/
protected function canRun()
{
// If cookie exists, its been hidden
if ($this->factory->getCookie('tfNoticeHideOutdatedNotice_' . $this->payload['ext_element']) === 'true')
{
return false;
}
if (!Extension::isOutdated($this->payload['ext_element'], $this->oudated_notice_days_old))
{
return false;
}
return true;
}
}