예제 #1
0
파일: receivers.py 프로젝트: Gastove/vrfy
def ProblemSet_pre_delete(sender, **kwargs):
    """
    deletes all courselabs in tango that belong to this problem set
    """
    ps = kwargs.get("instance")
    for problem in ps.problems.all():
        if problem.autograde_problem:
            try:
                tango.delete(problem, ps)
            except:
                log.info("DELETE: ProblemSet Could not remove {!s}".format(filename))
                pass
예제 #2
0
파일: receivers.py 프로젝트: Gastove/vrfy
def Problem_pre_delete(sender, **kwargs):
    """
    deletes all courselabs in tango that belong to this problem and all grading files in django
    """
    problem = kwargs.get("instance")
    # delete all the problem files
    shutil.rmtree(MEDIA_ROOT + problem.get_upload_folder())
    if problem.autograde_problem:
        for ps in problem.problemset_set.all():
            try:
                tango.delete(problem, ps)
            except:
                log.info("DELETE: Problem Could not remove {!s}".format(filename))
                pass
예제 #3
0
def ProblemSet_pre_delete(sender, **kwargs):
    """
    deletes all courselabs in tango that belong to this problem set
    """
    ps = kwargs.get("instance")
    for problem in ps.problems.all():
        if problem.autograde_problem:
            try:
                tango.delete(problem, ps)
            except:
                log.info(
                    "DELETE: ProblemSet Could not remove problem {!s} from problem set {!s}"
                    .format(problem, ps))
                pass
예제 #4
0
def Problem_pre_delete(sender, **kwargs):
    """
    deletes all courselabs in tango that belong to this problem and all grading files in django
    """
    problem = kwargs.get("instance")
    # delete all the problem files
    if os.path.isfile(MEDIA_ROOT + problem.get_upload_folder()):
        shutil.rmtree(MEDIA_ROOT + problem.get_upload_folder())
    if problem.autograde_problem:
        for ps in problem.problemset_set.all():
            try:
                tango.delete(problem, ps)
            except:
                log.info(
                    "DELETE: Problem Could not remove {!s}".format(problem))
                pass
예제 #5
0
파일: receivers.py 프로젝트: Gastove/vrfy
def GraderLib_pre_delete(sender, **kwargs):
    """
    Deletes the grader lib file from django and
    """
    gl = kwargs.get("instance")
    try:
        # removes if from problem_assets
        os.remove(MEDIA_ROOT + gl.lib_upload.name)
        name = gl.lib_upload.name.split("/")[-1]
        # remove all of the instances of it in tango
        for ps in models.ProblemSet.objects.all():
            for problem in ps.problems.all():
                if problem.autograde_problem:
                    tango.delete(problem, ps, name)

    except:
        log.info("DELETE: GraderLib Could not remove {!s}".format(filename))
        pass
예제 #6
0
def GraderLib_pre_delete(sender, **kwargs):
    """
    Deletes the grader lib file from django and
    """
    gl = kwargs.get("instance")
    name = gl.lib_upload.name.split("/")[-1]
    try:
        # removes if from problem_assets
        os.remove(MEDIA_ROOT + gl.lib_upload.name)
        # remove all of the instances of it in tango
        for ps in models.ProblemSet.objects.all():
            for problem in ps.problems.all():
                if problem.autograde_problem:
                    tango.delete(problem, ps, name)

    except:
        log.info("DELETE: GraderLib Could not remove {!s}".format(name))
        pass