diff --git a/bridges/ReadComicsBridge.php b/bridges/ReadComicsBridge.php new file mode 100644 index 0000000..c1380d1 --- /dev/null +++ b/bridges/ReadComicsBridge.php @@ -0,0 +1,43 @@ +array( + 'name'=>'keywords, separated by semicolons', + 'exampleValue'=>'first list;second list;...', + 'required'=>true + ), + )); + + public function collectData(){ + + function parseDateTimestamp($element){ + $guessedDate = $element->find('span',0)->plaintext; + $guessedDate = strptime($guessedDate, '%d/%m/%Y'); + $timestamp = mktime(0, 0, 0, $guessedDate['tm_mon'] + 1, $guessedDate['tm_mday'], date('Y')); + + return $timestamp; + } + + $keywordsList = explode(";",$this->getInput('q')); + foreach($keywordsList as $keywords){ + $html = $this->getSimpleHTMLDOM(self::URI.'comic/'.rawurlencode($keywords)) + or $this->returnServerError('Could not request RCO.'); + + foreach($html->find('li') as $element) { + $item = array(); + $item['uri'] = $element->find('a.ch-name',0)->href; + $item['id'] = $item['uri']; + $item['timestamp'] = parseDateTimestamp($element); + $item['title'] = $element->find('a.ch-name',0)->plaintext; + if(isset($item['title'])) + $this->items[] = $item; + } + } + } +}