<?php
/**
* @version $Id$
* @package DJ-ImageSlider
* @subpackage DJ-ImageSlider Component
* @copyright Copyright (C) 2017 DJ-Extensions.com, All rights reserved.
* @license http://www.gnu.org/licenses GNU/GPL
* @author url: http://dj-extensions.com
* @author email [email protected]
* @developer Szymon Woronowski - [email protected]
*
*
* DJ-ImageSlider 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.
*
* DJ-ImageSlider 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 DJ-ImageSlider. If not, see <http://www.gnu.org/licenses/>.
*
*/
// no direct access
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Factory;
use Joomla\CMS\Table\Table;
use Joomla\Registry\Registry;
use Joomla\CMS\Filter\OutputFilter;
class DJImageSliderTableItem extends Table
{
public function __construct(&$db) {
parent::__construct('#__djimageslider', 'id', $db);
}
function bind($array, $ignore = '')
{
if (isset($array['params']) && is_array($array['params'])) {
$registry = new Registry();
$registry->loadArray($array['params']);
$array['params'] = (string)$registry;
}
if(empty($array['alias'])) {
$array['alias'] = $array['title'];
}
$array['alias'] = OutputFilter::stringURLSafe($array['alias']);
if(trim(str_replace('-','',$array['alias'])) == '') {
$array['alias'] = Factory::getDate()->format("Y-m-d-H-i-s");
}
return parent::bind($array, $ignore);
}
public function store($updateNulls = false)
{
$isNew = ($this->id==0 ? true : false);
$success = parent::store($updateNulls);
if($isNew && $success && Factory::getApplication()->input->get('view') == 'item') {
$this->reorder('catid = '.$this->catid);
}
return $success;
}
}