Beispiel #1
0
def write_title(fieldmap, worksheet, language, directory=None):
    fields = get_interface_fields(fieldmap.interface)
    basefields = get_interface_fields(fieldmap.baseinterface)

    indexes = fieldmap.indexes()
    minix = min(indexes)
    maxix = max(indexes)

    write = lambda col, value: worksheet.write(
        0, col, value, colstyle(fieldmap, col)
    )

    for ix in xrange(minix, maxix + 1):
        field = fieldmap.indexmap[ix]
        typ = fieldmap.typename

        if field in fieldmap.titles:
            title = fieldmap.titles[field]
        elif directory and '.item' in typ and field in CATEGORIES:
            title = getattr(directory, field)
        elif field in fields:
            title = fields[field].title
        elif field in basefields:
            title = basefields[field].title
        else:
            title = field

        write(ix, translate(title, target_language=language))

    for childmap in fieldmap.children:
        write_title(childmap, worksheet, language)
Beispiel #2
0
def write_title(fieldmap, worksheet, language, directory=None):
    fields = get_interface_fields(fieldmap.interface)
    basefields = get_interface_fields(fieldmap.baseinterface)

    indexes = fieldmap.indexes()
    minix = min(indexes)
    maxix = max(indexes)

    write = lambda col, value: worksheet.write(0, col, value, colstyle(fieldmap, col))

    for ix in xrange(minix, maxix + 1):
        name = fieldmap.indexmap[ix]

        typ = fieldmap.typename
        title = None

        if directory and '.item' in typ and name in CATEGORIES:
            title = getattr(directory, name)

        if not title:
            if name in fields:
                title = fields[name].title
            elif name in basefields:
                title = basefields[name].title
            elif name in fieldmap.titles:
                title = fieldmap.titles[name]
            else:
                title = name

        write(ix, translate(title, target_language=language))

    for childmap in fieldmap.children:
        write_title(childmap, worksheet, language)
Beispiel #3
0
def add_defaults(attributes, fieldmap):
    mapfields = fieldmap.fieldmap.keys()

    # The whole reason to add these defaults is that by manually creating
    # these values they are not applied (and without defaults some objects
    # end up with missing attributes if the respective fields were left out).
    # Needs some more investigating...

    ifields = get_interface_fields(fieldmap.interface)
    fields = set(ifields.keys()) - set(mapfields)

    for field in fields:
        default = ifields[field].default
        attributes[field] = default
Beispiel #4
0
def add_defaults(attributes, fieldmap):
    mapfields = fieldmap.fieldmap.keys()

    # The whole reason to add these defaults is that by manually creating
    # these values they are not applied (and without defaults some objects
    # end up with missing attributes if the respective fields were left out).
    # Needs some more investigating...

    ifields = get_interface_fields(fieldmap.interface)
    fields = set(ifields.keys()) - set(mapfields)

    for field in fields:
        default = ifields[field].default
        attributes[field] = default
Beispiel #5
0
def get_required_fields(obj, fieldmap):
    fields = get_interface_fields(fieldmap.interface)
    return [k for k, v in fields.items() if v.required]
Beispiel #6
0
def get_required_fields(obj, fieldmap):
    fields = get_interface_fields(fieldmap.interface)
    return [k for k, v in fields.items() if v.required]