Esempio n. 1
0
def imprint(self, key, value):
    """Translate imprint field."""
    _publication_year = self.get("publication_year")
    if _publication_year:
        raise UnexpectedValue(subfield="e", message="doubled publication year")
    pub_year = reverse_replace(clean_val("c", value, str), ".", "")
    self["publication_year"] = pub_year

    return {
        "place": reverse_replace(clean_val("a", value, str), ":", ""),
        "publisher": reverse_replace(clean_val("b", value, str), ",", ""),
        "date": pub_year,
    }
Esempio n. 2
0
def title(self, key, value):
    """Translates title."""
    if "title" in self:
        raise UnexpectedValue()

    if "b" in value:
        _alternative_titles = self.get("alternative_titles", [])
        _alternative_titles.append({
            "value":
            reverse_replace(clean_val("b", value, str), ".", ""),
            "type":
            "SUBTITLE",
        })
        self["alternative_titles"] = _alternative_titles
    return reverse_replace(clean_val("a", value, str, req=True), ".", "")
Esempio n. 3
0
def authors(self, key, value):
    """Translates authors."""
    _authors = self.get("authors", [])

    author = {
        "full_name":
        reverse_replace(clean_val("a", value, str, req=True), ".", ""),
    }
    _authors.append(author)
    return _authors