Files
wordpress/wp-includes/SimplePie/src/Caption.php
Sergey Biryukov 5a82c86d00 External Libraries: Update the SimplePie library to version 1.9.0.
References:
* [https://github.com/simplepie/simplepie/releases/tag/1.9.0 SimplePie 1.9.0 release notes]
* [https://github.com/simplepie/simplepie/compare/1.8.1...1.9.0 Full list of changes in SimplePie 1.9.0]

Follow-up to [59141], [60490].

Props swissspidy, TobiasBg, SergeyBiryukov.
Fixes #63961.
Built from https://develop.svn.wordpress.org/trunk@60771


git-svn-id: http://core.svn.wordpress.org/trunk@60107 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2025-09-16 22:47:31 +00:00

163 lines
3.0 KiB
PHP

<?php
// SPDX-FileCopyrightText: 2004-2023 Ryan Parman, Sam Sneddon, Ryan McCue
// SPDX-License-Identifier: BSD-3-Clause
declare(strict_types=1);
namespace SimplePie;
/**
* Handles `<media:text>` captions as defined in Media RSS.
*
* Used by {@see \SimplePie\Enclosure::get_caption()} and {@see \SimplePie\Enclosure::get_captions()}
*
* This class can be overloaded with {@see \SimplePie\SimplePie::set_caption_class()}
*/
class Caption
{
/**
* Content type
*
* @var ?string
* @see get_type()
*/
public $type;
/**
* Language
*
* @var ?string
* @see get_language()
*/
public $lang;
/**
* Start time
*
* @var ?string
* @see get_starttime()
*/
public $startTime;
/**
* End time
*
* @var ?string
* @see get_endtime()
*/
public $endTime;
/**
* Caption text
*
* @var ?string
* @see get_text()
*/
public $text;
/**
* Constructor, used to input the data
*
* For documentation on all the parameters, see the corresponding
* properties and their accessors
*/
public function __construct(
?string $type = null,
?string $lang = null,
?string $startTime = null,
?string $endTime = null,
?string $text = null
) {
$this->type = $type;
$this->lang = $lang;
$this->startTime = $startTime;
$this->endTime = $endTime;
$this->text = $text;
}
/**
* String-ified version
*
* @return string
*/
public function __toString()
{
// There is no $this->data here
return md5(serialize($this));
}
/**
* Get the end time
*
* @return string|null Time in the format 'hh:mm:ss.SSS'
*/
public function get_endtime()
{
if ($this->endTime !== null) {
return $this->endTime;
}
return null;
}
/**
* Get the language
*
* @link http://tools.ietf.org/html/rfc3066
* @return string|null Language code as per RFC 3066
*/
public function get_language()
{
if ($this->lang !== null) {
return $this->lang;
}
return null;
}
/**
* Get the start time
*
* @return string|null Time in the format 'hh:mm:ss.SSS'
*/
public function get_starttime()
{
if ($this->startTime !== null) {
return $this->startTime;
}
return null;
}
/**
* Get the text of the caption
*
* @return string|null
*/
public function get_text()
{
if ($this->text !== null) {
return $this->text;
}
return null;
}
/**
* Get the content type (not MIME type)
*
* @return string|null Either 'text' or 'html'
*/
public function get_type()
{
if ($this->type !== null) {
return $this->type;
}
return null;
}
}
class_alias('SimplePie\Caption', 'SimplePie_Caption');