Файловый менеджер - Редактировать - /var/www/html/plugins/community/twitter/twitter/api_class.php
Ðазад
<?php /** * @copyright (C) 2013 iJoomla, Inc. - All rights reserved. * @license GNU General Public License, version 2 (http://www.gnu.org/licenses/gpl-2.0.html) * @author iJoomla.com <webmaster@ijoomla.com> * @url https://www.jomsocial.com/license-agreement * The PHP code portions are distributed under the GPL license. If not otherwise stated, all images, manuals, cascading style sheets, and included JavaScript *are NOT GPL, and are released under the IJOOMLA Proprietary Use License v1.0 * More info at https://www.jomsocial.com/license-agreement */ /** * Twitter interface class * @author Nov 26 2007 Nick Beam * Bugs, comments, questions: winkerbeam@gmail.com * http://rbrw.net -- http://tinydinosaur.com * * This is a simple interface to the Twitter API. * I've tried to keep as close as possible to the real API * calls (some had to be changed due to ambiguity), but all * of the arguments are as they are in the official docs. * * Usage: * $twitter = new Twitter("username", "password"); * $public_timeline_xml = $twitter->getPublicTimeline("xml"); * * Methods: * getPublicTimeline($format [, $since_id]) * getFriendsTimeline($format [, $id [, $since ]]) * getUserTimeline($format [, $id [, $count [, $since ]]]) * showStatus($format, $id) * updateStatus($status) * destroyStatus($format, $id) * getReplies($format [, $page ]) * getFriends($format [, $id ]) * getFollowers($format [, $lite ]) * getFeatured($format) * showUser($format [, $id [, $email ]]) * getMessages($format [, $since [, $since_id [, $page ]]]) * getSentMessages($format [, $since [, $since_id [, $page ]]]) * newMessage($format, $user, $text) * destroyMessage($format, $id) * createFriendship($format, $id) * destroyFriendship($format, $id) * verifyCredentials([$format]) * endSession() * getArchive($format [, $page ]) * getFavorites($format [, $id [, $page ]]) * createFavorite($format, $id) * destroyFavorite($format, $id) * lastStatusCode() * lastAPICall() */ defined('_JEXEC') or die('Restricted access'); if(!class_exists('Twitter')) { class Twitter { /* Username:password format string */ private $credentials; /* Contains the last HTTP status code returned */ private $http_status; /* Contains the last API call */ private $last_api_call; /* Twitter class constructor */ function Twitter($username, $password) { $this->credentials = sprintf("%s:%s", $username, $password); } function getPublicTimeline($format, $since_id = 0) { $api_call = sprintf("http://twitter.com/statuses/public_timeline.%s", $format); if ($since_id > 0) { $api_call .= sprintf("?since_id=%d", $since_id); } return $this->APICall($api_call); } function getFriendsTimeline($format, $id = NULL, $since = NULL) { if ($id != NULL) { $api_call = sprintf("http://twitter.com/statuses/friends_timeline/%s.%s", $id, $format); } else { $api_call = sprintf("http://twitter.com/statuses/friends_timeline.%s", $format); } if ($since != NULL) { $api_call .= sprintf("?since=%s", urlencode($since)); } return $this->APICall($api_call, true); } function getUserTimeline($format, $id = NULL, $count = 20, $since = NULL) { if ($id != NULL) { $api_call = sprintf("http://twitter.com/statuses/user_timeline/%s.%s", $id, $format); } else { $api_call = sprintf("http://twitter.com/statuses/user_timeline.%s", $format); } if ($count != 20) { $api_call .= sprintf("?count=%d", $count); } if ($since != NULL) { $api_call .= sprintf("%ssince=%s", (JString::strpos($api_call, "?count=") === false) ? "?" : "&", urlencode($since)); } return $this->APICall($api_call, true); } function showStatus($format, $id) { $api_call = sprintf("http://twitter.com/statuses/show/%d.%s", $id, $format); return $this->APICall($api_call); } function updateStatus($status) { $status = urlencode(stripslashes(urldecode($status))); $api_call = sprintf("http://twitter.com/statuses/update.xml?status=%s", $status); return $this->APICall($api_call, true, true); } function getReplies($format, $page = 0) { $api_call = sprintf("http://twitter.com/statuses/replies.%s", $format); if ($page) { $api_call .= sprintf("?page=%d", $page); } return $this->APICall($api_call, true); } function destroyStatus($format, $id) { $api_call = sprintf("http://twitter.com/statuses/destroy/%d.%s", $id, $format); return $this->APICall($api_call, true); } function getFriends($format, $id = NULL) { // take care of the id parameter if ($id != NULL) { $api_call = sprintf("http://twitter.com/statuses/friends/%s.%s", $id, $format); } else { $api_call = sprintf("http://twitter.com/statuses/friends.%s", $format); } return $this->APICall($api_call, true); } function getFollowers($format, $lite = NULL) { $api_call = sprintf("http://twitter.com/statuses/followers.%s%s", $format, ($lite) ? "?lite=true" : NULL); return $this->APICall($api_call, true); } function getFeatured($format) { $api_call = sprintf("http://twitter.com/statuses/featured.%s", $format); return $this->APICall($api_call); } function showUser($format, $id, $email = NULL) { if ($email == NULL) { $api_call = sprintf("http://twitter.com/users/show/%s.%s", $id, $format); } else { $api_call = sprintf("http://twitter.com/users/show.xml?email=%s", $email); } return $this->APICall($api_call, true); } function getMessages($format, $since = NULL, $since_id = 0, $page = 1) { $api_call = sprintf("http://twitter.com/direct_messages.%s", $format); if ($since != NULL) { $api_call .= sprintf("?since=%s", urlencode($since)); } if ($since_id > 0) { $api_call .= sprintf("%ssince_id=%d", (JString::strpos($api_call, "?since") === false) ? "?" : "&", $since_id); } if ($page > 1) { $api_call .= sprintf("%spage=%d", (JString::strpos($api_call, "?since") === false) ? "?" : "&", $page); } return $this->APICall($api_call, true); } function getSentMessages($format, $since = NULL, $since_id = 0, $page = 1) { $api_call = sprintf("http://twitter.com/direct_messages/sent.%s", $format); if ($since != NULL) { $api_call .= sprintf("?since=%s", urlencode($since)); } if ($since_id > 0) { $api_call .= sprintf("%ssince_id=%d", (JString::strpos($api_call, "?since") === false) ? "?" : "&", $since_id); } if ($page > 1) { $api_call .= sprintf("%spage=%d", (JString::strpos($api_call, "?since") === false) ? "?" : "&", $page); } return $this->APICall($api_call, true); } function newMessage($format, $user, $text) { $text = urlencode(stripslashes(urldecode($text))); $api_call = sprintf("http://twitter.com/direct_messages/new.%s?user=%s&text=%s", $format, $user, $text); return $this->APICall($api_call, true, true); } function destroyMessage($format, $id) { $api_call = sprintf("http://twitter.com/direct_messages/destroy/%s.%s", $id, $format); return $this->APICall($api_call, true); } function createFriendship($format, $id) { $api_call = sprintf("http://twitter.com/friendships/create/%s.%s", $format, $id); return $this->APICall($api_call, true); } function destroyFriendship($format, $id) { $api_call = sprintf("http://twitter.com/friendships/destroy/%s.%s", $format, $id); return $this->APICall($api_call, true); } function verifyCredentials($format = NULL) { $api_call = sprintf("http://twitter.com/account/verify_credentials%s", ($format != NULL) ? sprintf(".%s", $format) : NULL); return $this->APICall($api_call, true); } function endSession() { $api_call = "http://twitter.com/account/end_session"; return $this->APICall($api_call, true); } function getArchive($format, $page = 1) { $api_call = sprintf("http://twitter.com/account/archive.%s", $format); if ($page > 1) { $api_call .= sprintf("?page=%d", $page); } return $this->APICall($api_call, true); } function getFavorites($format, $id = NULL, $page = 1) { if ($id == NULL) { $api_call = sprintf("http://twitter.com/favourings.%s", $format); } else { $api_call = sprintf("http://twitter.com/favourings/%s.%s", $id, $format); } if ($page > 1) { $api_call .= sprintf("?page=%d", $page); } return $this->APICall($api_call, true); } function createFavorite($format, $id) { $api_call = sprintf("http://twitter.com/favourings/create/%d.%s", $id, $format); return $this->APICall($api_call, true); } function destroyFavorite($format, $id) { $api_call = sprintf("http://twitter.com/favourings/destroy/%d.%s", $id, $format); return $this->APICall($api_call, true); } private function APICall($api_url, $require_credentials = false, $http_post = false) { $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_HTTPHEADER, array('Expect:')); curl_setopt($curl_handle, CURLOPT_URL, $api_url); if ($require_credentials) { curl_setopt($curl_handle, CURLOPT_USERPWD, $this->credentials); } if ($http_post) { curl_setopt($curl_handle, CURLOPT_POST, true); } curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, TRUE); $twitter_data = curl_exec($curl_handle); $this->http_status = curl_getinfo($curl_handle, CURLINFO_HTTP_CODE); $this->last_api_call = $api_url; curl_close($curl_handle); return $twitter_data; } function lastStatusCode() { return $this->http_status; } function lastAPICall() { return $this->last_api_call; } } } ?>
| ver. 1.1 | |
.
| PHP 8.4.18 | Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ Ñтраницы: 0 |
proxy
|
phpinfo
|
ÐаÑтройка