mirror of
https://github.com/JimmXinu/FanFicFare.git
synced 2026-05-09 05:21:13 +02:00
Add plugin options to mark success/failed/chapter error individually.
This commit is contained in:
parent
4b8392bb22
commit
d9ae30cfe3
3 changed files with 55 additions and 16 deletions
|
|
@ -5,7 +5,7 @@ from __future__ import (unicode_literals, division, absolute_import,
|
|||
import six
|
||||
|
||||
__license__ = 'GPL v3'
|
||||
__copyright__ = '2020, Jim Miller'
|
||||
__copyright__ = '2021, Jim Miller'
|
||||
__docformat__ = 'restructuredtext en'
|
||||
|
||||
import logging
|
||||
|
|
@ -284,6 +284,9 @@ class ConfigWidget(QWidget):
|
|||
prefs['updateepubcover'] = self.basic_tab.updateepubcover.isChecked()
|
||||
prefs['keeptags'] = self.basic_tab.keeptags.isChecked()
|
||||
prefs['mark'] = self.basic_tab.mark.isChecked()
|
||||
prefs['mark_success'] = self.basic_tab.mark_success.isChecked()
|
||||
prefs['mark_failed'] = self.basic_tab.mark_failed.isChecked()
|
||||
prefs['mark_chapter_error'] = self.basic_tab.mark_chapter_error.isChecked()
|
||||
prefs['showmarked'] = self.basic_tab.showmarked.isChecked()
|
||||
prefs['autoconvert'] = self.basic_tab.autoconvert.isChecked()
|
||||
prefs['show_est_time'] = self.basic_tab.show_est_time.isChecked()
|
||||
|
|
@ -541,6 +544,35 @@ class BasicTab(QWidget):
|
|||
self.mark.setChecked(prefs['mark'])
|
||||
self.l.addWidget(self.mark)
|
||||
|
||||
horz = QHBoxLayout()
|
||||
horz.addItem(QtGui.QSpacerItem(20, 1))
|
||||
self.l.addLayout(horz)
|
||||
|
||||
self.mark_success = QCheckBox(_("Success"),self)
|
||||
self.mark_success.setToolTip(_("Mark successfully downloaded or updated books."))
|
||||
self.mark_success.setChecked(prefs['mark_success'])
|
||||
self.mark_success.setEnabled(self.checkforseriesurlid.isChecked())
|
||||
horz.addWidget(self.mark_success)
|
||||
|
||||
self.mark_failed = QCheckBox(_("Failed"),self)
|
||||
self.mark_failed.setToolTip(_("Mark failed downloaded or updated books."))
|
||||
self.mark_failed.setChecked(prefs['mark_failed'])
|
||||
self.mark_failed.setEnabled(self.checkforseriesurlid.isChecked())
|
||||
horz.addWidget(self.mark_failed)
|
||||
|
||||
self.mark_chapter_error = QCheckBox(_("Chapter Error"),self)
|
||||
self.mark_chapter_error.setToolTip(_("Mark downloaded or updated books with chapter errors (only when <i>continue_on_chapter_error:true</i>)."))
|
||||
self.mark_chapter_error.setChecked(prefs['mark_chapter_error'])
|
||||
self.mark_chapter_error.setEnabled(self.checkforseriesurlid.isChecked())
|
||||
horz.addWidget(self.mark_chapter_error)
|
||||
|
||||
def mark_state():
|
||||
self.mark_success.setEnabled(self.mark.isChecked())
|
||||
self.mark_failed.setEnabled(self.mark.isChecked())
|
||||
self.mark_chapter_error.setEnabled(self.mark.isChecked())
|
||||
self.mark.stateChanged.connect(mark_state)
|
||||
mark_state()
|
||||
|
||||
self.showmarked = QCheckBox(_("Show Marked books when finished?"),self)
|
||||
self.showmarked.setToolTip(_("Show Marked added/updated books only when finished.\nYou can also manually search for 'marked:fff_success'.\n'marked:fff_failed' and 'marked:fff_chapter_error' are also available, or search 'marked:fff' for all."))
|
||||
self.showmarked.setChecked(prefs['showmarked'])
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import six
|
|||
from six.moves import range
|
||||
|
||||
__license__ = 'GPL v3'
|
||||
__copyright__ = '2020, Jim Miller'
|
||||
__copyright__ = '2021, Jim Miller'
|
||||
__docformat__ = 'restructuredtext en'
|
||||
|
||||
from .fanficfare.six import ensure_text, string_types, text_type as unicode
|
||||
|
|
@ -1800,20 +1800,24 @@ class FanFicFarePlugin(InterfaceAction):
|
|||
db = self.gui.current_db
|
||||
marked_ids = dict()
|
||||
marked_text = "fff"
|
||||
for index, book_id in enumerate(all_ids):
|
||||
marked_ids[book_id] = '%s_success_%04d' % (marked_text, index)
|
||||
for index, book_id in enumerate(failed_ids):
|
||||
marked_ids[book_id] = '%s_failed_%04d' % (marked_text, index)
|
||||
for index, book_id in enumerate(chapter_error_ids):
|
||||
marked_ids[book_id] = '%s_chapter_error_%04d' % (marked_text, index)
|
||||
# Mark the results in our database
|
||||
db.set_marked_ids(marked_ids)
|
||||
if prefs['mark_success']:
|
||||
for index, book_id in enumerate(all_ids):
|
||||
marked_ids[book_id] = '%s_success_%04d' % (marked_text, index)
|
||||
if prefs['mark_failed']:
|
||||
for index, book_id in enumerate(failed_ids):
|
||||
marked_ids[book_id] = '%s_failed_%04d' % (marked_text, index)
|
||||
if prefs['mark_chapter_error']:
|
||||
for index, book_id in enumerate(chapter_error_ids):
|
||||
marked_ids[book_id] = '%s_chapter_error_%04d' % (marked_text, index)
|
||||
if marked_ids:
|
||||
# Mark the results in our database
|
||||
db.set_marked_ids(marked_ids)
|
||||
|
||||
if prefs['showmarked']: # show add/update
|
||||
# Search to display the list contents
|
||||
self.gui.search.set_search_string('marked:' + marked_text)
|
||||
# Sort by our marked column to display the books in order
|
||||
self.gui.library_view.sort_by_named_field('marked', True)
|
||||
if prefs['showmarked']: # show add/update
|
||||
# Search to display the list contents
|
||||
self.gui.search.set_search_string('marked:' + marked_text)
|
||||
# Sort by our marked column to display the books in order
|
||||
self.gui.library_view.sort_by_named_field('marked', True)
|
||||
|
||||
logger.debug(_('Finished Adding/Updating %d books.')%(len(update_list) + len(add_list)))
|
||||
self.gui.status_bar.show_message(_('Finished Adding/Updating %d books.')%(len(update_list) + len(add_list)), 3000)
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ from __future__ import (unicode_literals, division, absolute_import,
|
|||
print_function)
|
||||
|
||||
__license__ = 'GPL v3'
|
||||
__copyright__ = '2020, Jim Miller'
|
||||
__copyright__ = '2021, Jim Miller'
|
||||
__docformat__ = 'restructuredtext en'
|
||||
|
||||
import logging
|
||||
|
|
@ -132,6 +132,9 @@ default_prefs['authorcase'] = False
|
|||
default_prefs['titlecase'] = False
|
||||
default_prefs['setanthologyseries'] = False
|
||||
default_prefs['mark'] = False
|
||||
default_prefs['mark_success'] = True
|
||||
default_prefs['mark_failed'] = True
|
||||
default_prefs['mark_chapter_error'] = True
|
||||
default_prefs['showmarked'] = False
|
||||
default_prefs['autoconvert'] = False
|
||||
default_prefs['urlsfromclip'] = True
|
||||
|
|
|
|||
Loading…
Reference in a new issue