| Current Path : /home/megadansyp/www/components/com_eventgallery/library/factory/ |
| Current File : /home/megadansyp/www/components/com_eventgallery/library/factory/watermark.php |
<?php
/**
* @package Sven.Bluege
* @subpackage com_eventgallery
*
* @copyright Copyright (C) 2005 - 2019 Sven Bluege All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die();
class EventgalleryLibraryFactoryWatermark extends EventgalleryLibraryFactoryFactory
{
protected $_watermarks;
protected $_watermarks_published;
protected $_default_watermark;
/**
* Determines a Watermark by ID
*
* @param $id
* @return EventgalleryLibraryWatermark
*/
public function getWatermarkById($id) {
$sets = $this->getWatermarks(false);
if (isset($sets[$id]))
{
return $sets[$id];
}
return null;
}
/**
* Return all watermarks
*
* @param $publishedOnly
* @return array
*/
public function getWatermarks($publishedOnly) {
if ($this->_watermarks == null) {
$db = $this->db;
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__eventgallery_watermark');
$query->order('ordering');
$db->setQuery($query);
$items = $db->loadObjectList();
$this->_watermarks = array();
$this->_watermarks_published = array();
foreach ($items as $item) {
/**
* @var EventgalleryLibraryWatermark $itemObject
*/
$itemObject = new EventgalleryLibraryWatermark($item);
if ($itemObject->isPublished()) {
$this->_watermarks_published[$itemObject->getId()] = $itemObject;
}
$this->_watermarks[$itemObject->getId()] = $itemObject;
}
}
if ($publishedOnly) {
return $this->_watermarks_published;
} else {
return $this->_watermarks;
}
}
/**
* returns the default watermark. Might be unpublished
*
* @return EventgalleryLibraryWatermark|null
*/
public function getDefaultWatermark()
{
if ($this->_default_watermark == null) {
$db = $this->db;
$query = $db->getQuery(true);
$query->select('*');
$query->from('#__eventgallery_watermark');
$query->where($query->quoteName('default').'=1');
$query->order('ordering');
$db->setQuery($query);
$items = $db->loadObjectList();
if (count($items) == 0) {
return NULL;
}
$item = $items[0];
$this->_default_watermark = $this->getWatermarkById($item->id);
}
return $this->_default_watermark;
}
}