| 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/brest/components/com_community/models/ |
Upload File : |
<?php
/**
* @copyright (C) 2013 iJoomla, Inc. - All rights reserved.
* @license GNU General Public License, version 2 (http://www.gnu.org/licenses/gpl-2.0.html)
* @author iJoomla.com <webmaster@ijoomla.com>
* @url https://www.jomsocial.com/license-agreement
* The PHP code portions are distributed under the GPL license. If not otherwise stated, all images, manuals, cascading style sheets, and included JavaScript *are NOT GPL, and are released under the IJOOMLA Proprietary Use License v1.0
* More info at https://www.jomsocial.com/license-agreement
*/
use Joomla\CMS\Factory;
use Joomla\CMS\Pagination\Pagination;
defined('_JEXEC') or die('Restricted access');
require_once ( JPATH_ROOT .'/components/com_community/models/models.php');
class CommunityModelBulletins extends JCCModel
{
/**
* Configuration data
*
* @var Pagination
**/
var $_pagination = '';
/**
* Configuration data
*
* @var object JPagination object
**/
var $total = '';
/**
* Constructor
*/
public function __construct()
{
parent::__construct();
$mainframe = Factory::getApplication();
$jinput = $mainframe->input;
// Get pagination request variables
$limit = ($mainframe->get('list_limit') == 0) ? 5 : $mainframe->get('list_limit');
$limitstart = $jinput->request->get('limitstart', 0, 'INT');
if(empty($limitstart))
{
$limitstart = $jinput->get('limitstart', 0, 'uint');
}
// In case limit has been changed, adjust it
$limitstart = ($limit != 0 ? (floor($limitstart / $limit) * $limit) : 0);
$this->setState('limit', $limit);
$this->setState('limitstart', $limitstart);
}
/**
* Method to retrieve a list of bulletins
*
* @param $id The id of the group if necessary
*
* @return $result An array of bulletins
**/
public function getBulletins( $groupId = null , $limit = 0 )
{
$db = $this->getDBO();
$where = ( !is_null($groupId) ) ? 'WHERE a.' . $db->quoteName('groupid') .'=' . $db->Quote( $groupId ) : '';
$limitSQL = '';
$limit = ($limit == 0) ? $this->getState('limit') : $limit;
$limitstart = $this->getState('limitstart');
$query = 'SELECT COUNT(*) '
. 'FROM ' . $db->quoteName( '#__community_groups_bulletins') . ' AS a '
. $where;
$db->setQuery( $query );
try {
$total = $db->loadResult();
} catch (Exception $e) {
Factory::getApplication()->enqueueMessage($e->getMessage(), 'error');
}
$this->total = $total;
if( empty($this->_pagination) )
{
$this->_pagination = new Pagination( $total , $limitstart , $limit);
$this->_pagination->setAdditionalUrlParam('groupid', $groupId);
}
$limitSQL .= ' LIMIT ' . $limitstart . ',' . $limit;
$query = 'SELECT * '
. 'FROM ' . $db->quoteName('#__community_groups_bulletins') . ' AS a '
. $where . ' '
. 'ORDER BY a.' . $db->quoteName('date') .' DESC'
. $limitSQL;
$db->setQuery( $query );
try {
$result = $db->loadObjectList();
} catch (Exception $e) {
Factory::getApplication()->enqueueMessage($e->getMessage(), 'error');
}
return $result;
}
/**
* Method to get a pagination object for the events
*
* @access public
* @return integer
*/
public function getPagination()
{
return $this->_pagination;
}
}