mirror of
https://github.com/friendica/friendica
synced 2024-11-09 23:42:53 +00:00
modified: library/slinky.php Added a custom YourLS shortener to the available shorteners
This commit is contained in:
parent
f73b6ed7a1
commit
955022e7dc
1 changed files with 31 additions and 1 deletions
|
@ -153,7 +153,7 @@ class Slinky {
|
|||
public function set_service_from_url( $url = false ) {
|
||||
if ( !$url )
|
||||
$url = $this->url;
|
||||
|
||||
|
||||
$host = parse_url( $url, PHP_URL_HOST );
|
||||
switch ( str_replace( 'www.', '', $host ) ) {
|
||||
case 'bit.ly':
|
||||
|
@ -181,6 +181,11 @@ class Slinky {
|
|||
$this->service = new Slinky_Fongs();
|
||||
break;
|
||||
}
|
||||
case $this->get( 'yourls-url' ):
|
||||
if ( class_exists( 'Slinky_YourLS' ) ) {
|
||||
$this->service = new Slinky_YourLS();
|
||||
break;
|
||||
}
|
||||
case 'micurl.com':
|
||||
if ( class_exists( 'Slinky_Micurl' ) ) {
|
||||
$this->service = new Slinky_Micurl();
|
||||
|
@ -574,6 +579,31 @@ class Slinky_Fongs extends Slinky_Service {
|
|||
}
|
||||
}
|
||||
|
||||
// yourls
|
||||
class Slinky_YourLS extends Slinky_Service {
|
||||
function url_is_short( $url ) {
|
||||
return stristr( $url, 'shit.li/' );
|
||||
}
|
||||
|
||||
function url_is_long( $url ) {
|
||||
return !stristr( $url, 'shit.li/' );
|
||||
}
|
||||
|
||||
function make_short( $url ) {
|
||||
echo $this->get( 'username' );
|
||||
$use_ssl = $this->get( 'ssl' );
|
||||
if ( $use_ssl )
|
||||
$use_ssl = 's';
|
||||
else
|
||||
$use_ssl = '';
|
||||
$result = $this->url_get( 'http'. $use_ssl . '://' . $this->get( 'yourls-url' ) . '/yourls-api.php?username=' . $this->get( 'username' ) . '&password=' . $this->get( 'password' ) . '&action=shorturl&format=simple&url=' . urlencode( $url ) );
|
||||
if ( 1 != $result && 2 != $result )
|
||||
return $result;
|
||||
else
|
||||
return $url;
|
||||
}
|
||||
}
|
||||
|
||||
// Micu.rl
|
||||
class Slinky_Micurl extends Slinky_Service {
|
||||
function url_is_short( $url ) {
|
||||
|
|
Loading…
Reference in a new issue