Add total, new, purged counts to output. Output json if from browser.
This commit is contained in:
		
							parent
							
								
									0d74e59634
								
							
						
					
					
						commit
						8b7ccda1b1
					
				| 
						 | 
					@ -5,8 +5,14 @@ require dirname(__FILE__) . "/../variables.php";
 | 
				
			||||||
$dbbooks = array();
 | 
					$dbbooks = array();
 | 
				
			||||||
$parsedbooks = array();
 | 
					$parsedbooks = array();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$cli = ( php_sapi_name() != "cli" ) ? false : true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$count_total = 0;
 | 
				
			||||||
 | 
					$count_new = 0;
 | 
				
			||||||
 | 
					$count_purged = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function walkBooks($path = BOOKDIR) {
 | 
					function walkBooks($path = BOOKDIR) {
 | 
				
			||||||
   global $globaldbh, $parsedbooks;
 | 
					   global $globaldbh, $parsedbooks, $count_new, $count_total;
 | 
				
			||||||
   $contents = glob($path . "/*");
 | 
					   $contents = glob($path . "/*");
 | 
				
			||||||
   foreach ( $contents as $item ) {
 | 
					   foreach ( $contents as $item ) {
 | 
				
			||||||
      if ( is_dir($item) ) {
 | 
					      if ( is_dir($item) ) {
 | 
				
			||||||
| 
						 | 
					@ -16,12 +22,17 @@ function walkBooks($path = BOOKDIR) {
 | 
				
			||||||
         $dbfile = basename($item);
 | 
					         $dbfile = basename($item);
 | 
				
			||||||
         $dbmtime = date("Y-m-d H:i:s", filemtime($item));
 | 
					         $dbmtime = date("Y-m-d H:i:s", filemtime($item));
 | 
				
			||||||
         $parsedbooks[] = $dbpath . (($path == BOOKDIR) ? "" : "/") . $dbfile;
 | 
					         $parsedbooks[] = $dbpath . (($path == BOOKDIR) ? "" : "/") . $dbfile;
 | 
				
			||||||
         $query = "INSERT INTO books (path, filename, mtime) VALUES(:path, :filename, :mtime) ON DUPLICATE KEY UPDATE id=id";
 | 
					         $query = "INSERT INTO books (path, filename, mtime) VALUES(:path, :filename, :mtime)";
 | 
				
			||||||
         $sth = $globaldbh->prepare($query);
 | 
					         $sth = $globaldbh->prepare($query);
 | 
				
			||||||
         $sth->bindValue(":path", $dbpath, PDO::PARAM_STR);
 | 
					         $sth->bindValue(":path", $dbpath, PDO::PARAM_STR);
 | 
				
			||||||
         $sth->bindValue(":filename", $dbfile, PDO::PARAM_STR);
 | 
					         $sth->bindValue(":filename", $dbfile, PDO::PARAM_STR);
 | 
				
			||||||
         $sth->bindValue(":mtime", $dbmtime, PDO::PARAM_STR);
 | 
					         $sth->bindValue(":mtime", $dbmtime, PDO::PARAM_STR);
 | 
				
			||||||
         $sth->execute();
 | 
					         try {
 | 
				
			||||||
 | 
					            $sth->execute();
 | 
				
			||||||
 | 
					            $count_new++;
 | 
				
			||||||
 | 
					         } catch (PDOException $e) {
 | 
				
			||||||
 | 
					         }
 | 
				
			||||||
 | 
					         $count_total++;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
   }
 | 
					   }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -40,7 +51,22 @@ foreach ( $dbbooks as $dbbook ) {
 | 
				
			||||||
   if ( !is_file(BOOKDIR . $dbbook) ) {
 | 
					   if ( !is_file(BOOKDIR . $dbbook) ) {
 | 
				
			||||||
      $sth->bindValue(":target", $dbbook, PDO::PARAM_STR);
 | 
					      $sth->bindValue(":target", $dbbook, PDO::PARAM_STR);
 | 
				
			||||||
      $sth->execute();
 | 
					      $sth->execute();
 | 
				
			||||||
 | 
					      $count_purged++;
 | 
				
			||||||
   }
 | 
					   }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if ( $cli ) {
 | 
				
			||||||
 | 
					   echo "New Books: {$count_new}\n";
 | 
				
			||||||
 | 
					   echo "Purged Books: {$count_purged}\n";
 | 
				
			||||||
 | 
					   echo "Total Books: {$count_total}\n";
 | 
				
			||||||
 | 
					} else {
 | 
				
			||||||
 | 
					   $data = array();
 | 
				
			||||||
 | 
					   $data["new"] = $count_new;
 | 
				
			||||||
 | 
					   $data["purged"] = $count_purged;
 | 
				
			||||||
 | 
					   $data["total"] = $count_total;
 | 
				
			||||||
 | 
					   header('Content-Type: application/json');
 | 
				
			||||||
 | 
					   echo json_encode($data);
 | 
				
			||||||
 | 
					   exit();
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// vim: set sw=3 ts=3:
 | 
					// vim: set sw=3 ts=3:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user