Configure the new TinyMCE to have almost the same buttons as the old one.
Configure the new TinyMCE to have almost the same buttons as the old one.

File last commit:

881a86f051f9
3cf3f8fd35f8
Show More
twitter-scheduled.php
45 lines | 1.3 KiB | text/x-php | PhpLexer
/ twitter-scheduled.php
<?php
require_once('include/admin.inc.php');
// First, the quick hack way. May become neccessary to parallelize later.
$tweets = $mtdb->getAll("SELECT username, password, text, status, twitter_post.id AS id
FROM twitter_post JOIN twitter_user
ON twitter_post.user = twitter_user.id
WHERE twitter_post.status = 'scheduled'
AND time >= NOW()
AND time < TIMESTAMPADD(" . RUN_INTERVAL . ", NOW())
");
// Check if we actually have any tweets. If not, bail.
if(count($tweets) === 0)
{
exit(0);
}
// There are tweets to post. Let's get to work.
foreach($tweets as $t)
{
// Lock the tweet
$mtdb->query("UPDATE twitter_post SET status = 'locked' WHERE id = ".(int)$t->id." AND status = 'scheduled'", false);
if(twitterpost($t->text, $t->username, $t->password))
{
// It worked!
adminlog("Scheduled tweet posted for user ".$t->username, MTS_TWITTER, MTA_ADD);
$t->status = 'success';
}
else
{
// Well, shit. Something went wrong. Log it.
adminlog("Error $ret_code posting scheduled tweet ".$t->id . ' with return value ' . $ret, MTS_TWITTER, MTA_ADD);
$t->status = 'error';
}
// Unlock tweet, update db.
$mtdb->query("UPDATE twitter_post SET status = '".mysqli_real_escape_string($mtdb->link, $t->status)."' WHERE status = 'locked' AND id = ".(int)$t->id, false);
}
?>