| Current Path : /var/www/administrator/components/com_formmaker/models/ |
| Current File : /var/www/administrator/components/com_formmaker/models/element.php |
<?php
/**
* @package Form Maker
* @author Web-Dorado
* @copyright (C) 2011 Web-Dorado. All rights reserved.
* @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
**/
defined('_JEXEC') or die('Restricted access');
jimport( 'joomla.application.component.helper');
jimport( 'joomla.application.component.model');
/**
* Content Component Article Model
*
* @package Joomla
* @subpackage Content
* @since 1.5
*/
class formmakerModelElement extends JModelList
{
/**
* Content data in category array
*
* @var array
*/
var $_list = null;
var $_page = null;
/**
* Method to get content article data for the frontpage
*
* @since 1.5
*/
function getList()
{
$mainframe = JFactory::getApplication();
if (!empty($this->_list)) {
return $this->_list;
}
// Initialize variables
$db = $this->getDBO();
$filter = null;
// Get some variables from the request
$option = JRequest::getCmd( 'option' );
$filter_order = $mainframe->getUserStateFromRequest('articleelement.filter_order', 'filter_order', 'id', 'cmd');
$filter_order_Dir = $mainframe->getUserStateFromRequest('articleelement.filter_order_Dir', 'filter_order_Dir', '', 'word');
$limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int');
$limitstart = $mainframe->getUserStateFromRequest('articleelement.limitstart', 'limitstart', 0, 'int');
$search = $mainframe->getUserStateFromRequest('articleelement.search', 'search', '', 'string');
$search = JString::strtolower($search);
//$where[] = "c.state >= 0";
//$where[] = "c.state != -2";
$orderby='';
if ($filter_order == 'id' ){
$orderby = ' ORDER BY id '. $filter_order_Dir;
} else if($filter_order != '' ) {
$orderby = ' ORDER BY '.
$filter_order .' '. $filter_order_Dir .', id';
}
$all = 1;
// Keyword filter
if ($search) {
$where[] = 'LOWER( title ) LIKE '.$db->Quote( '%'.$db->escape( $search, true ).'%', false );
$where = (count($where) ? ' WHERE '.implode(' AND ', $where) : '');
}
else
$where="";
// Build the where clause of the content record query
//$where = (count($where) ? ' WHERE '.implode(' AND ', $where) : '');
// Get the total number of records
$query = 'SELECT COUNT(*)' .
' FROM #__formmaker AS c' .
$where;
$db->setQuery($query);
$total = $db->loadResult();
// Create the pagination object
jimport('joomla.html.pagination');
$this->_page = new JPagination($total, $limitstart, $limit);
// Get the forms
$query = 'SELECT *' .' FROM #__formmaker'.$where. $orderby;
$db->setQuery($query, $this->_page->limitstart, $this->_page->limit);
$this->_list = $db->loadObjectList();
// If there is a db query error, throw a HTTP 500 and exit
if ($db->getErrorNum()) {
JError::raiseError( 500, $db->stderr() );
return false;
}
return $this->_list;
}
function getPagination()
{
if (is_null($this->_list) || is_null($this->_page)) {
$this->getList();
}
return $this->_page;
}
}
?>