3 require_once '../../env.inc.php';
4 require_once 'checks.php';
6 oauthconsumer_CheckUser();
8 $f_token_id = getStringFromPost('tokens');
9 $f_resource_url = getStringFromPost('resource_url');
10 $f_http_method = getStringFromPost('http');
11 $f_post_data = getStringFromPost('post_data');
13 if(!$f_post_data) $f_post_data = NULL;
15 $access_token = OAuthAccessToken::get_access_token($f_token_id);
16 $resource = new OAuthResource($f_resource_url, $access_token->get_provider_id(), $f_http_method);
17 $provider = OAuthProvider::get_provider($access_token->get_provider_id());
19 if(substr($f_resource_url, -5, 5)==".json") $f_post_data = json_decode($f_post_data, TRUE);
21 $transaction = new OAuthTransaction($provider, $access_token, $resource, $f_post_data);
22 $response = $transaction->send_request();
24 //twitter, identi.ca rest api endpoints
25 $timeline_resources = array("public_timeline",
34 $url_prefix = array("http://api.twitter.com/1/statuses/",
35 "http://identi.ca/api/statuses/");
37 if(substr($f_resource_url, -5, 5)==".json") {
38 $response_array = json_decode($response, TRUE);
39 foreach ($url_prefix as $prefix) {
40 foreach($timeline_resources as $suffix) {
41 if($f_resource_url==$prefix.$suffix.".json") {
43 $title = str_replace("_", " ", $suffix);
44 echo "<p>".$title."</p><ol>";
45 foreach($response_array as $tweet) {
46 if(array_key_exists("text", $tweet)) {
47 echo "<li>".$tweet["text"]."</li>";
49 print_r($response_array);
58 if(($f_resource_url=="http://api.twitter.com/1/statuses/update.json")||($f_resource_url=="http://identi.ca/api/statuses/update.json")) {
59 if(array_key_exists("text", $response_array)) {
60 echo $HTML->feedback("Tweet: '".$response_array["text"]." posted successfully");
62 print_r($response_array);
65 print_r($response_array);
74 echo util_make_link('/plugins/'.$pluginname.'/providers.php', _('OAuth Providers')). ' <br />';
75 echo util_make_link('/plugins/'.$pluginname.'/get_access_token.php', _('Get Access tokens')).'<br /> ';
76 echo util_make_link('/plugins/'.$pluginname.'/access_tokens.php', _('Access tokens')).'<br /> ';
78 site_user_footer(array());