<?php /* * This file is part of Contao. * * (c) Leo Feyer * * @license LGPL-3.0-or-later */ namespace vonRotenberg\ModalBundle\Model; use Contao\Date; use Contao\Model; use Contao\Model\Collection; /** * Reads and writes image sizes * * @property string|integer $id * @property string|integer $tstamp * @property string $title * @property string $modal_title * @property string|integer $delay * @property string|boolean $show_once * @property string|integer $start * @property string|integer $stop * * @method static ModalModel|null findById($id, array $opt=array()) * @method static ModalModel|null findByPk($id, array $opt=array()) * @method static ModalModel|null findOneBy($col, $val, array $opt=array()) * @method static ModalModel|null findOneByTstamp($val, array $opt=array()) * @method static ModalModel|null findOneByTitle($val, array $opt=array()) * @method static ModalModel|null findOneByModalTitle($val, array $opt=array()) * @method static ModalModel|null findOneByDelay($val, array $opt=array()) * @method static ModalModel|null findOneByShowOnce($val, array $opt=array()) * @method static ModalModel|null findOneByPublished($val, array $opt=array()) * @method static ModalModel|null findOneByStart($val, array $opt=array()) * @method static ModalModel|null findOneByStop($val, array $opt=array()) * * @method static Collection|ModalModel[]|ModalModel|null findByTstamp($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByTitle($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByModalTitle($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByDelay($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByShowOnce($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByPublished($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByStart($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findByStop($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findMultipleByIds($val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findBy($col, $val, array $opt=array()) * @method static Collection|ModalModel[]|ModalModel|null findAll(array $opt=array()) * * @method static integer countById($id, array $opt=array()) * @method static integer countByTstamp($val, array $opt=array()) * @method static integer countByTitle($val, array $opt=array()) * @method static integer countByModalTitle($val, array $opt=array()) * @method static integer countByDelay($val, array $opt=array()) * @method static integer countByShowOnce($val, array $opt=array()) * @method static integer countByPublished($val, array $opt=array()) * @method static integer countByStart($val, array $opt=array()) * @method static integer countByStop($val, array $opt=array()) */ class ModalModel extends Model { /** * Table name * @var string */ protected static $strTable = 'tl_vr_modal'; /** * Find a published modal by its ID * * @param integer $intId The modal ID * @param array $arrOptions An optional options array * * @return ModalModel|null The model or null if there is no modal */ public static function findPublishedById($intId, array $arrOptions=array()) { $t = static::$strTable; $arrColumns = array("$t.id=?"); if (!static::isPreviewMode($arrOptions)) { $time = Date::floorToMinute(); $arrColumns[] = "$t.published='1' AND ($t.start='' OR $t.start<='$time') AND ($t.stop='' OR $t.stop>'$time')"; } return static::findOneBy($arrColumns, $intId, $arrOptions); } } class_alias(ModalModel::class, 'ModalModel');