forked from blallo/rss-bridge
[GelbooruBridge] Fix bridge not getting tags correctly
Tags are embedded in the 'title' attribute instead of 'alt' as defined by the ancestor (DanbooruBridge). The 'title' attribute also contains statistics data ('score:...', 'rating:...') that is now filtered by a custom implementation of the 'getTags' function (elements that contain a colon are removed) Closes #560
This commit is contained in:
parent
9599f921a5
commit
fc0ae42450
1 changed files with 13 additions and 0 deletions
|
@ -10,6 +10,7 @@ class GelbooruBridge extends DanbooruBridge {
|
|||
|
||||
const PATHTODATA = '.thumb';
|
||||
const IDATTRIBUTE = 'id';
|
||||
const TAGATTRIBUTE = 'title';
|
||||
|
||||
const PIDBYPAGE = 63;
|
||||
|
||||
|
@ -19,4 +20,16 @@ class GelbooruBridge extends DanbooruBridge {
|
|||
. ($this->getInput('p') ? ($this->getInput('p') - 1) * static::PIDBYPAGE : '')
|
||||
. '&tags=' . urlencode($this->getInput('t'));
|
||||
}
|
||||
|
||||
protected function getTags($element){
|
||||
$tags = parent::getTags($element);
|
||||
$tags = explode(' ', $tags);
|
||||
|
||||
// Remove statistics from the tags list (identified by colon)
|
||||
foreach($tags as $key => $tag) {
|
||||
if(strpos($tag, ':') !== false) unset($tags[$key]);
|
||||
}
|
||||
|
||||
return implode(' ', $tags);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue