X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=scripts%2Fenjitqueuehandler.php;h=08f733b07c5856041f5264642008463e7978a4d9;hb=10df75f9a074f2987b3525cd70a129bd26972ebb;hp=8538ae09a2c561aaac2cfb80751c96dc1b5521b7;hpb=2c65a44e2c13cc30bc004a38ab8ca1d74ef4f040;p=quix0rs-gnu-social.git diff --git a/scripts/enjitqueuehandler.php b/scripts/enjitqueuehandler.php index 8538ae09a2..08f733b07c 100755 --- a/scripts/enjitqueuehandler.php +++ b/scripts/enjitqueuehandler.php @@ -1,8 +1,8 @@ #!/usr/bin/env php . */ -# Abort if called from a web server -if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { - print "This script must be run from the command line\n"; - exit(); -} - define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); -define('LACONICA', true); -require_once(INSTALLDIR . '/lib/common.php'); -require_once(INSTALLDIR . '/lib/mail.php'); -require_once(INSTALLDIR . '/lib/queuehandler.php'); +$shortoptions = 'i::'; +$longoptions = array('id::'); + +$helptext = <<log(LOG_INFO, "Starting EnjitQueueHandler"); $this->log(LOG_INFO, "Broadcasting to ".common_config('enjit', 'apiurl')); - return true; - } + return true; + } - function handle_notice($notice) { + function handle_notice($notice) + { - $profile = Profile::staticGet($notice->profile_id); + $profile = Profile::staticGet($notice->profile_id); $this->log(LOG_INFO, "Posting Notice ".$notice->id." from ".$profile->nickname); @@ -56,29 +63,28 @@ class EnjitQueueHandler extends QueueHandler { return "skipped"; } - # # Build an Atom message from the notice # - $noticeurl = common_local_url('shownotice', array('notice' => $notice->id)); - $msg = $profile->nickname . ': ' . $notice->content; - - $atom = "\n"; - $atom .= "".common_config('enjit','source')."\n"; - $atom .= "\n"; - $atom .= "" . $profile->nickname . " - " . common_config('site', 'name') . "\n"; - $atom .= "\n"; - $atom .= " $profile->nickname)) . "'/>\n"; - $atom .= "" . $profile->nickname . "\n"; - $atom .= "" . common_profile_avatar_url($profile, AVATAR_PROFILE_SIZE) . "\n"; - $atom .= "\n"; - $atom .= "" . htmlspecialchars($msg) . "\n"; - $atom .= "" . htmlspecialchars($msg) . "\n"; - $atom .= "\n"; - $atom .= "". $notice->uri . "\n"; - $atom .= "".common_date_w3dtf($notice->created)."\n"; - $atom .= "".common_date_w3dtf($notice->modified)."\n"; - $atom .= "\n"; + $noticeurl = common_local_url('shownotice', array('notice' => $notice->id)); + $msg = $profile->nickname . ': ' . $notice->content; + + $atom = "\n"; + $atom .= "".common_config('enjit','source')."\n"; + $atom .= "\n"; + $atom .= "" . $profile->nickname . " - " . common_config('site', 'name') . "\n"; + $atom .= "\n"; + $atom .= " $profile->nickname)) . "'/>\n"; + $atom .= "" . $profile->nickname . "\n"; + $atom .= "" . $profile->avatarUrl(AVATAR_PROFILE_SIZE) . "\n"; + $atom .= "\n"; + $atom .= "" . htmlspecialchars($msg) . "\n"; + $atom .= "" . htmlspecialchars($msg) . "\n"; + $atom .= "\n"; + $atom .= "". $notice->uri . "\n"; + $atom .= "".common_date_w3dtf($notice->created)."\n"; + $atom .= "".common_date_w3dtf($notice->modified)."\n"; + $atom .= "\n"; $url = common_config('enjit', 'apiurl') . "/submit/". common_config('enjit','apikey'); $data = "msg=$atom"; @@ -86,43 +92,48 @@ class EnjitQueueHandler extends QueueHandler { # # POST the message to $config['enjit']['apiurl'] # - $ch = curl_init(); + $ch = curl_init(); + + curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_URL, $url); - - curl_setopt($ch, CURLOPT_HEADER, 1); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); - curl_setopt($ch, CURLOPT_POST, 1) ; - curl_setopt($ch, CURLOPT_POSTFIELDS, $data); + curl_setopt($ch, CURLOPT_HEADER, 1); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($ch, CURLOPT_POST, 1) ; + curl_setopt($ch, CURLOPT_POSTFIELDS, $data); # SSL and Debugging options # - # curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); - # curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); - # curl_setopt($ch, CURLOPT_VERBOSE, 1); + # curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); + # curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); + # curl_setopt($ch, CURLOPT_VERBOSE, 1); - $result = curl_exec($ch); + $result = curl_exec($ch); - $code = curl_getinfo($ch, CURLINFO_HTTP_CODE ); + $code = curl_getinfo($ch, CURLINFO_HTTP_CODE ); $this->log(LOG_INFO, "Response Code: $code"); - curl_close($ch); + curl_close($ch); return $code; - } - + } } -mb_internal_encoding('UTF-8'); - -$id = ($argc > 1) ? $argv[1] : NULL; +if (have_option('-i')) { + $id = get_option_value('-i'); +} else if (have_option('--id')) { + $id = get_option_value('--id'); +} else if (count($args) > 0) { + $id = $args[0]; +} else { + $id = null; +} $handler = new EnjitQueueHandler($id); if ($handler->start()) { - $handler->handle_queue(); + $handler->handle_queue(); } $handler->finish();