1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
rutube.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Main\UrlPreview\Parser;
4
5
use Bitrix\Main\UrlPreview\HtmlDocument;
6
use Bitrix\Main\UrlPreview\UrlPreview;
7
8
class
RuTube
extends
OpenGraph
9
{
10
public
function
handle
(
HtmlDocument
$document)
11
{
12
parent::handle($document);
13
14
// $video = $document->getExtraField('VIDEO');
15
// Rutube puts page URL instead of video URL to og:video
16
$video = (
17
$document->
getMetaContent
(
'og:video:secure_url'
)
18
?? $document->
getMetaContent
(
'og:video:url'
)
19
?? $document->
getMetaContent
(
'og:video'
)
20
??
''
21
);
22
23
if
(!empty($video) && $document->
getExtraField
(
'VIDEO_TYPE'
) ===
'text/html'
)
24
{
25
$width
= $document->
getExtraField
(
'VIDEO_WIDTH'
);
26
if
(!
$width
||
$width
> UrlPreview::IFRAME_MAX_WIDTH)
27
{
28
$width
= UrlPreview::IFRAME_MAX_WIDTH;
29
$document->
setExtraField
(
'VIDEO_WIDTH'
,
$width
);
30
}
31
$height = $document->
getExtraField
(
'VIDEO_HEIGHT'
);
32
if
(!$height || $height > UrlPreview::IFRAME_MAX_HEIGHT)
33
{
34
$height = UrlPreview::IFRAME_MAX_HEIGHT;
35
$document->
setExtraField
(
'VIDEO_HEIGHT'
, $height);
36
}
37
$iframe =
'<iframe src="'
.$video.
'" allowfullscreen="" width="'
.
$width
.
'" height="'
.$height.
'" frameborder="0"></iframe>'
;
38
$document->
setEmbed
($iframe);
39
}
40
}
41
}
Bitrix\Main\UrlPreview\HtmlDocument
Определения
htmldocument.php:13
Bitrix\Main\UrlPreview\HtmlDocument\getExtraField
getExtraField($fieldName)
Определения
htmldocument.php:246
Bitrix\Main\UrlPreview\HtmlDocument\setExtraField
setExtraField($fieldName, $fieldValue)
Определения
htmldocument.php:209
Bitrix\Main\UrlPreview\HtmlDocument\setEmbed
setEmbed($embed)
Определения
htmldocument.php:192
Bitrix\Main\UrlPreview\HtmlDocument\getMetaContent
getMetaContent($name)
Определения
htmldocument.php:368
Bitrix\Main\UrlPreview\Parser\OpenGraph
Определения
opengraph.php:9
Bitrix\Main\UrlPreview\Parser\RuTube
Определения
rutube.php:9
Bitrix\Main\UrlPreview\Parser\RuTube\handle
handle(HtmlDocument $document)
Определения
rutube.php:10
$width
$width
Определения
html.php:68
bitrix
modules
main
lib
urlpreview
parser
rutube.php
Создано системой
1.14.0