Beispiel #1
0
def has_previewable_files(files):
    """Check if any of the files is previewable."""
    # 'splitext' inclues the dot of the file extension in the
    # extension, we have to get rid of that
    extensions = [
        ext[1:] if ext.startswith(".") else ext
        for ext in (splitext(f["key"])[-1] for f in files)
    ]

    return any([is_previewable(ext.lower()) for ext in extensions])
Beispiel #2
0
def select_preview_file(files, default_preview=None):
    """Return file to preview or None if no previewable file."""
    selected = None
    for f in files or []:
        file_type = splitext(f.get("key", ""))[1][1:].lower()
        if is_previewable(file_type):
            if selected is None:
                selected = f
            elif f.get("key") == default_preview:
                return f
    return selected
Beispiel #3
0
def select_preview_file(files):
    """Get list of files and select one for preview."""
    selected = None

    try:
        for f in sorted(files or [], key=itemgetter('key')):
            file_type = splitext(f['key'])[1][1:].lower()
            if is_previewable(file_type):
                if selected is None:
                    selected = f
                elif f['default']:
                    selected = f
    except KeyError:
        pass
    return selected
Beispiel #4
0
def has_previewable_files(files):
    """Check if any of the files is previewable."""
    # 'splitext' inclues the dot of the file extension in the
    # extension, we have to get rid of that
    extensions = [splitext(f["key"])[-1].strip(".").lower() for f in files]
    return any([is_previewable(ext) for ext in extensions])
Beispiel #5
0
def select_previewable(files):
    """Return files that are previewable."""
    def extension(file):
        return splitext(file.get('key'))[1][1:].lower()

    return [f for f in files if is_previewable(extension(f))]