'Construct the file name for this book based on its metadata.'

def construct_file_name(self, id):

    authors = self.authors(id, index_is_id=True)
    if (not authors):
        authors = _('Unknown')
    author = ascii_filename(authors.split(',')[0].replace('|', ','))[:self.PATH_LIMIT].decode('ascii', 'replace')
    title = ascii_filename(self.title(id, index_is_id=True))[:self.PATH_LIMIT].decode('ascii', 'replace')
    name = ((title + '    -    ') + author)
    while name.endswith('.'):
        name = name[:(-1)]
    return name
