forked from openlp/openlp
parent
5e9d9a3cd0
commit
47767b02c1
@ -191,7 +191,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
:param testament: *Defaults to 1.* The testament_reference_id from
|
:param testament: *Defaults to 1.* The testament_reference_id from
|
||||||
bibles_resources.sqlite of the testament this book belongs to.
|
bibles_resources.sqlite of the testament this book belongs to.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.create_book("%s", "%s")', name, bk_ref_id)
|
log.debug('BibleDB.create_book("%s", "%s")' % (name, bk_ref_id))
|
||||||
book = Book.populate(name=name, book_reference_id=bk_ref_id, testament_reference_id=testament)
|
book = Book.populate(name=name, book_reference_id=bk_ref_id, testament_reference_id=testament)
|
||||||
self.save_object(book)
|
self.save_object(book)
|
||||||
return book
|
return book
|
||||||
@ -202,7 +202,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
|
|
||||||
:param book: The book object
|
:param book: The book object
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.update_book("%s")', book.name)
|
log.debug('BibleDB.update_book("%s")' % book.name)
|
||||||
return self.save_object(book)
|
return self.save_object(book)
|
||||||
|
|
||||||
def delete_book(self, db_book):
|
def delete_book(self, db_book):
|
||||||
@ -211,7 +211,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
|
|
||||||
:param db_book: The book object.
|
:param db_book: The book object.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.delete_book("%s")', db_book.name)
|
log.debug('BibleDB.delete_book("%s")' % db_book.name)
|
||||||
if self.delete_object(Book, db_book.id):
|
if self.delete_object(Book, db_book.id):
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
@ -225,7 +225,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
:param text_list: A dict of the verses to be inserted. The key is the verse number, and the value is the
|
:param text_list: A dict of the verses to be inserted. The key is the verse number, and the value is the
|
||||||
verse text.
|
verse text.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDBcreate_chapter("%s", "%s")', book_id, chapter)
|
log.debug('BibleDBcreate_chapter("%s", "%s")' % (book_id, chapter))
|
||||||
# Text list has book and chapter as first two elements of the array.
|
# Text list has book and chapter as first two elements of the array.
|
||||||
for verse_number, verse_text in text_list.items():
|
for verse_number, verse_text in text_list.items():
|
||||||
verse = Verse.populate(
|
verse = Verse.populate(
|
||||||
@ -267,7 +267,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
"""
|
"""
|
||||||
if not isinstance(value, str):
|
if not isinstance(value, str):
|
||||||
value = str(value)
|
value = str(value)
|
||||||
log.debug('BibleDB.save_meta("%s/%s")', key, value)
|
log.debug('BibleDB.save_meta("%s/%s")' % (key, value))
|
||||||
meta = self.get_object(BibleMeta, key)
|
meta = self.get_object(BibleMeta, key)
|
||||||
if meta:
|
if meta:
|
||||||
meta.value = value
|
meta.value = value
|
||||||
@ -281,7 +281,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
|
|
||||||
:param book: The name of the book to return.
|
:param book: The name of the book to return.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.get_book("%s")', book)
|
log.debug('BibleDB.get_book("%s")' % book)
|
||||||
return self.get_object_filtered(Book, Book.name.like(book + '%'))
|
return self.get_object_filtered(Book, Book.name.like(book + '%'))
|
||||||
|
|
||||||
def get_books(self):
|
def get_books(self):
|
||||||
@ -292,17 +292,17 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
log.debug('BibleDB.get_books()')
|
log.debug('BibleDB.get_books()')
|
||||||
return self.get_all_objects(Book, order_by_ref=Book.id)
|
return self.get_all_objects(Book, order_by_ref=Book.id)
|
||||||
|
|
||||||
def get_book_by_book_ref_id(self, id):
|
def get_book_by_book_ref_id(self, ref_id):
|
||||||
"""
|
"""
|
||||||
Return a book object from the database.
|
Return a book object from the database.
|
||||||
|
|
||||||
:param id: The reference id of the book to return.
|
:param ref_id: The reference id of the book to return.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.get_book_by_book_ref_id("%s")', id)
|
log.debug('BibleDB.get_book_by_book_ref_id("%s")' % ref_id)
|
||||||
return self.get_object_filtered(Book, Book.book_reference_id.like(id))
|
return self.get_object_filtered(Book, Book.book_reference_id.like(ref_id))
|
||||||
|
|
||||||
def get_book_ref_id_by_name(self, book, maxbooks, language_id=None):
|
def get_book_ref_id_by_name(self, book, maxbooks, language_id=None):
|
||||||
log.debug('BibleDB.get_book_ref_id_by_name:("%s", "%s")', book, language_id)
|
log.debug('BibleDB.get_book_ref_id_by_name:("%s", "%s")' % (book, language_id))
|
||||||
book_id = None
|
book_id = None
|
||||||
if BiblesResourcesDB.get_book(book, True):
|
if BiblesResourcesDB.get_book(book, True):
|
||||||
book_temp = BiblesResourcesDB.get_book(book, True)
|
book_temp = BiblesResourcesDB.get_book(book, True)
|
||||||
@ -328,7 +328,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
:param book: The name of the book, according to the selected language.
|
:param book: The name of the book, according to the selected language.
|
||||||
:param language_selection: The language selection the user has chosen in the settings section of the Bible.
|
:param language_selection: The language selection the user has chosen in the settings section of the Bible.
|
||||||
"""
|
"""
|
||||||
log.debug('get_book_ref_id_by_localised_name("%s", "%s")', book, language_selection)
|
log.debug('get_book_ref_id_by_localised_name("%s", "%s")' % (book, language_selection))
|
||||||
from openlp.plugins.bibles.lib import LanguageSelection, BibleStrings
|
from openlp.plugins.bibles.lib import LanguageSelection, BibleStrings
|
||||||
book_names = BibleStrings().BookNames
|
book_names = BibleStrings().BookNames
|
||||||
# escape reserved characters
|
# escape reserved characters
|
||||||
@ -376,14 +376,14 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
[(u'35', 1, 1, 1), (u'35', 2, 2, 3)]
|
[(u'35', 1, 1, 1), (u'35', 2, 2, 3)]
|
||||||
:param show_error:
|
:param show_error:
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.get_verses("%s")', reference_list)
|
log.debug('BibleDB.get_verses("%s")' % reference_list)
|
||||||
verse_list = []
|
verse_list = []
|
||||||
book_error = False
|
book_error = False
|
||||||
for book_id, chapter, start_verse, end_verse in reference_list:
|
for book_id, chapter, start_verse, end_verse in reference_list:
|
||||||
db_book = self.get_book_by_book_ref_id(book_id)
|
db_book = self.get_book_by_book_ref_id(book_id)
|
||||||
if db_book:
|
if db_book:
|
||||||
book_id = db_book.book_reference_id
|
book_id = db_book.book_reference_id
|
||||||
log.debug('Book name corrected to "%s"', db_book.name)
|
log.debug('Book name corrected to "%s"' % db_book.name)
|
||||||
if end_verse == -1:
|
if end_verse == -1:
|
||||||
end_verse = self.get_verse_count(book_id, chapter)
|
end_verse = self.get_verse_count(book_id, chapter)
|
||||||
verses = self.session.query(Verse) \
|
verses = self.session.query(Verse) \
|
||||||
@ -395,7 +395,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
.all()
|
.all()
|
||||||
verse_list.extend(verses)
|
verse_list.extend(verses)
|
||||||
else:
|
else:
|
||||||
log.debug('OpenLP failed to find book with id "%s"', book_id)
|
log.debug('OpenLP failed to find book with id "%s"' % book_id)
|
||||||
book_error = True
|
book_error = True
|
||||||
if book_error and show_error:
|
if book_error and show_error:
|
||||||
critical_error_message_box(
|
critical_error_message_box(
|
||||||
@ -414,7 +414,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
contains spaces, it will split apart and AND'd on the list of
|
contains spaces, it will split apart and AND'd on the list of
|
||||||
values.
|
values.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.verse_search("%s")', text)
|
log.debug('BibleDB.verse_search("%s")' % text)
|
||||||
verses = self.session.query(Verse)
|
verses = self.session.query(Verse)
|
||||||
if text.find(',') > -1:
|
if text.find(',') > -1:
|
||||||
keywords = ['%%%s%%' % keyword.strip() for keyword in text.split(',')]
|
keywords = ['%%%s%%' % keyword.strip() for keyword in text.split(',')]
|
||||||
@ -433,7 +433,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
|
|
||||||
:param book: The book object to get the chapter count for.
|
:param book: The book object to get the chapter count for.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.get_chapter_count("%s")', book.name)
|
log.debug('BibleDB.get_chapter_count("%s")' % book.name)
|
||||||
count = self.session.query(func.max(Verse.chapter)).join(Book).filter(
|
count = self.session.query(func.max(Verse.chapter)).join(Book).filter(
|
||||||
Book.book_reference_id == book.book_reference_id).scalar()
|
Book.book_reference_id == book.book_reference_id).scalar()
|
||||||
if not count:
|
if not count:
|
||||||
@ -447,7 +447,7 @@ class BibleDB(QtCore.QObject, Manager, RegistryProperties):
|
|||||||
:param book_ref_id: The book reference id.
|
:param book_ref_id: The book reference id.
|
||||||
:param chapter: The chapter to get the verse count for.
|
:param chapter: The chapter to get the verse count for.
|
||||||
"""
|
"""
|
||||||
log.debug('BibleDB.get_verse_count("%s", "%s")', book_ref_id, chapter)
|
log.debug('BibleDB.get_verse_count("%s", "%s")' % (book_ref_id, chapter))
|
||||||
count = self.session.query(func.max(Verse.verse)).join(Book) \
|
count = self.session.query(func.max(Verse.verse)).join(Book) \
|
||||||
.filter(Book.book_reference_id == book_ref_id) \
|
.filter(Book.book_reference_id == book_ref_id) \
|
||||||
.filter(Verse.chapter == chapter) \
|
.filter(Verse.chapter == chapter) \
|
||||||
@ -563,7 +563,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
:param name: The name or abbreviation of the book.
|
:param name: The name or abbreviation of the book.
|
||||||
:param lower: True if the comparison should be only lowercase
|
:param lower: True if the comparison should be only lowercase
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_book("%s")', name)
|
log.debug('BiblesResourcesDB.get_book("%s")' % name)
|
||||||
if not isinstance(name, str):
|
if not isinstance(name, str):
|
||||||
name = str(name)
|
name = str(name)
|
||||||
if lower:
|
if lower:
|
||||||
@ -592,7 +592,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
|
|
||||||
:param string: The string to search for in the book names or abbreviations.
|
:param string: The string to search for in the book names or abbreviations.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_book_like("%s")', string)
|
log.debug('BiblesResourcesDB.get_book_like("%s")' % string)
|
||||||
if not isinstance(string, str):
|
if not isinstance(string, str):
|
||||||
name = str(string)
|
name = str(string)
|
||||||
books = BiblesResourcesDB.run_sql(
|
books = BiblesResourcesDB.run_sql(
|
||||||
@ -611,17 +611,17 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
return None
|
return None
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_book_by_id(id):
|
def get_book_by_id(book_id):
|
||||||
"""
|
"""
|
||||||
Return a book by id.
|
Return a book by id.
|
||||||
|
|
||||||
:param id: The id of the book.
|
:param book_id: The id of the book.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_book_by_id("%s")', id)
|
log.debug('BiblesResourcesDB.get_book_by_id("%s")' % book_id)
|
||||||
if not isinstance(id, int):
|
if not isinstance(book_id, int):
|
||||||
id = int(id)
|
book_id = int(book_id)
|
||||||
books = BiblesResourcesDB.run_sql(
|
books = BiblesResourcesDB.run_sql(
|
||||||
'SELECT id, testament_id, name, abbreviation, chapters FROM book_reference WHERE id = ?', (id, ))
|
'SELECT id, testament_id, name, abbreviation, chapters FROM book_reference WHERE id = ?', (book_id, ))
|
||||||
if books:
|
if books:
|
||||||
return {
|
return {
|
||||||
'id': books[0][0],
|
'id': books[0][0],
|
||||||
@ -641,7 +641,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
:param book_ref_id: The id of a book.
|
:param book_ref_id: The id of a book.
|
||||||
:param chapter: The chapter number.
|
:param chapter: The chapter number.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_chapter("%s", "%s")', book_ref_id, chapter)
|
log.debug('BiblesResourcesDB.get_chapter("%s", "%s")' % (book_ref_id, chapter))
|
||||||
if not isinstance(chapter, int):
|
if not isinstance(chapter, int):
|
||||||
chapter = int(chapter)
|
chapter = int(chapter)
|
||||||
chapters = BiblesResourcesDB.run_sql(
|
chapters = BiblesResourcesDB.run_sql(
|
||||||
@ -664,7 +664,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
|
|
||||||
:param book_ref_id: The id of the book.
|
:param book_ref_id: The id of the book.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_chapter_count("%s")', book_ref_id)
|
log.debug('BiblesResourcesDB.get_chapter_count("%s")' % book_ref_id)
|
||||||
details = BiblesResourcesDB.get_book_by_id(book_ref_id)
|
details = BiblesResourcesDB.get_book_by_id(book_ref_id)
|
||||||
if details:
|
if details:
|
||||||
return details['chapters']
|
return details['chapters']
|
||||||
@ -678,7 +678,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
:param book_ref_id: The id of the book.
|
:param book_ref_id: The id of the book.
|
||||||
:param chapter: The number of the chapter.
|
:param chapter: The number of the chapter.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_verse_count("%s", "%s")', book_ref_id, chapter)
|
log.debug('BiblesResourcesDB.get_verse_count("%s", "%s")' % (book_ref_id, chapter))
|
||||||
details = BiblesResourcesDB.get_chapter(book_ref_id, chapter)
|
details = BiblesResourcesDB.get_chapter(book_ref_id, chapter)
|
||||||
if details:
|
if details:
|
||||||
return details['verse_count']
|
return details['verse_count']
|
||||||
@ -691,7 +691,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
|
|
||||||
:param source: The name or abbreviation of the book.
|
:param source: The name or abbreviation of the book.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_download_source("%s")', source)
|
log.debug('BiblesResourcesDB.get_download_source("%s")' % source)
|
||||||
if not isinstance(source, str):
|
if not isinstance(source, str):
|
||||||
source = str(source)
|
source = str(source)
|
||||||
source = source.title()
|
source = source.title()
|
||||||
@ -712,7 +712,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
|
|
||||||
:param source: The source of the web_bible.
|
:param source: The source of the web_bible.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_webbibles("%s")', source)
|
log.debug('BiblesResourcesDB.get_webbibles("%s")' % source)
|
||||||
if not isinstance(source, str):
|
if not isinstance(source, str):
|
||||||
source = str(source)
|
source = str(source)
|
||||||
source = BiblesResourcesDB.get_download_source(source)
|
source = BiblesResourcesDB.get_download_source(source)
|
||||||
@ -737,7 +737,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
:param abbreviation: The abbreviation of the web_bible.
|
:param abbreviation: The abbreviation of the web_bible.
|
||||||
:param source: The source of the web_bible.
|
:param source: The source of the web_bible.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_webbibles("%s", "%s")', abbreviation, source)
|
log.debug('BiblesResourcesDB.get_webbibles("%s", "%s")' % (abbreviation, source))
|
||||||
if not isinstance(abbreviation, str):
|
if not isinstance(abbreviation, str):
|
||||||
abbreviation = str(abbreviation)
|
abbreviation = str(abbreviation)
|
||||||
if not isinstance(source, str):
|
if not isinstance(source, str):
|
||||||
@ -765,7 +765,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
:param name: The name to search the id.
|
:param name: The name to search the id.
|
||||||
:param language_id: The language_id for which language should be searched
|
:param language_id: The language_id for which language should be searched
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_alternative_book_name("%s", "%s")', name, language_id)
|
log.debug('BiblesResourcesDB.get_alternative_book_name("%s", "%s")' % (name, language_id))
|
||||||
if language_id:
|
if language_id:
|
||||||
books = BiblesResourcesDB.run_sql(
|
books = BiblesResourcesDB.run_sql(
|
||||||
'SELECT book_reference_id, name FROM alternative_book_names WHERE language_id = ? ORDER BY id',
|
'SELECT book_reference_id, name FROM alternative_book_names WHERE language_id = ? ORDER BY id',
|
||||||
@ -784,7 +784,7 @@ class BiblesResourcesDB(QtCore.QObject, Manager):
|
|||||||
|
|
||||||
:param name: The name or abbreviation of the language.
|
:param name: The name or abbreviation of the language.
|
||||||
"""
|
"""
|
||||||
log.debug('BiblesResourcesDB.get_language("%s")', name)
|
log.debug('BiblesResourcesDB.get_language("%s")' % name)
|
||||||
if not isinstance(name, str):
|
if not isinstance(name, str):
|
||||||
name = str(name)
|
name = str(name)
|
||||||
language = BiblesResourcesDB.run_sql(
|
language = BiblesResourcesDB.run_sql(
|
||||||
@ -880,7 +880,7 @@ class AlternativeBookNamesDB(QtCore.QObject, Manager):
|
|||||||
:param name: The name to search the id.
|
:param name: The name to search the id.
|
||||||
:param language_id: The language_id for which language should be searched
|
:param language_id: The language_id for which language should be searched
|
||||||
"""
|
"""
|
||||||
log.debug('AlternativeBookNamesDB.get_book_reference_id("%s", "%s")', name, language_id)
|
log.debug('AlternativeBookNamesDB.get_book_reference_id("%s", "%s")' % (name, language_id))
|
||||||
if language_id:
|
if language_id:
|
||||||
books = AlternativeBookNamesDB.run_sql(
|
books = AlternativeBookNamesDB.run_sql(
|
||||||
'SELECT book_reference_id, name FROM alternative_book_names WHERE language_id = ?', (language_id, ))
|
'SELECT book_reference_id, name FROM alternative_book_names WHERE language_id = ?', (language_id, ))
|
||||||
@ -901,8 +901,8 @@ class AlternativeBookNamesDB(QtCore.QObject, Manager):
|
|||||||
:param book_reference_id: The book_reference_id of the book.
|
:param book_reference_id: The book_reference_id of the book.
|
||||||
:param language_id: The language to which the alternative book name belong.
|
:param language_id: The language to which the alternative book name belong.
|
||||||
"""
|
"""
|
||||||
log.debug('AlternativeBookNamesDB.create_alternative_book_name("%s", "%s", "%s")',
|
log.debug('AlternativeBookNamesDB.create_alternative_book_name("%s", "%s", "%s")' %
|
||||||
name, book_reference_id, language_id)
|
(name, book_reference_id, language_id))
|
||||||
return AlternativeBookNamesDB.run_sql(
|
return AlternativeBookNamesDB.run_sql(
|
||||||
'INSERT INTO alternative_book_names(book_reference_id, language_id, name) '
|
'INSERT INTO alternative_book_names(book_reference_id, language_id, name) '
|
||||||
'VALUES (?, ?, ?)', (book_reference_id, language_id, name), True)
|
'VALUES (?, ?, ?)', (book_reference_id, language_id, name), True)
|
||||||
|
Loading…
Reference in New Issue
Block a user