class Filler: def __init__(self, template): self.string_template = template self.parsed_template = self.parse(string_template) def render(self, tasks): pending_task_node = self.acquire('vtodo-task-pending') done_task_node = self.acquire('vtodo-task-pending') for task in tasks: if task.status == "pending": task_node = pending_task_node elif task.status == "done": task_node = done_task_node self.insert(pending_task_node, { 'vtodo-task-title': task.title }) return self.result() def parse(self, template): document = xml.dom.minidom.parseString(template) css_class_dict = get_css_class_dict(document) return document, css_class_dict def acquire(self, cssClass): pass def insert(self, node, values_dict): pass def result(self): pass