Skip to content

Commit ddbef74

Browse files
committed
fixes
1 parent 349f3e4 commit ddbef74

File tree

12 files changed

+23
-62
lines changed

12 files changed

+23
-62
lines changed

src/Adapters/Facebook.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ protected function initProviders(Request $request)
8383

8484
if (($id = $this->getId($request->getStartingUrl()))) {
8585
if ($this->options['facebookAccessToken']) {
86-
$api = new Request('https://graph.facebook.com/'.$id);
86+
$api = $request->createSubRequest('https://graph.facebook.com/'.$id);
8787
$api->setParameter('access_token', $this->options['facebookAccessToken']);
8888

8989
if ($json = $api->getJsonContent()) {

src/Adapters/Github.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ protected function initProviders(Request $request)
2929
parent::initProviders($request);
3030

3131
$this->api = new Provider();
32-
$api = new Request($request->getUrl().'.json');
32+
$api = $request->createSubRequest($request->getUrl().'.json');
3333

3434
if (($json = $api->getJsonContent())) {
3535
$this->api->set($json);

src/Adapters/Soundcloud.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ protected function initProviders(Request $request)
3030

3131
$this->api = new Provider();
3232

33-
$api = new Request('http://api.soundcloud.com/resolve.json');
33+
$api = $request->createSubRequest('http://api.soundcloud.com/resolve.json');
3434
$api->setParameter('client_id', isset($this->options['soundcloudClientId']) ? $this->options['soundcloudClientId'] : 'YOUR_CLIENT_ID');
3535
$api->setParameter('url', $request->getUrl());
3636

src/Adapters/Webpage.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ protected function initProviders(Request $request)
3535
}
3636

3737
if ($this->providers['Html']->get('oembed')) {
38-
$request = new Request($request->getAbsolute($this->providers['Html']->get('oembed')));
38+
$request = $request->CreateSubRequest($request->getAbsolute($this->providers['Html']->get('oembed')));
3939
$request->setParameter($this->options['oembedParameters']);
4040
$this->providers['OEmbed'] = new Providers\OEmbed($request);
4141
} elseif (($oEmbed = Providers\OEmbedImplementations::create($request, $this->options['oembedParameters']))) {

src/Embed.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public static function create($request, array $options = null)
1717
$resolverClass = isset($options['resolver']['class']) ? $options['resolver']['class'] : null;
1818
$resolverOptions = isset($options['resolver']['options']) ? $options['resolver']['options'] : null;
1919

20-
$request = new Request($request, $resolverClass, $resolverOptions);
20+
$request = new Request(new Url($request), $resolverClass, $resolverOptions);
2121
} elseif (!($request instanceof Request)) {
2222
throw new \InvalidArgumentException("Embed::create only accepts instances of Embed\\Request or strings");
2323
}
@@ -27,20 +27,20 @@ public static function create($request, array $options = null)
2727
}
2828

2929
//If is a file use File Adapter
30-
if (Adapters\File::check($request->url)) {
30+
if (Adapters\File::check($request)) {
3131
return new Adapters\File($request, $options);
3232
}
3333

3434
//Search the adapter using the domain
3535
$class = 'Embed\\Adapters\\'.str_replace(' ', '', ucwords(strtolower(str_replace('-', ' ', $request->url->getDomain()))));
3636

3737
if (class_exists($class)) {
38-
if (call_user_func(array($class, 'check'), $request->url)) {
38+
if (call_user_func(array($class, 'check'), $request)) {
3939
return new $class($request, $options);
4040
}
4141
}
4242

43-
if (Adapters\Webpage::check($request->url)) {
43+
if (Adapters\Webpage::check($request)) {
4444
return new Adapters\Webpage($request, $options);
4545
}
4646

src/Providers/Embedly.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -655,7 +655,7 @@ public static function create(Request $request, $api_key)
655655
}
656656

657657
if ($request->match(static::$patterns)) {
658-
$endPoint = new Request('http://api.embed.ly/1/oembed');
658+
$endPoint = $request->createSubRequest('http://api.embed.ly/1/oembed');
659659

660660
$endPoint->setParameter(array(
661661
'url' => $request->getUrl(),

src/Providers/Facebook.php

Lines changed: 3 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88

99
class Facebook extends Provider
1010
{
11-
private $init = false;
12-
private $url;
1311

1412
/**
1513
* Constructor
@@ -18,43 +16,18 @@ class Facebook extends Provider
1816
*/
1917
public function __construct(Request $request)
2018
{
21-
$this->url = $request->getUrl();
22-
}
23-
24-
/**
25-
* Init the facebook request data (call only on demand)
26-
*/
27-
private function init()
28-
{
29-
$this->init = true;
30-
31-
$graph = new Request('https://graph.facebook.com/fql');
19+
$graph = $request->createSubRequest('https://graph.facebook.com/fql');
3220
$graph->setParameter('q', 'SELECT comments_fbid FROM link_stat WHERE url = "'.$this->url.'"');
3321

34-
if (!$graph->isValid()) {
35-
return false;
36-
}
37-
38-
if (($info = $graph->getJsonContent()) && isset($info['data'][0]['comments_fbid'])) {
39-
$graph = new Request('https://graph.facebook.com/'.$info['data'][0]['comments_fbid']);
22+
if ($graph->isValid() && ($info = $graph->getJsonContent()) && isset($info['data'][0]['comments_fbid'])) {
23+
$graph = $request->createSubRequest('https://graph.facebook.com/'.$info['data'][0]['comments_fbid']);
4024

4125
if ($json = $graph->getJsonContent()) {
4226
$this->set($json);
4327
}
4428
}
4529
}
4630

47-
/**
48-
* {@inheritDoc}
49-
*/
50-
public function get($name = null, $subname = null)
51-
{
52-
if ($this->init === false) {
53-
$this->init();
54-
}
55-
56-
return parent::get($name, $subname);
57-
}
5831

5932
/**
6033
* Gets the title

src/Providers/OEmbed.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ class OEmbed extends Provider
1616
*/
1717
public function __construct(Request $request)
1818
{
19-
$format = (($request->getExtension() === 'xml') || ($request->getParameter('format') === 'xml')) ? 'xml' : 'json';
19+
$format = (($request->url->getExtension() === 'xml') || ($request->url->getParameter('format') === 'xml')) ? 'xml' : 'json';
2020

2121
switch ($format) {
2222
case 'json':

src/Providers/OEmbedImplementations.php

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,21 @@
55
*/
66
namespace Embed\Providers;
77

8-
use Embed\Url;
98
use Embed\Request;
109

1110
class OEmbedImplementations extends Provider
1211
{
1312
/**
1413
* Creates a new OEmbed instance
1514
*
16-
* @param Url $url
15+
* @param Request $request
1716
*
1817
* @return null|OEmbed
1918
*/
20-
public static function create(Url $url, array $extraParameters = array())
19+
public static function create(Request $request, array $extraParameters = array())
2120
{
2221
//Search the oembed provider using the domain
23-
$class = 'Embed\\Providers\\OEmbed\\'.str_replace(' ', '', ucwords(strtolower(str_replace('-', ' ', $url->getDomain()))));
22+
$class = 'Embed\\Providers\\OEmbed\\'.str_replace(' ', '', ucwords(strtolower(str_replace('-', ' ', $request->url->getDomain()))));
2423

2524
if (class_exists($class)) {
2625
$settings = array(
@@ -29,18 +28,18 @@ public static function create(Url $url, array $extraParameters = array())
2928
'params' => $class::getParams(),
3029
);
3130

32-
if ($url->match($settings['patterns'])) {
33-
$endPoint = new Request($settings['endPoint']);
31+
if ($request->match($settings['patterns'])) {
32+
$endPoint = $request->createSubRequest($settings['endPoint']);
3433

3534
if ($extraParameters) {
36-
$endPoint->setParameter($extraParameters);
35+
$endPoint->url->setParameter($extraParameters);
3736
}
3837

3938
if (empty($settings['params']) === false) {
40-
$endPoint->setParameter($settings['params']);
39+
$endPoint->url->setParameter($settings['params']);
4140
}
4241

43-
$endPoint->setParameter('url', $url->getUrl());
42+
$endPoint->url->setParameter('url', $request->getUrl());
4443

4544
return new OEmbed($endPoint);
4645
}

src/Request.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ public function getUrl()
128128
*/
129129
public function match($patterns)
130130
{
131-
return static::urlMatches($this->getStartingUrl(), $patterns) || static::urlMatches($this->getUrl(), $patterns);
131+
return Url::urlMatches($this->getStartingUrl(), $patterns) || Url::urlMatches($this->getUrl(), $patterns);
132132
}
133133

134134
/**

0 commit comments

Comments
 (0)