def __init__(self, yaml_dict): self.title = viewutils.mini_markdown(yaml_dict['Title']) self.author = yaml_dict['Author'] self.publication_date = self.modified_date = self.date = yaml_dict['Date'] self.url = yaml_dict.get('URL', None) self.isbn = yaml_dict.get('ISBN', None) self.rating = yaml_dict.get('Rating', None) self.tags = frozenset() self.guid = yaml_dict['GUID']
def __init__(self, dir, name): content_filename = os.path.join(dir, name + '.txt') self.id = name.decode('utf8') # not really a MIME document, but parse it like one msg = email.message_from_file(open(content_filename, 'r')) self.metadata = cleanup_metadata(msg.items()) self.body = viewutils.markdown(msg.get_payload().decode('utf8')) self.title = viewutils.mini_markdown(self.metadata['title']) raw_tags = self.metadata.get('tags', '').strip() if raw_tags: self.tags = frozenset(tag.strip() for tag in raw_tags.split(',')) else: self.tags = frozenset() self.modified_date = datetime.fromtimestamp(os.path.getmtime(content_filename)) self.publication_date = self.metadata.get('publication-date', None) or self.modified_date self.guid = self.metadata['guid'] self.language = self.metadata.get('language', None)