'Takes in a buffer and puts the generated pdf into that buffer.'

def generate_pdf(self, file_buffer):

    self.pdf = NumberedCanvas(file_buffer, pagesize=letter)
    self.draw_border()
    y_pos = self.draw_logos()
    self.second_page_available_height = ((y_pos - self.margin) - self.min_clearance)
    self.second_page_start_y_pos = y_pos
    y_pos = self.draw_title(y_pos)
    self.first_page_available_height = ((y_pos - self.margin) - self.min_clearance)
    y_pos = self.draw_course_info(y_pos)
    y_pos = self.draw_totals(y_pos)
    self.draw_footer(y_pos)
    self.pdf.insert_page_break()
    self.pdf.save()
