Ejemplo n.º 1
0
def add_original_names():
    for name in Name.select():
        if name.original_citation and not name.original_name:
            message = u"Name {} is missing an original name, but has original citation {{{}}}:{}".format(
                name.description(), name.original_citation, name.page_described
            )
            name.original_name = getinput.get_line(message, handlers={"o": lambda _: name.open_description()})
            if not name.page_described:
                name.page_described = getinput.get_line(
                    "Enter page described",
                    handlers={"o": lambda _: name.open_description()},
                    should_stop=lambda line: line == "s",
                )
            name.save()
Ejemplo n.º 2
0
def add_page_described():
    for name in Name.filter(
        Name.original_citation != None, Name.page_described >> None, Name.year != "in press"
    ).order_by(Name.original_citation):
        message = "Name %s is missing page described, but has original citation {%s}" % (
            name.description(),
            name.original_citation,
        )
        name.page_described = getinput.get_line(
            message, handlers={"o": lambda _: name.open_description()}, should_stop=lambda line: line == "s"
        )
        name.save()
Ejemplo n.º 3
0
def add_types():
    for name in Name.filter(
        Name.original_citation != None, Name.type >> None, Name.year > "1930", Name.group == db.constants.GROUP_GENUS
    ).order_by(Name.original_citation):
        name.taxon.display(full=True, max_depth=1)
        message = "Name %s is missing type, but has original citation {%s}" % (
            name.description(),
            name.original_citation,
        )
        verbatim_type = getinput.get_line(
            message, handlers={"o": lambda _: name.open_description()}, should_stop=lambda line: line == "s"
        )
        if verbatim_type is not None:
            name.detect_and_set_type(verbatim_type, verbose=True)