diff --git a/include/bbcode.php b/include/bbcode.php index c05c3693..a3f2971e 100644 --- a/include/bbcode.php +++ b/include/bbcode.php @@ -134,7 +134,7 @@ function bbcode($Text,$preserve_nl = false) { // Youtube extensions $Text = preg_replace("/\[youtube\]https?:\/\/www.youtube.com\/watch\?v\=(.*?)\[\/youtube\]/",'[youtube]$1[/youtube]',$Text); $Text = preg_replace("/\[youtube\]https?:\/\/youtu.be\/(.*?)\[\/youtube\]/",'[youtube]$1[/youtube]',$Text); - $Text = preg_replace("/\[youtube\](.*?)\[\/youtube\]/", '', $Text); + $Text = preg_replace("/\[youtube\](.*?)\[\/youtube\]/", '', $Text); } // $Text = preg_replace("/\[youtube\](.*?)\[\/youtube\]/", '', $Text); diff --git a/include/notifier.php b/include/notifier.php index 1acb6d71..e92a4f6a 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -641,15 +641,19 @@ function notifier_run($argv, $argc){ /* Don't deliver to folks who have already been delivered to */ - if(in_array($rr['id'],$conversants)) + if(in_array($rr['id'],$conversants)) { + logger('notifier: already delivered id=' . $rr['id']); continue; + } $n = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1", - intval($rr['id']) + intval($rr['id']) ); if(count($n)) { $contact = $n[0]; + logger('pubdeliver: network: ' . $contact['network']); + switch($contact['network']) { case NETWORK_DFRN : logger('notifier: dfrnpubdelivery: ' . $contact['name']); diff --git a/include/queue.php b/include/queue.php index fe96a75c..f1bcf2e9 100644 --- a/include/queue.php +++ b/include/queue.php @@ -29,6 +29,11 @@ function queue_run($argv, $argc){ load_hooks(); + if($argc > 1) + $queue_id = intval($argv[1]); + else + $queue_id = 0; + $deadguys = array(); logger('queue: start'); @@ -44,13 +49,19 @@ function queue_run($argv, $argc){ q("DELETE FROM `queue` WHERE `created` < UTC_TIMESTAMP() - INTERVAL 3 DAY"); } - $r = q("SELECT `id` FROM `queue` WHERE `last` < UTC_TIMESTAMP() - INTERVAL 15 MINUTE "); + if($queue_id) + $r = q("SELECT `id` FROM `queue` WHERE `id` = %d LIMIT 1", + intval($queue_id) + ); + else + $r = q("SELECT `id` FROM `queue` WHERE `last` < UTC_TIMESTAMP() - INTERVAL 15 MINUTE "); if(! count($r)){ return; } - call_hooks('queue_predeliver', $a, $r); + if(! $queue_id) + call_hooks('queue_predeliver', $a, $r); // delivery loop @@ -63,9 +74,16 @@ function queue_run($argv, $argc){ // queue_predeliver hooks may have changed the queue db details, // so check again if this entry still needs processing - $qi = q("SELECT * FROM `queue` WHERE `id` = %d AND `last` < UTC_TIMESTAMP() - INTERVAL 15 MINUTE ", - intval($q_item['id']) - ); + if($queue_id) { + $qi = q("select * from queue where `id` = %d limit 1", + intval($queue_id) + ); + } + else { + $qi = q("SELECT * FROM `queue` WHERE `id` = %d AND `last` < UTC_TIMESTAMP() - INTERVAL 15 MINUTE ", + intval($q_item['id']) + ); + } if(! count($qi)) continue;