Пример #1
0
function unshorten_url($url)
{
    //global $queryj;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HEADER, 1);
    curl_setopt($ch, CURLOPT_NOBODY, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    $out = curl_exec($ch);
    $real_url = $url;
    //default.. (if no redirect)
    if (preg_match("/location: (.*)/i", $out, $redirect)) {
        $real_url = $redirect[1];
    }
    if (strstr($real_url, "bit.ly")) {
        //the redirect is another shortened url
        $real_url = unshorten_url($real_url);
    }
    return $real_url;
    /**/
}
Пример #2
0
function postToTwitter($message, $mediaURL = null)
{
    $tag = str_replace(' ', '', SYSTEM_SITE_NAME . SYSTEM_YEAR);
    $message = $message . ' #' . $tag;
    if (strlen($message) > 140) {
        return false;
    }
    $connection = new TwitterOAuth(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET, TWITTER_ACCESS_TOKEN, TWITTER_ACCESS_TOKEN_SECRET);
    $params = ['status' => $message];
    if ($mediaURL) {
        $mediaURL = unshorten_url($mediaURL);
        $media = $connection->upload('media/upload', ['media' => $mediaURL]);
        if ($media) {
            $params['media_ids'] = $media->media_id_string;
        }
    }
    return $connection->post("statuses/update", $params);
}