public static function passagesDisplayMultiline($passages) { $display = ""; foreach ($passages as $passage) { $display .= Filter_Books::passageDisplay($passage[0], $passage[1], $passage[2]); $display .= "\n"; } return $display; }
/** * This function produces the text of the current passage, e.g.: Genesis 1:1. * Returns: The passage text */ private function getCurrentPassageText() { return Filter_Books::passageDisplay($this->currentBookIdentifier, $this->currentChapterNumber, $this->currentVerseNumber); }
function processIdentifiers($user, $bible, $book, $chapter, $oldId, $newId, &$email) { if ($oldId != 0) { $database_modifications = Database_Modifications::getInstance(); $database_config_user = Database_Config_User::getInstance(); $database_config_bible = Database_Config_Bible::getInstance(); $database_bibles = Database_Bibles::getInstance(); $database_history = Database_History::getInstance(); $stylesheet = $database_config_bible->getExportStylesheet($bible); $old_chapter_usfm = $database_modifications->getUserChapter($user, $bible, $book, $chapter, $oldId); $old_chapter_usfm = $old_chapter_usfm['oldtext']; $new_chapter_usfm = $database_modifications->getUserChapter($user, $bible, $book, $chapter, $newId); $new_chapter_usfm = $new_chapter_usfm['newtext']; $timestamp = $database_modifications->getUserTimestamp($user, $bible, $book, $chapter, $newId); $old_verse_numbers = Filter_Usfm::getVerseNumbers($old_chapter_usfm); $new_verse_numbers = Filter_Usfm::getVerseNumbers($new_chapter_usfm); $verses = array_merge($old_verse_numbers, $new_verse_numbers); $verses = array_unique($verses); sort($verses, SORT_NUMERIC); foreach ($verses as $verse) { $old_verse_usfm = Filter_Usfm::getVerseText($old_chapter_usfm, $verse); $new_verse_usfm = Filter_Usfm::getVerseText($new_chapter_usfm, $verse); if ($old_verse_usfm != $new_verse_usfm) { $filter_text_old = new Filter_Text($bible); $filter_text_new = new Filter_Text($bible); $filter_text_old->html_text_standard = new Html_Text(Locale_Translate::_("Bible")); $filter_text_new->html_text_standard = new Html_Text(Locale_Translate::_("Bible")); $filter_text_old->text_text = new Text_Text(); $filter_text_new->text_text = new Text_Text(); $filter_text_old->addUsfmCode($old_verse_usfm); $filter_text_new->addUsfmCode($new_verse_usfm); $filter_text_old->run($stylesheet); $filter_text_new->run($stylesheet); $old_html = $filter_text_old->html_text_standard->getInnerHtml(); $new_html = $filter_text_new->html_text_standard->getInnerHtml(); $old_text = $filter_text_old->text_text->get(); $new_text = $filter_text_new->text_text->get(); if ($old_text != $new_text) { $modification = Filter_Diff::diff($old_text, $new_text); $email .= "<div>"; $email .= Filter_Books::passageDisplay($book, $chapter, $verse); $email .= " "; $email .= $modification; $email .= "</div>"; if ($database_config_user->getUserUserChangesNotificationsOnline($user)) { $changeNotificationUsers = array($user); $database_modifications->recordNotification($changeNotificationUsers, "☺", $bible, $book, $chapter, $verse, $old_html, $modification, $new_html); } $database_history->record($timestamp, $user, $bible, $book, $chapter, $verse, $old_html, $modification, $new_html); } } } } }
$hitCount = count($ids); echo "<font size=\"-1\" color=\"grey\"><hr /></font>\n"; echo "<p><font size=\"-1\" color=\"grey\">{$hitCount} " . Locale_Translate::_("chapters") . "</font></p>\n"; // Go through the search hits. foreach ($ids as $id) { // Get the details of this search hit. $details = $database_search->getBiblePassage($id); if ($details == NULL) { continue; } $bible = $details["bible"]; $book = $details["book"]; $chapter = $details["chapter"]; $verse = $details["verse"]; // The title. $title = "{$bible}" . " | " . Filter_Books::passageDisplay($book, $chapter, $verse); $title = Filter_Html::sanitize($title); // The URL. $url = "../exports/{$bible}/web/" . Filter_Paths::htmlFileNameBible("", $book, $chapter); // Output title and URL. echo "<p style=\"margin-top: 0.75em; margin-bottom: 0em\"><a href=\"{$url}\">{$title}</a></p>\n"; // The excerpt. $text = $database_search->getBibleVerseText($bible, $book, $chapter, $verse); $text = explode("\n", $text); $excerpt = ""; // Go through each line of text separately. foreach ($text as $line) { $markedLine = Filter_Markup::words($queryWords, $line); if ($markedLine != $line) { // Store this bit of the excerpt. $excerpt .= "<p style=\"margin-top: 0em; margin-bottom: 0em\">{$markedLine}</p>\n";
$passage = explode(".", $from); $from = Filter_Books::passage2integer($passage); $to = $database_config_user->getPrintPassageToForUser($user); $passage = explode(".", $to); $to = Filter_Books::passage2integer($passage); $result = array(); $books = $database_bibles->getBooks($bible); foreach ($books as $book) { $chapters = $database_bibles->getChapters($bible, $book); foreach ($chapters as $chapter) { $usfm = $database_bibles->getChapter($bible, $book, $chapter); $verses = Filter_Usfm::getVerseNumbers($usfm); foreach ($verses as $verse) { $passage = Filter_Books::passage2integer(array($book, $chapter, $verse)); if ($passage >= $from && $passage <= $to) { $passageText = Filter_Books::passageDisplay($book, $chapter, $verse); $database_jobs->setProgress($jobId, $passageText); $result[] = '<div class="nextresource">'; $result[] = "<p>{$passageText}</p>"; foreach ($resources as $resource) { $result[] = "<p>"; $result[] = $resource; $html = Resource_Logic::getHtml($resource, $book, $chapter, $verse); $result[] = $html; $result[] = "</p>"; } $result[] = "</div>"; $result[] = "<br>"; } } }
public function testPassageDisplay() { $this->assertEquals("Genesis 10:2", Filter_Books::passageDisplay(1, 10, 2)); $this->assertEquals("Exodus 11:2", Filter_Books::passageDisplay(2, 11, 2)); }
$filter_text_compare->text_text = new Text_Text(); $filter_text_bible->addUsfmCode($bible_verse_usfm); $filter_text_compare->addUsfmCode($compare_verse_usfm); $filter_text_bible->run($stylesheet); $filter_text_compare->run($stylesheet); $bible_html = $filter_text_bible->html_text_standard->getInnerHtml(); $compare_html = $filter_text_compare->html_text_standard->getInnerHtml(); $bible_text = $filter_text_bible->text_text->get(); $compare_text = $filter_text_compare->text_text->get(); if ($bible_text != $compare_text) { $modification = Filter_Diff::diff($compare_text, $bible_text); $result[] = Filter_Books::passageDisplay($book, $chapter, $verse) . " " . $modification; $new[] = Filter_Books::passageDisplay($book, $chapter, $verse) . " " . $bible_text; } $modification = Filter_Diff::diff($compare_verse_usfm, $bible_verse_usfm); $raw[] = Filter_Books::passageDisplay($book, $chapter, $verse) . " " . $modification; } } } } // Add the absent books / chapters to the comparison. if (count($absent)) { $result[] = ""; $result = array_merge($result, $absent); } // Add any differences in the raw USFM to the comparison. if (count($raw)) { $result[] = ""; $result = array_merge($result, $raw); } // Add the text of the new verses, as they are in the $bible.