File: /var/www/vhosts/pgkdistribution.com.au/citisolar.com.au/tmp/testimonials/admin/models/prod.php
<?php
/**
* @Copyright Freestyle Joomla (C) 2010
* @license GNU/GPL http://www.gnu.org/copyleft/gpl.html
*
* This file is part of Freestyle Testimonials
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
**/
?>
<?php
// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport('joomla.application.component.model');
class FstsModelProd extends JModel
{
function __construct()
{
parent::__construct();
$array = JRequest::getVar('cid', 0, '', 'array');
$this->setId((int)$array[0]);
}
function setId($id)
{
$this->_id = $id;
$this->_data = null;
}
function &getData()
{
if (empty( $this->_data )) {
$query = ' SELECT * FROM #__fst_prod '.
' WHERE id = '.$this->_db->getEscaped($this->_id);
$this->_db->setQuery( $query );
$this->_data = $this->_db->loadObject();
}
if (!$this->_data) {
$this->_data = new stdClass();
$this->_data->id = 0;
$this->_data->title = null;
$this->_data->description = null;
$this->_data->ordering = 0;
$this->_data->image = null;
$this->_data->extratext = null;
$this->_data->inkb = 1;
$this->_data->insupport = 1;
$this->_data->intest = 1;
$this->_data->published = 1;
$this->published = 1;
}
return $this->_data;
}
function store($data)
{
$row =& $this->getTable();
if (!$row->bind($data)) {
$this->setError($this->_db->getErrorMsg());
return false;
}
if (!$row->check()) {
$this->setError($this->_db->getErrorMsg());
return false;
}
if (!$row->store()) {
$this->setError($this->_db->getErrorMsg());
return false;
}
return true;
}
function delete()
{
$cids = JRequest::getVar( 'cid', array(0), 'post', 'array' );
$row =& $this->getTable();
if (count( $cids )) {
foreach($cids as $cid) {
if (!$row->delete( $cid )) {
$this->setError($this->_db->getErrorMsg());
return false;
}
}
}
return true;
}
function unpublish()
{
$cids = JRequest::getVar( 'cid', array(0), 'post', 'array' );
$table =& $this->getTable();
return $table->publish($cids, 0);
}
function publish()
{
$cids = JRequest::getVar( 'cid', array(0), 'post', 'array' );
$table =& $this->getTable();
return $table->publish($cids, 1);
}
function changeorder($direction)
{
$cid = JRequest::getVar( 'cid', array(), 'post', 'array' );
if (isset( $cid[0] ))
{
$row =& $this->getTable();
$row->load( (int) $cid[0] );
$row->move($direction);
return true;
}
return false;
}
function saveorder()
{
$cid = JRequest::getVar( 'cid', array(0), 'post', 'array' );
$order = JRequest::getVar( 'order', array (0), 'post', 'array' );
$total = count($cid);
JArrayHelper::toInteger($cid, array(0));
JArrayHelper::toInteger($order, array(0));
// Instantiate an article table object
$row = & $this->getTable();
// Update the ordering for items in the cid array
for ($i = 0; $i < $total; $i ++)
{
$row->load( (int) $cid[$i] );
if ($row->ordering != $order[$i]) {
$row->ordering = $order[$i];
if (!$row->store()) {
JError::raiseError( 500, $db->getErrorMsg() );
return false;
}
}
}
$row->reorder();
$row->reset();
return true;
}
}