From 6b97ca29918d943b399f268e7bb1511f348a25ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre=20Mazi=C3=A8re?= Date: Sun, 28 Aug 2016 12:14:36 +0200 Subject: [PATCH] [BooruprojectBridge] implement getURI() and code simplifications MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Pierre Mazière --- bridges/BooruprojectBridge.php | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/bridges/BooruprojectBridge.php b/bridges/BooruprojectBridge.php index 66e25545..eb3f5ac5 100644 --- a/bridges/BooruprojectBridge.php +++ b/bridges/BooruprojectBridge.php @@ -1,7 +1,6 @@ 'instance (required)', 'required'=>true ), - 'p'=>array('name'=>'page'), + 'p'=>array( + 'name'=>'page', + 'type'=>'number' + ), 't'=>array('name'=>'tags') )); + function getURI(){ + return 'http://'.$this->getInput('i').'.booru.org/'; + } + public function collectData(){ - $page = 0; $tags = ''; - if (!empty($this->getInput('p'))) { - $page = (int)preg_replace("/[^0-9]/",'', $this->getInput('p')); - $page = $page - 1; - $page = $page * 20; - } - if (!empty($this->getInput('t'))) { - $tags = '&tags='.urlencode($this->getInput('t')); - } - if (empty($this->getInput('i'))) { - $this->returnServerError('Please enter a ***.booru.org instance.'); - } - $html = $this->getSimpleHTMLDOM("http://".$this->getInput('i').".booru.org/index.php?page=post&s=list&pid=".$page.$tags) or $this->returnServerError('Could not request Booruproject.'); + $html = $this->getSimpleHTMLDOM( + $this->getURI().'index.php?page=post&s=list' + .'&pid='.($this->getInput('p')?($this->getInput('p') -1)*20:'') + .'&tags='.urlencode($this->getInput('t')) + ) or $this->returnServerError('Could not request Booruprojec.'); foreach($html->find('div[class=content] span') as $element) { $item = array(); - $item['uri'] = 'http://'.$this->getInput('i').'.booru.org/'.$element->find('a', 0)->href; + $item['uri'] = $this->getURI().$element->find('a', 0)->href; $item['postid'] = (int)preg_replace("/[^0-9]/",'', $element->find('a', 0)->getAttribute('id')); $item['timestamp'] = time(); $item['tags'] = $element->find('img', 0)->getAttribute('title');