- Created a working "Full license" field for Bible editor.

Problem: If metadata does not already have full_license field = traceback.
This commit is contained in:
Olli Suutari 2016-09-15 01:20:33 +03:00
parent 690d5e770a
commit 0c93d6b032
3 changed files with 17 additions and 6 deletions

View File

@ -68,6 +68,14 @@ class Ui_EditBibleDialog(object):
self.permissions_edit.setObjectName('permissions_edit')
self.permissions_label.setBuddy(self.permissions_edit)
self.license_details_layout.addRow(self.permissions_label, self.permissions_edit)
# QTextEdit
self.full_license_label = QtWidgets.QLabel(self.license_details_group_box)
self.full_license_label.setObjectName('full_license_label')
self.full_license_edit = QtWidgets.QPlainTextEdit(self.license_details_group_box)
self.full_license_edit.setObjectName('full_license_edit')
self.full_license_label.setBuddy(self.full_license_edit)
self.license_details_layout.addRow(self.full_license_label, self.full_license_edit)
self.meta_tab_layout.addWidget(self.license_details_group_box)
self.language_selection_group_box = QtWidgets.QGroupBox(self.meta_tab)
self.language_selection_group_box.setObjectName('language_selection_group_box')
@ -132,6 +140,7 @@ class Ui_EditBibleDialog(object):
self.version_name_label.setText(translate('BiblesPlugin.EditBibleForm', 'Version name:'))
self.copyright_label.setText(translate('BiblesPlugin.EditBibleForm', 'Copyright:'))
self.permissions_label.setText(translate('BiblesPlugin.EditBibleForm', 'Permissions:'))
self.full_license_label.setText(translate('BiblesPlugin.EditBibleForm', 'Full license:'))
self.language_selection_group_box.setTitle(translate('BiblesPlugin.EditBibleForm', 'Default Bible Language'))
self.language_selection_label.setText(
translate('BiblesPlugin.EditBibleForm', 'Book name language in search field, search results and '

View File

@ -64,6 +64,7 @@ class EditBibleForm(QtWidgets.QDialog, Ui_EditBibleDialog, RegistryProperties):
self.version_name_edit.setText(self.manager.get_meta_data(self.bible, 'name').value)
self.copyright_edit.setText(self.manager.get_meta_data(self.bible, 'copyright').value)
self.permissions_edit.setText(self.manager.get_meta_data(self.bible, 'permissions').value)
self.full_license_edit.setPlainText(self.manager.get_meta_data(self.bible, 'full_license').value)
book_name_language = self.manager.get_meta_data(self.bible, 'book_name_language')
if book_name_language and book_name_language.value != 'None':
self.language_selection_combo_box.setCurrentIndex(int(book_name_language.value) + 1)
@ -107,6 +108,7 @@ class EditBibleForm(QtWidgets.QDialog, Ui_EditBibleDialog, RegistryProperties):
version = self.version_name_edit.text()
copyright = self.copyright_edit.text()
permissions = self.permissions_edit.text()
full_license = self.full_license_edit.toPlainText()
book_name_language = self.language_selection_combo_box.currentIndex() - 1
if book_name_language == -1:
book_name_language = None
@ -121,7 +123,7 @@ class EditBibleForm(QtWidgets.QDialog, Ui_EditBibleDialog, RegistryProperties):
if not self.validate_book(custom_names[abbr], abbr):
return
self.application.set_busy_cursor()
self.manager.save_meta_data(self.bible, version, copyright, permissions, book_name_language)
self.manager.save_meta_data(self.bible, version, copyright, permissions, full_license, book_name_language)
if not self.web_bible:
for abbr, book in self.books.items():
if book:

View File

@ -376,17 +376,17 @@ class BibleManager(RegistryProperties):
else:
return None
def save_meta_data(self, bible, version, copyright, permissions, book_name_language=None):
def save_meta_data(self, bible, version, copyright, permissions, full_license, book_name_language=None):
"""
Saves the bibles meta data.
"""
log.debug('save_meta data {bible}, {version}, {copyright}, {perms}'.format(bible=bible,
version=version,
copyright=copyright,
perms=permissions))
log.debug('save_meta data {bible}, {version}, {copyright},'
' {perms}, {full_license}'.format(bible=bible, version=version, copyright=copyright,
perms=permissions, full_license=full_license))
self.db_cache[bible].save_meta('name', version)
self.db_cache[bible].save_meta('copyright', copyright)
self.db_cache[bible].save_meta('permissions', permissions)
self.db_cache[bible].save_meta('full_license', full_license)
self.db_cache[bible].save_meta('book_name_language', book_name_language)
def get_meta_data(self, bible, key):