272
def insert_problem_attempt(self, user, exercisename, date, complete,
295
frozenset(['problemid','loginid','date','complete','attempt']),
298
272
def write_problem_save(self, user, exercisename, date, text, dry=False):
299
273
"""Writes text to the problem_save table (for when the user saves an
300
274
exercise). Creates a new row, or overwrites an existing one if the