Вход Регистрация
Файл: sngine-v2.8/Script/includes/libs/Embed/Providers/Sailthru.php
Строк: 41
<?php

namespace EmbedProviders;

use 
EmbedAdaptersAdapter;

/**
 * Provider to get the data from the Sailthru data elements in the HTML
 */
class Sailthru extends Provider
{
    
/**
     * {@inheritdoc}
     */
    
public function __construct(Adapter $adapter)
    {
        
parent::__construct($adapter);

        if (!(
$html $adapter->getResponse()->getHtmlContent())) {
            return;
        }

        foreach (
$html->getElementsByTagName('meta') as $meta) {
            
$name trim(strtolower($meta->getAttribute('name')));
            
$value $meta->getAttribute('content');

            if (empty(
$name) || empty($value)) {
                continue;
            }

            if (
strpos($name'sailthru.') === 0) {
                
$this->bag->set(substr($name9), $value);
            }
        }
    }

    
/**
     * {@inheritdoc}
     */
    
public function getImagesUrls()
    {
        
$images = [];

        foreach (
$this->bag->getKeys() as $name) {
            if (
strpos($name'image') !== false) {
                
$images[] = $this->bag->get($name);
            }
        }

        return 
$this->normalizeUrls($images);
    }

    
/**
     * {@inheritdoc}
     */
    
public function getAuthorName()
    {
        return 
$this->bag->get('author');
    }

    
/**
     * {@inheritdoc}
     */
    
public function getPublishedTime()
    {
        return 
$this->bag->get('date');
    }
}
Онлайн: 1
Реклама