fix shorturl_api so it works even when 3rd party is down.

darcs-hash:20081129012446-099f7-e2d0398dc22fc3e83398920f46da6cf1691544b3.gz
This commit is contained in:
millette 2008-11-28 20:24:46 -05:00
parent 5878647c55
commit 70c90b50b0
1 changed files with 9 additions and 4 deletions

View File

@ -76,7 +76,9 @@ class LilUrl extends ShortUrlApi {
$data['longurl'] = $url;
$response = $this->http_post($data);
if (!$response) return $url;
$x = simplexml_load_string($response)->body->p[0]->a->attributes();
$y = @simplexml_load_string($response);
if (!isset($y->body)) return $url;
$x = $y->body->p[0]->a->attributes();
if (isset($x['href'])) return $x['href'];
return $url;
}
@ -92,7 +94,9 @@ class PtitUrl extends ShortUrlApi {
$response = $this->http_get($url);
if (!$response) return $url;
$response = $this->tidy($response);
$xml = simplexml_load_string($response)->body->center->table->tr->td->pre->a->attributes();
$y = @simplexml_load_string($response);
if (!isset($y->body)) return $url;
$xml = $y->body->center->table->tr->td->pre->a->attributes();
if (isset($xml['href'])) return $xml['href'];
return $url;
}
@ -107,10 +111,11 @@ class TightUrl extends ShortUrlApi {
$response = $this->http_get($url);
if (!$response) return $url;
$response = $this->tidy($response);
$xml = simplexml_load_string($response)->body->p[0]->code[0]->a->attributes();
$y = @simplexml_load_string($response);
if (!isset($y->body)) return $url;
$xml = $y->body->p[0]->code[0]->a->attributes();
if (isset($xml['href'])) return $xml['href'];
return $url;
}
}