public Versification getVersificationOfLastSelectedVerse() { return verseVersificationSelected.getVerse().getVersification(); }
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()); }
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; } }
public void setChapterVerse(ChapterVerse chapterVerse) { mainVerse = new Verse(mainVerse.getVersification(), mainVerse.getBook(), chapterVerse.getChapter(), chapterVerse.getVerse()); } public ChapterVerse getChapterVerse() {
Verse previousVerse = new Verse(currentVerse.getVersification(), currentVerse.getOrdinal() - 1); contentsByOsisID.put(previousVerse, contents); contents = new ArrayList<Content>();
/** * Convert the verse correctly to the v11n or return null */ @Nullable private Verse convertVerseStrictly(Verse verse, Versification toVersification) { try { Key key = versificationsMapper.mapVerse(verse, toVersification); Verse mappedVerse = KeyUtil.getVerse(key); // If target v11n does not contain mapped verse then an exception normally occurs and the ordinal is set to 0 if (mappedVerse.getOrdinal()>0) { return mappedVerse; } } catch (Exception e) { // unexpected problem during mapping Log.e(TAG, "JSword Versification mapper failed to map "+verse.getOsisID()+" from "+verse.getVersification().getName()+" to "+toVersification.getName(), e); } return null; } }
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 previous chapter consistent with current verses scriptural status ie don't hop between book with different scriptural states */ public Verse getPrevChapter(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); // 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 (chapter>1) { chapter -= 1; } else { BibleBook prevBook = getPrevBook(document, v11n, book); // if there was a next book then go to it's first chapter if (prevBook!=null) { book = prevBook; chapter=v11n.getLastChapter(book); } } return new Verse(v11n, book, chapter, 1); }
/** * Get percentage value of reading progress of the verse within its biblebook. */ public int getPercentOfBook(@NotNull Verse verse) { Versification v11n = verse.getVersification(); BibleBook bibleBook = verse.getBook(); int lastChapterNumber = v11n.getLastChapter(bibleBook); int lastVerseNumber = v11n.getLastVerse(bibleBook, lastChapterNumber); Verse lastVerse = new Verse(v11n, bibleBook, lastChapterNumber, lastVerseNumber); Verse firstVerse = new Verse(v11n, bibleBook, 1, 1); return (int)((((double)(verse.getOrdinal() - firstVerse.getOrdinal())) / (lastVerse.getOrdinal() - firstVerse.getOrdinal())) * 100.0); } }
/** 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); } }
/** Get next chapter consistent with current verses scriptural status ie don't hop between book with different scriptural states */ public Verse getNextChapter(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); // 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 (chapter<v11n.getLastChapter(book)) { chapter += 1; } else { BibleBook nextBook = getNextBook(document, v11n, book); // if there was a next book then go to it's first chapter if (nextBook!=null) { book = nextBook; } else { book = BibleBook.GEN; } chapter=1; } return new Verse(v11n, book, chapter, 1); }
/** * Set key without notification */ public void doSetKey(Key key) { if (key!=null) { Verse verse = KeyUtil.getVerse(key); VerseRange verseRange; if (key instanceof VerseRange) { verseRange = (VerseRange)key; } else { verseRange = new VerseRange(verse.getVersification(), verse); } currentNoteVerseRange = new ConvertibleVerseRange(verseRange); getCurrentBibleVerse().setVerseSelected(getVersification(), verse); } }
/** * Get the verse n down from here this Verse. * * @param verse * The verse to use as a start * @param n * The number to count down by * @return The new Verse */ public Verse subtract(Verse verse, int n) { int newVerse = verse.getVerse() - n; // Try the simple case of the verse being in the same chapter if (newVerse >= 0) { return new Verse(verse.getVersification(), verse.getBook(), verse.getChapter(), newVerse); } return decodeOrdinal(verse.getOrdinal() - n); }
if (myNoteList!=null) { boolean isVerseRange = passage instanceof VerseRange; Versification requiredVersification = firstVerse.getVersification(); for (MyNoteDto myNoteDto : myNoteList) { VerseRange verseRange = myNoteDto.getVerseRange(requiredVersification);
public MyNoteDto getCurrentMyNoteDto() { // Key key = getCurrentPageManager().getCurrentMyNotePage().getKey(); VerseRange verseRange; // The key should be a VerseRange if (key instanceof VerseRange) { verseRange = (VerseRange)key; } else { Verse verse = KeyUtil.getVerse(key); verseRange = new VerseRange(verse.getVersification(), verse); } // get a dto MyNoteDto myNote = myNoteDAO.getMyNoteByStartVerse(verseRange); // return an empty note dto if (myNote==null) { myNote = new MyNoteDto(); myNote.setVerseRange(verseRange); } return myNote; }
/** * Get the verse that is a few verses on from the one we've got. * * @param verse * The verse to use as a start * @param n * the number of verses later than the one we're one * @return The new verse */ public Verse add(Verse verse, int n) { int newVerse = verse.getVerse() + n; // Try the simple case of the verse being in the same chapter if (newVerse <= getLastVerse(verse.getBook(), verse.getChapter())) { return new Verse(verse.getVersification(), verse.getBook(), verse.getChapter(), newVerse); } return decodeOrdinal(verse.getOrdinal() + n); }
/** Get previous Verse with same scriptural status */ public Verse getPrevVerse(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int verseNo = verse.getVerse(); if (verseNo>1) { verseNo -= 1; } else { Verse prevChap = getPrevChapter(document, verse); if (!v11n.isSameChapter(verse, prevChap)) { book = prevChap.getBook(); chapter = prevChap.getChapter(); verseNo = v11n.getLastVerse(book, chapter); } } return new Verse(v11n, book, chapter, verseNo); }