[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 PATHTODATA = '.thumb';
|
||||||
const IDATTRIBUTE = 'id';
|
const IDATTRIBUTE = 'id';
|
||||||
|
const TAGATTRIBUTE = 'title';
|
||||||
|
|
||||||
const PIDBYPAGE = 63;
|
const PIDBYPAGE = 63;
|
||||||
|
|
||||||
|
@ -19,4 +20,16 @@ class GelbooruBridge extends DanbooruBridge {
|
||||||
. ($this->getInput('p') ? ($this->getInput('p') - 1) * static::PIDBYPAGE : '')
|
. ($this->getInput('p') ? ($this->getInput('p') - 1) * static::PIDBYPAGE : '')
|
||||||
. '&tags=' . urlencode($this->getInput('t'));
|
. '&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