36 listOfRoles = [
"Writer",
"Inker",
"Creator",
"Editor",
"Cartoonist",
"Colorist",
"Letterer",
"Penciller",
"Painter",
"Cover",
"Artist"]
38 if "authorList" in configDictionary.keys():
39 for authorE
in range(len(configDictionary[
"authorList"])):
42 authorDict = configDictionary[
"authorList"][authorE]
44 if "last-name" in authorDict.keys():
45 stringName.append(authorDict[
"last-name"])
46 if "first-name" in authorDict.keys():
47 stringName.append(authorDict[
"first-name"])
48 if "nickname" in authorDict.keys():
49 stringName.append(
"(" + authorDict[
"nickname"] +
")")
50 author[
"person"] =
",".join(stringName)
51 if "role" in authorDict.keys():
52 role = str(authorDict[
"role"]).title()
53 if "editor" in role.lower():
55 if "cover" in role.lower():
57 if role
in listOfRoles:
59 authorList.append(author)
61 if "characters" in configDictionary.keys():
62 for character
in configDictionary[
"characters"]:
63 taglist.append(character)
64 if "format" in configDictionary.keys():
65 for item
in configDictionary[
"format"]:
67 if "otherKeywords" in configDictionary.keys():
68 for item
in configDictionary[
"otherKeywords"]:
71 if "seriesName" in configDictionary.keys():
72 metadata[
"series"] = configDictionary[
"seriesName"]
73 if "title" in configDictionary.keys():
74 metadata[
"title"] = configDictionary[
"title"]
76 metadata[
"title"] =
"Unnamed comic"
77 if "publisherName" in configDictionary.keys():
78 metadata[
"publisher"] = configDictionary[
"publisherName"]
79 if "publishingDate" in configDictionary.keys():
80 date = QDate.fromString(configDictionary[
"publishingDate"], Qt.DateFormat.ISODate)
81 metadata[
"publicationMonth"] = date.month()
82 metadata[
"publicationYear"] = date.year()
83 if "seriesNumber" in configDictionary.keys():
84 metadata[
"issue"] = configDictionary[
"seriesNumber"]
85 if "seriesVolume" in configDictionary.keys():
86 metadata[
"volume"] = configDictionary[
"seriesVolume"]
87 if "genre" in configDictionary.keys():
88 if isinstance(configDictionary[
"genre"], dict):
90 for key
in configDictionary[
"genre"].keys():
92 metadata[
"genre"] = listKeys
94 metadata[
"genre"] = configDictionary[
"genre"]
95 if "language" in configDictionary.keys():
96 metadata[
"language"] = QLocale.languageToString(QLocale(configDictionary[
"language"]).language())
98 metadata[
"credits"] = authorList
100 metadata[
"tags"] = taglist
101 if "summary" in configDictionary.keys():
102 metadata[
"comments"] = configDictionary[
"summary"]
104 metadata[
"comments"] =
"File generated without summary"
108 basedata[
"appID"] =
"Krita"
109 basedata[
"lastModified"] = QDateTime.currentDateTimeUtc().toString(Qt.DateFormat.ISODate)
110 basedata[
"ComicBookInfo/1.0"] = metadata
113 return json.dumps(basedata)