X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fspool_post.php;h=f64b39e4b687bda0e0b42434ed88c2872367c463;hb=d1fd797d6e045d02f8d19541d9856c02d91bf25a;hp=c42928a67288c3783032852927c0ab54a59b3c4a;hpb=e20e64390b4e0075c49d9b3b16137a6056e10a16;p=friendica.git diff --git a/include/spool_post.php b/include/spool_post.php index c42928a672..f64b39e4b6 100644 --- a/include/spool_post.php +++ b/include/spool_post.php @@ -3,37 +3,51 @@ * @file include/spool_post.php * @brief Posts items that wer spooled because they couldn't be posted. */ -require_once("boot.php"); -require_once("include/items.php"); - -function spool_post_run($argv, $argc) { - global $a, $db; - if (is_null($a)) { - $a = new App; - } +use \Friendica\Core\Config; - if (is_null($db)) { - @include(".htconfig.php"); - require_once("include/dba.php"); - $db = new dba($db_host, $db_user, $db_pass, $db_data); - unset($db_host, $db_user, $db_pass, $db_data); - } +require_once("include/items.php"); - load_config('config'); - load_config('system'); +function spool_post_run($argv, $argc) { + global $a; $path = get_spoolpath(); - if (is_writable($path)){ + if (($path != '') AND is_writable($path)){ if ($dh = opendir($path)) { while (($file = readdir($dh)) !== false) { + + // It is not named like a spool file, so we don't care. + if (substr($file, 0, 5) != "item-") { + continue; + } + $fullfile = $path."/".$file; + + // We don't care about directories either if (filetype($fullfile) != "file") { continue; } + + // We can't read or write the file? So we don't care about it. + if (!is_writable($fullfile) OR !is_readable($fullfile)) { + continue; + } + $arr = json_decode(file_get_contents($fullfile), true); + + // If it isn't an array then it is no spool file + if (!is_array($arr)) { + continue; + } + + // Skip if it doesn't seem to be an item array + if (!isset($arr['uid']) AND !isset($arr['uri']) AND !isset($arr['network'])) { + continue; + } + $result = item_store($arr); + logger("Spool file ".$file." stored: ".$result, LOGGER_DEBUG); unlink($fullfile); } @@ -41,9 +55,4 @@ function spool_post_run($argv, $argc) { } } } - -if (array_search(__file__, get_included_files()) === 0) { - spool_post_run($_SERVER["argv"], $_SERVER["argc"]); - killme(); -} ?>