$database_history = Database_History::getInstance(); $database_commits = Database_Commits::getInstance(); $database_config_bible = Database_Config_Bible::getInstance(); $bibles = $database_bibles->getBibles(); foreach ($bibles as $bible) { $stylesheet = $database_config_bible->getExportStylesheet($bible); // The git directory for the Bible. $directory = Filter_Git::git_directory($bible); if (!is_dir($directory)) { continue; } $database_logs->log("{$history} Processing directory" . " " . $directory, Filter_Roles::MANAGER_LEVEL); $shelldirectory = escapeshellarg($directory); // Retrieve all commits from the git repository. // Remove the commits already dealt with. $commits = Filter_Git::commits($directory); $commits = array_diff($commits, $database_commits->get($bible)); // Deal with all the remaining commits. foreach ($commits as $sha1) { // Get author and timestamp. $author = Filter_Git::committer($directory, $sha1); $timestamp = Filter_Git::timestamp($directory, $sha1); $datetime = date('j F Y g:i:s a', $timestamp); $database_logs->log("{$history} {$author} {$datetime} {$bible} {$sha1}", Filter_Roles::MANAGER_LEVEL); $files = Filter_Git::files($directory, $sha1); foreach ($files as $path) { $database_logs->log("{$history} {$path}", Filter_Roles::MANAGER_LEVEL); $data = Filter_Git::explodePath($path); if ($data) { $book = $data['book']; $chapter = $data['chapter'];