/** * A book introduction is an introduction * that has a chapter of 0. * * @param verse the verse to test * @return true or false ... */ public boolean isBookIntro(Verse verse) { return 0 == verse.getChapter() && isIntro(verse); }
/** default chapter for use when jumping into the middle of passage selection */ public int getDefaultBibleChapterNo() { return pageControl.getCurrentBibleVerse().getChapter(); }
/** * A chapter introduction is an introduction * that has a chapter other than 0 * * @param verse the verse to test * @return true or false ... */ public boolean isChapterIntro(Verse verse) { return 0 != verse.getChapter() && isIntro(verse); }
/** * The start of a book is indicated by * a chapter number of 0 or 1 and * a verse number of 0 or 1. * * @param verse the verse to test * @return true or false ... */ public boolean isStartOfBook(Verse verse) { int v = verse.getVerse(); int c = verse.getChapter(); return v <= 1 && c <= 1; }
/** * Two verses are in the same chapter if both * the book and chapter agree. * * @param first * The verse to compare to * @param second * The verse to compare to * @return true or false ... */ public boolean isSameChapter(Verse first, Verse second) { return first.getBook() == second.getBook() && first.getChapter() == second.getChapter(); }
public ChapterVerse getChapterVerse() { return new ChapterVerse(mainVerse.getChapter(), mainVerse.getVerse()); }
public JSONObject getStateJson() throws JSONException { JSONObject object = new JSONObject(); object.put("versification", mainVerse.getVersification().getName()); object.put("bibleBook", mainVerse.getBook().ordinal()); object.put("chapter", mainVerse.getChapter()); object.put("verseNo", mainVerse.getVerse()); return object; }
@JavascriptInterface public String getChapterInfo() { Verse verse = currentPageManager.getCurrentBible().getSingleKey(); JSONObject jsonObject = new JSONObject(); // Create Json Object using Facebook Data try { jsonObject.put("infinite_scroll", currentPageManager.isBibleShown()); jsonObject.put("chapter", verse.getChapter()); jsonObject.put("first_chapter", 1); jsonObject.put("last_chapter", verse.getVersification().getLastChapter(verse.getBook())); } catch (JSONException e) { Log.e(TAG, "JSON error fetching chapter info", e); } return jsonObject.toString(); }
public ConvertibleVerse(Verse verse) { this(verse.getVersification(), verse.getBook(), verse.getChapter(), verse.getVerse()); }
/** * The end of the chapter is indicated by * the verse number matching the last in the chapter. * * @param verse the verse to test * @return true or false ... */ public boolean isEndOfChapter(Verse verse) { BibleBook b = verse.getBook(); int v = verse.getVerse(); int c = verse.getChapter(); return v == getLastVerse(b, c); }
private boolean isStartOrEndOfBook(Key key) { boolean isStartOrEnd = false; try { if (key instanceof VerseKey) { Verse verse = KeyUtil.getVerse(key); int chapter = verse.getChapter(); BibleBook book = verse.getBook(); isStartOrEnd = chapter == 1 || chapter == verse.getVersification().getLastChapter(book); } } catch (Exception e) { Log.e(TAG, "Verse error", e); isStartOrEnd = false; } return isStartOrEnd; } }
/** Return the verse in the required versification, mapping if necessary */ public Verse convert(Verse verse, Versification toVersification) { Verse mappedVerse = convertVerseStrictly(verse, toVersification); if (mappedVerse != null) return mappedVerse; // just try to retain information by forcing creation of a similar verse with the new v11n return new Verse(toVersification, verse.getBook(), verse.getChapter(), verse.getVerse()); }
@Override public VerseRange blur(Versification v11n, Verse verse, int blurDown, int blurUp) { BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int startVerse = verse.getVerse() - blurDown; int endVerse = verse.getVerse() + blurUp; startVerse = Math.max(startVerse, 0); endVerse = Math.min(endVerse, v11n.getLastVerse(book, chapter)); Verse start = new Verse(v11n, book, chapter, startVerse); Verse end = new Verse(v11n, book, chapter, endVerse); return new VerseRange(v11n, start, end); }
@Override public Verse createEndVerse(Versification v11n, Verse verseBasis, String[] endParts) throws NoSuchVerseException { // Very similar to the start verse but use the verse as a basis // and it gets the end of the chapter BibleBook book = verseBasis.getBook(); int chapter = verseBasis.getChapter(); int verse = getVerse(v11n, book, chapter, endParts[0]); return new Verse(v11n, book, chapter, verse, getSubIdentifier(endParts)); } };
@Override public VerseRange blur(Versification v11n, VerseRange range, int blurDown, int blurUp) { Verse start = range.getStart(); BibleBook startBook = start.getBook(); int startChapter = start.getChapter(); int startVerse = start.getVerse() - blurDown; Verse end = range.getEnd(); BibleBook endBook = end.getBook(); int endChapter = end.getChapter(); int endVerse = end.getVerse() + blurUp; startVerse = Math.max(startVerse, 0); endVerse = Math.min(endVerse, v11n.getLastVerse(endBook, endChapter)); Verse newStart = new Verse(v11n, startBook, startChapter, startVerse); Verse newEnd = new Verse(v11n, endBook, endChapter, endVerse); return new VerseRange(v11n, newStart, newEnd); }
public static Key getWholeChapter(Verse currentVerse) { Log.i(TAG, "Get Chapter for:"+currentVerse.getOsisID()); Versification versification = currentVerse.getVersification(); BibleBook book = currentVerse.getBook(); int chapter = currentVerse.getChapter(); Verse targetChapterFirstVerse = new Verse(versification, book, chapter, 0); Verse targetChapterLastVerse = new Verse(versification, book, chapter, versification.getLastVerse(book, chapter)); // convert to full chapter before returning because bible view is for a full chapter return new VerseRange(versification, targetChapterFirstVerse, targetChapterLastVerse); }
private void updateBookmarkSettings(Key key, PlaybackSettings settings) { Verse v = (Verse) key; if(v.getVerse() == 0) { v = new Verse(v.getVersification(), v.getBook(), v.getChapter(), 1); } BookmarkDto bookmarkDto = getBookmarkByKey(v); if(bookmarkDto != null && bookmarkDto.getPlaybackSettings() != null) { bookmarkDto.setPlaybackSettings(settings); addOrUpdateBookmark(bookmarkDto); Log.d("SpeakBookmark", "Updated bookmark settings "+bookmarkDto + settings.getSpeed()); } }
/** Get next Scriptural Verse with same scriptural status */ public Verse getNextVerse(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int verseNo = verse.getVerse(); // if past last chapter of book then go to next book - algorithm not foolproof but we only move one chapter at a time like this if (verseNo<v11n.getLastVerse(book, chapter)) { return new Verse(v11n, book, chapter, verseNo+1); } else { return getNextChapter(document, verse); } }
@Override public Verse createStartVerse(Versification v11n, VerseRange verseRangeBasis, String[] parts) throws NoSuchVerseException { if (verseRangeBasis == null) { // TRANSLATOR: The user supplied a verse reference but did not give the book or chapter of the Bible. throw new NoSuchVerseException(JSMsg.gettext("Book and chapter are missing")); } BibleBook book = verseRangeBasis.getEnd().getBook(); int chapter = verseRangeBasis.getEnd().getChapter(); int verse = getVerse(v11n, book, chapter, parts[0]); return new Verse(v11n, book, chapter, verse, getSubIdentifier(parts)); }
public SpeakCommandArray getSpeakCommands(SpeakSettings settings, SwordBook book, Verse verse) { VersificationConverter v11nConverter = new VersificationConverter(); Verse verse_ = v11nConverter.convert(verse, book.getVersification()); SpeakCommandArray lst = new SpeakCommandArray(); if (verse_.getVerse() == 1) { lst.addAll(getSpeakCommandsForVerse(settings, book, new Verse(book.getVersification(), verse_.getBook(), verse_.getChapter(), 0))); } lst.addAll(getSpeakCommandsForVerse(settings, book, verse_)); return lst; }