|
|
<?php
|
|
|
|
|
|
function twitterpost($message, $user=TWITTER_USER, $password=TWITTER_PASS)
|
|
|
{
|
|
|
global $mtdb, $info, $error;
|
|
|
if( $user == '' ) {
|
|
|
# preserve existing twitterpost(message) style posting until OAuth has been vetted.
|
|
|
$user = TWITTER_USER;
|
|
|
$curl_handle = curl_init();
|
|
|
curl_setopt($curl_handle, CURLOPT_URL, TWITTER_HOST);
|
|
|
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
|
|
|
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
|
|
|
curl_setopt($curl_handle, CURLOPT_POST, 1);
|
|
|
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=".urlencode($message));
|
|
|
curl_setopt($curl_handle, CURLOPT_USERPWD, urlencode($user).":".urlencode($password));
|
|
|
|
|
|
$buffer = curl_exec($curl_handle);
|
|
|
curl_close($curl_handle);
|
|
|
|
|
|
if(empty($buffer))
|
|
|
{
|
|
|
adminlog("Twitter post failed for user $user!", MTS_TWITTER, MTA_ADD);
|
|
|
}
|
|
|
return !empty($buffer);
|
|
|
|
|
|
} else {
|
|
|
# OAuth Mode
|
|
|
$row = $mtdb->getRow( sprintf('SELECT id, username, oauth_token, oauth_token_secret FROM twitter_user WHERE username="%s"', mysqli_real_escape_string($mtdb->link, $user)));
|
|
|
|
|
|
$username = $row->username;
|
|
|
$oauth_token = $row->oauth_token;
|
|
|
$oauth_token_secret = $row->oauth_token_secret;
|
|
|
|
|
|
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $oauth_token, $oauth_token_secret);
|
|
|
|
|
|
$parameters = array('status' => $message );
|
|
|
$status = $connection->post('statuses/update', $parameters);
|
|
|
|
|
|
switch( $connection->http_code ) {
|
|
|
case 200:
|
|
|
adminlog("Twitter post succeeded for user $username!", MTS_TWITTER, MTA_ADD);
|
|
|
return true;
|
|
|
default:
|
|
|
adminlog("Twitter post failed for user $username!", MTS_TWITTER, MTA_ADD);
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
function setOAuthTokens($userid,$oauth_token,$oauth_token_secret, $username) {
|
|
|
global $mtdb;
|
|
|
$id = (int)$userid;
|
|
|
if( $mtdb->query( sprintf('UPDATE twitter_user SET oauth_token="%s", oauth_token_secret="%s", username="%s" WHERE id=%d', mysql_real_escape_string($oauth_token), mysql_real_escape_string($oauth_token_secret), mysql_real_escape_string($username), $id )) )
|
|
|
return true;
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
?>
|
|
|
|