57 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| /**
 | |
|  * @file include/spool_post.php
 | |
|  * @brief Posts items that wer spooled because they couldn't be posted.
 | |
|  */
 | |
| 
 | |
| use Friendica\Core\Config;
 | |
| 
 | |
| require_once("include/items.php");
 | |
| 
 | |
| function spool_post_run($argv, $argc) {
 | |
| 	global $a;
 | |
| 
 | |
| 	$path = get_spoolpath();
 | |
| 
 | |
| 	if (($path != '') && 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) || !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']) && !isset($arr['uri']) && !isset($arr['network'])) {
 | |
| 					continue;
 | |
| 				}
 | |
| 
 | |
| 				$result = item_store($arr);
 | |
| 
 | |
| 				logger("Spool file ".$file." stored: ".$result, LOGGER_DEBUG);
 | |
| 				unlink($fullfile);
 | |
| 			}
 | |
| 			closedir($dh);
 | |
| 		}
 | |
| 	}
 | |
| }
 |