/** * Fill $items of links in page * @param X_Page_ItemList_PItem $items */ public function menuLinks(X_Page_ItemList_PItem $items, $id) { $bookmark = new Application_Model_Bookmark(); Application_Model_BookmarksMapper::i()->find($id, $bookmark); // invalid pageid! if ($bookmark->isNew()) { return; } $page = X_PageParser_Page::getPage($bookmark->getUrl(), new X_PageParser_Parser_HosterLinks($this->helpers()->hoster())); $loader = $page->getLoader(); if ($loader instanceof X_PageParser_Loader_Http || $loader instanceof X_PageParser_Loader_HttpAuthRequired) { $http = $loader->getHttpClient()->setConfig(array('maxredirects' => $this->config('request.maxredirects', 10), 'timeout' => $this->config('request.timeout', 25))); if ($bookmark->getUa()) { X_Debug::i("Setting User-Agent..."); $http->setHeaders(array("User-Agent: {$bookmark->getUa()}")); } if ($bookmark->getCookies()) { X_Debug::i("Setting Cookies..."); $http->setHeaders("Cookie", $bookmark->getCookies()); } } $links = $page->getParsed(); foreach ($links as $i => $link) { /* @var $bookmark Application_Model_Bookmark */ $item = new X_Page_Item_PItem("{$this->getId()}-{$bookmark->getId()}-{$i}", "{$link['label']} [{$link['hoster']->getId()}]"); $item->setIcon("/images/icons/hosters/{$link['hoster']->getId()}.png")->setType(X_Page_Item_PItem::TYPE_ELEMENT)->setCustom(__CLASS__ . ':location', "{$bookmark->getId()}/{$link['url']}")->setLink(array('l' => X_Env::encode("{$bookmark->getId()}/{$link['url']}"), 'action' => 'mode'), 'default', false); $items->append($item); } }
private function preparePageLoader(X_PageParser_Page $page) { $loader = $page->getLoader(); if ($loader instanceof X_PageParser_Loader_Http || $loader instanceof X_PageParser_Loader_HttpAuthRequired) { $http = $loader->getHttpClient()->setConfig(array('maxredirects' => $this->config('request.maxredirects', 10), 'timeout' => $this->config('request.timeout', 25))); $http->setHeaders(array('User-Agent' => 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11')); } }
private function preparePageLoader(X_PageParser_Page $page) { $loader = $page->getLoader(); if ($loader instanceof X_PageParser_Loader_Http || $loader instanceof X_PageParser_Loader_HttpAuthRequired) { $http = $loader->getHttpClient()->setConfig(array('maxredirects' => $this->config('request.maxredirects', 10), 'timeout' => $this->config('request.timeout', 25))); $http->setHeaders(array($this->config('hide.useragent', false) ? 'User-Agent: vlc-shares/' . X_VlcShares::VERSION . ' hulu/' . self::VERSION : 'User-Agent: Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20101019 Firefox/4.0.1')); } }