Füge Unterstützung für deutsche Synchronfassungen hinzu und aktualisiere die Datumspräferenzen.
This commit is contained in:
@@ -80,7 +80,7 @@ class NewSeriesDialog(QDialog):
|
|||||||
|
|
||||||
# Datumspräferenz
|
# Datumspräferenz
|
||||||
self.date_pref = QComboBox()
|
self.date_pref = QComboBox()
|
||||||
self.date_pref.addItems(["Bevorzuge Erstausstrahlung", "Bevorzuge TV", "Bevorzuge Streaming"])
|
self.date_pref.addItems(["Bevorzuge Erstausstrahlung", "Bevorzuge TV", "Bevorzuge Streaming", "Bevorzuge deutsche Synchro"])
|
||||||
settings_layout.addRow("Datum Präferenz:", self.date_pref)
|
settings_layout.addRow("Datum Präferenz:", self.date_pref)
|
||||||
|
|
||||||
settings_group.setLayout(settings_layout)
|
settings_group.setLayout(settings_layout)
|
||||||
@@ -190,7 +190,7 @@ class SeriesEditDialog(QDialog):
|
|||||||
left_layout.addWidget(list_group)
|
left_layout.addWidget(list_group)
|
||||||
|
|
||||||
# Info Label
|
# Info Label
|
||||||
info_label = QLabel('v1.0 | © Akamaru | <a href="https://git.ponywave.de/Akamaru/Serien-Checker">Source auf PonyGit</a>')
|
info_label = QLabel('v1.1 | © Akamaru | <a href="https://git.ponywave.de/Akamaru/Serien-Checker">Source auf PonyGit</a>')
|
||||||
info_label.setOpenExternalLinks(True) # Erlaubt das Öffnen des Links
|
info_label.setOpenExternalLinks(True) # Erlaubt das Öffnen des Links
|
||||||
info_label.setTextFormat(Qt.RichText) # Aktiviert HTML-Formatierung
|
info_label.setTextFormat(Qt.RichText) # Aktiviert HTML-Formatierung
|
||||||
left_layout.addWidget(info_label)
|
left_layout.addWidget(info_label)
|
||||||
@@ -221,7 +221,7 @@ class SeriesEditDialog(QDialog):
|
|||||||
|
|
||||||
# Datumspräferenz
|
# Datumspräferenz
|
||||||
self.date_pref = QComboBox()
|
self.date_pref = QComboBox()
|
||||||
self.date_pref.addItems(["Bevorzuge Erstausstrahlung", "Bevorzuge TV", "Bevorzuge Streaming"])
|
self.date_pref.addItems(["Bevorzuge Erstausstrahlung", "Bevorzuge TV", "Bevorzuge Streaming", "Bevorzuge deutsche Synchro"])
|
||||||
settings_layout.addRow("Datum Präferenz:", self.date_pref)
|
settings_layout.addRow("Datum Präferenz:", self.date_pref)
|
||||||
|
|
||||||
# Speichern Button für Einstellungen
|
# Speichern Button für Einstellungen
|
||||||
@@ -489,6 +489,7 @@ class SerienChecker(QMainWindow):
|
|||||||
try:
|
try:
|
||||||
tv_date = None
|
tv_date = None
|
||||||
streaming_date = None
|
streaming_date = None
|
||||||
|
synchro_date = None
|
||||||
|
|
||||||
# Suche nach allen deutschen Premieren
|
# Suche nach allen deutschen Premieren
|
||||||
for ea_angabe in episode.find_all('ea-angabe'):
|
for ea_angabe in episode.find_all('ea-angabe'):
|
||||||
@@ -499,21 +500,24 @@ class SerienChecker(QMainWindow):
|
|||||||
titel = titel_elem.text.strip()
|
titel = titel_elem.text.strip()
|
||||||
logging.debug(f"Gefundene Premiere: {titel}")
|
logging.debug(f"Gefundene Premiere: {titel}")
|
||||||
|
|
||||||
if "Deutsche" in titel:
|
# Prüfe auf deutsche Daten
|
||||||
datum_elem = ea_angabe.find('ea-angabe-datum')
|
datum_elem = ea_angabe.find('ea-angabe-datum')
|
||||||
if datum_elem:
|
if datum_elem:
|
||||||
date_str = datum_elem.text.strip()
|
date_str = datum_elem.text.strip()
|
||||||
if '. ' in date_str:
|
if '. ' in date_str:
|
||||||
date_str = date_str.split('. ', 1)[1]
|
date_str = date_str.split('. ', 1)[1]
|
||||||
|
|
||||||
parsed_date = self.parse_date(date_str)
|
parsed_date = self.parse_date(date_str)
|
||||||
if parsed_date:
|
if parsed_date:
|
||||||
if "TV-Premiere" in titel:
|
if "TV-Premiere" in titel and "Deutsche" in titel:
|
||||||
tv_date = (parsed_date, date_str)
|
tv_date = (parsed_date, date_str)
|
||||||
logging.debug(f"Deutsche TV-Premiere gefunden: {date_str}")
|
logging.debug(f"Deutsche TV-Premiere gefunden: {date_str}")
|
||||||
elif "Streaming-Premiere" in titel:
|
elif "Streaming-Premiere" in titel and "Deutsche" in titel:
|
||||||
streaming_date = (parsed_date, date_str)
|
streaming_date = (parsed_date, date_str)
|
||||||
logging.debug(f"Deutsche Streaming-Premiere gefunden: {date_str}")
|
logging.debug(f"Deutsche Streaming-Premiere gefunden: {date_str}")
|
||||||
|
elif "deutschen Synchronfassung" in titel:
|
||||||
|
synchro_date = (parsed_date, date_str)
|
||||||
|
logging.debug(f"Deutsche Synchro-Premiere gefunden: {date_str}")
|
||||||
|
|
||||||
# Hole die Datumspräferenz für diese Serie
|
# Hole die Datumspräferenz für diese Serie
|
||||||
current_series = self.series_list.currentItem()
|
current_series = self.series_list.currentItem()
|
||||||
@@ -523,18 +527,31 @@ class SerienChecker(QMainWindow):
|
|||||||
else:
|
else:
|
||||||
pref = "Bevorzuge Erstausstrahlung"
|
pref = "Bevorzuge Erstausstrahlung"
|
||||||
|
|
||||||
|
# Prüfe zuerst auf Synchro-Präferenz
|
||||||
|
if pref == "Bevorzuge deutsche Synchro":
|
||||||
|
if synchro_date:
|
||||||
|
result = synchro_date[1]
|
||||||
|
logging.debug(f"Synchro-Premiere gewählt: {result}")
|
||||||
|
return result
|
||||||
|
else:
|
||||||
|
logging.debug("Keine Synchro-Premiere gefunden, zeige TBA")
|
||||||
|
return "TBA"
|
||||||
|
|
||||||
|
# Andere Präferenzen
|
||||||
if pref == "Bevorzuge TV" and tv_date:
|
if pref == "Bevorzuge TV" and tv_date:
|
||||||
result = tv_date[1]
|
result = tv_date[1]
|
||||||
logging.debug(f"TV-Premiere gewählt: {result}")
|
logging.debug(f"TV-Premiere gewählt: {result}")
|
||||||
elif pref == "Bevorzuge Streaming" and streaming_date:
|
elif pref == "Bevorzuge Streaming" and streaming_date:
|
||||||
result = streaming_date[1]
|
result = streaming_date[1]
|
||||||
logging.debug(f"Streaming-Premiere gewählt: {result}")
|
logging.debug(f"Streaming-Premiere gewählt: {result}")
|
||||||
else: # Bevorzuge Erstausstrahlung oder wenn bevorzugtes Datum nicht verfügbar
|
else: # Bevorzuge Erstausstrahlung
|
||||||
dates = []
|
dates = []
|
||||||
if tv_date:
|
if tv_date:
|
||||||
dates.append(tv_date)
|
dates.append(tv_date)
|
||||||
if streaming_date:
|
if streaming_date:
|
||||||
dates.append(streaming_date)
|
dates.append(streaming_date)
|
||||||
|
if synchro_date:
|
||||||
|
dates.append(synchro_date)
|
||||||
|
|
||||||
if dates:
|
if dates:
|
||||||
result = min(dates, key=lambda x: x[0])[1]
|
result = min(dates, key=lambda x: x[0])[1]
|
||||||
|
Reference in New Issue
Block a user