diff --git a/actions/othersettings.php b/actions/othersettings.php index 4e28a94f80..d4a27db200 100644 --- a/actions/othersettings.php +++ b/actions/othersettings.php @@ -45,6 +45,7 @@ class OthersettingsAction extends SettingsAction { 'ur1.ca' => 'ur1.ca (free)', '2tu.ru' => '2tu.ru (free)', 'ptiturl.com' => 'ptiturl.com', + 'bit.ly' => 'bit.ly', 'tinyurl.com' => 'tinyurl.com', 'is.gd' => 'is.gd', 'snipr.com' => 'snipr.com', diff --git a/lib/util.php b/lib/util.php index 634140fef5..4f93d572e4 100644 --- a/lib/util.php +++ b/lib/util.php @@ -777,7 +777,12 @@ function common_shorten_link($long_url) { $short_url_service = new PtitUrl; $short_url = $short_url_service->shorten($long_url); break; - + + case 'bit.ly': + curl_setopt($curlh, CURLOPT_URL, 'http://bit.ly/api?method=shorten&long_url='.urlencode($long_url)); + $short_url = current(json_decode(curl_exec($curlh))->results)->hashUrl; + break; + case 'is.gd': curl_setopt($curlh, CURLOPT_URL, 'http://is.gd/api.php?longurl='.urlencode($long_url)); $short_url = curl_exec($curlh);