コード例 #1
4
function hs_authenticate_tumblr()
{
    $consumerKey = "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW";
    // Put your consumer key here.
    $consumerSecret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
    // Put your consumer secret here.
    $client = new Tumblr\API\Client($consumerKey, $consumerSecret);
    $requestHandler = $client->getRequestHandler();
    $requestHandler->setBaseUrl("https://www.tumblr.com/");
    // If we are visiting the first time
    if (!$_GET["oauth_verifier"]) {
        // Grab the oauth token.
        $resp = $requestHandler->request("POST", "oauth/request_token", array());
        $out = $result = $resp->body;
        $data = array();
        parse_str($out, $data);
        // Tell the user where to go.
        echo '<a href="https://www.tumblr.com/oauth/authorize?oauth_token=' . $data["oauth_token"] . '"> GO </a>';
        $_SESSION["t"] = $data["oauth_token"];
        $_SESSION["s"] = $data["oauth_token_secret"];
    } else {
        $verifier = $_GET["oauth_verifier"];
        // Use the stored tokens.
        $client->setToken($_SESSION["t"], $_SESSION["s"]);
        // To grab the access tokens.
        $resp = $requestHandler->request("POST", "oauth/access_token", array("oauth_verifier" => $verifier));
        $out = $result = $resp->body;
        $data = array();
        parse_str($out, $data);
        // And print out our new keys we got back.
        $token = $data["oauth_token"];
        $secret = $data["oauth_token_secret"];
        echo "token: " . $token . "<br/>secret: " . $secret;
        $client = new Tumblr\API\Client($consumerKey, $consumerSecret, $token, $secret);
        $info = $client->getUserInfo();
        echo "<br/><br/>congrats " . $info->user->name . "!";
    }
}
コード例 #2
0
 function CreateLinkPost()
 {
     $config = (include "/config.php");
     $client = new Tumblr\API\Client($config['tumblr_consumer_key'], $config['tumblr_consumer_secret']);
     $client->setToken($_SESSION['tumblr_token'], $_SESSION['tumblr_secret']);
     if (!isset($_POST['url']) || $_POST['url'] == "") {
         return "Missing required param: url";
         exit;
     }
     if (!isset($_POST['blogName']) || $_POST['blogName'] == "") {
         return "Missing required param: blogName";
         exit;
     }
     $blogName = $_POST['blogName'];
     $data = array("type" => "link", "url" => $_POST['url']);
     if (isset($_POST['description']) && $_POST['description'] != "") {
         $data['description'] = FilterText($_POST['description']);
     }
     if (isset($_POST['thumbnail']) && $_POST['thumbnail'] != "") {
         $data['thumbnail'] = $_POST['thumbnail'];
     }
     if (isset($_POST['author']) && $_POST['author'] != "") {
         $data['author'] = FilterText($_POST['author']);
     }
     try {
         $client->createPost($blogName, $data);
     } catch (Exception $ex) {
         return "That blog does not exist";
     }
     return "success";
 }
コード例 #3
0
 function GetUserBlogs()
 {
     $config = (include "/config.php");
     $client = new Tumblr\API\Client($config['tumblr_consumer_key'], $config['tumblr_consumer_secret']);
     $client->setToken($_SESSION['tumblr_token'], $_SESSION['tumblr_secret']);
     $r = array();
     foreach ($client->getUserInfo()->user->blogs as $blog) {
         array_push($r, $blog->name);
     }
     return $r;
 }
コード例 #4
0
 function HandleResponse()
 {
     $config = (include "/config.php");
     $client = new Tumblr\API\Client($config['tumblr_consumer_key'], $config['tumblr_consumer_secret']);
     $requestHandler = $client->getRequestHandler();
     $requestHandler->setBaseUrl('https://www.tumblr.com/');
     $client->setToken($_SESSION['tumblr_temp_token'], $_SESSION['tumblr_temp_secret']);
     // exchange the verifier for the keys
     $verifier = $_GET['oauth_verifier'];
     // exchange the verifier for the keys
     $resp = $requestHandler->request('POST', 'oauth/access_token', array('oauth_verifier' => $verifier));
     $out = $result = $resp->body;
     $data = array();
     parse_str($out, $data);
     // and print out our new keys
     $token = $data['oauth_token'];
     $secret = $data['oauth_token_secret'];
     $_SESSION['tumblr_token'] = $token;
     $_SESSION['tumblr_secret'] = $secret;
     echo "<script>window.close();</script>";
     die;
 }