aboutsummaryrefslogtreecommitdiff
path: root/bridges/Shimmie2Bridge.php
blob: 0a87d65eb5be93a8827b836aca67c0b1b80fe1e0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php

class Shimmie2Bridge extends DanbooruBridge
{
    const NAME = 'Shimmie v2';
    const URI = 'https://shimmie.shishnet.org/';
    const DESCRIPTION = 'Returns images from given page';

    const PATHTODATA = '.shm-thumb-link';
    const IDATTRIBUTE = 'data-post-id';

    protected function getFullURI()
    {
        return $this->getURI()
        . 'post/list/'
        . $this->getInput('t')
        . '/'
        . $this->getInput('p');
    }

    protected function getItemFromElement($element)
    {
        $item = [];
        $item['uri'] = $this->getURI() . $element->href;
        $item['id'] = (int)preg_replace('/[^0-9]/', '', $element->getAttribute(static::IDATTRIBUTE));
        $item['timestamp'] = time();
        $thumbnailUri = $this->getURI() . $element->find('img', 0)->src;
        $item['categories'] = explode(' ', $element->getAttribute('data-tags'));
        $item['title'] = $this->getName() . ' | ' . $item['id'];
        $item['content'] = '<a href="'
        . $item['uri']
        . '"><img src="'
        . $thumbnailUri
        . '" /></a><br>Tags: '
        . $element->getAttribute('data-tags');

        return $item;
    }
}