Ejemplo n.º 1
0
def import_ergebnisse(request):
    data = {}

    if request.method == "POST":
        try:
            semester = Semester.objects.get(semester=request.POST["semester"])
        except (Semester.DoesNotExist, KeyError):
            return HttpResponseRedirect(reverse("import_ergebnisse"))

        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            warnings, errors, vcount, fbcount = parse_ergebnisse(semester, request.FILES["file"])
            if fbcount:
                messages.success(
                    request,
                    u"%u Veranstaltungen mit insgesamt %u Fragebögen wurden erfolgreich importiert."
                    % (vcount, fbcount),
                )
            else:
                warnings.append(u"Es konnten keine Fragebögen importiert werden.")

            for w in warnings:
                messages.warning(request, w)
            for e in errors:
                messages.error(request, e)
            return HttpResponseRedirect(reverse("sync_ergebnisse"))
        else:
            messages.error(request, "Fehler beim Upload")
    else:
        data["semester"] = Semester.objects.all()
        data["form"] = UploadFileForm()

    return render(request, "intern/import_ergebnisse.html", data)
Ejemplo n.º 2
0
def import_ergebnisse(request):
    data = {}

    if request.method == 'POST':
        try:
            semester = Semester.objects.get(semester=request.POST['semester'])
        except (Semester.DoesNotExist, KeyError):
            return HttpResponseRedirect(reverse('import_ergebnisse'))

        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            warnings, errors, vcount, fbcount = parse_ergebnisse(semester, request.FILES['file'])
            if fbcount:
                messages.success(request,
                    u'%u Veranstaltungen mit insgesamt %u Fragebögen wurden erfolgreich importiert.' %
                    (vcount, fbcount))
            else:
                warnings.append(u'Es konnten keine Fragebögen importiert werden.')

            for w in warnings:
                messages.warning(request, w)
            for e in errors:
                messages.error(request, e)
            return HttpResponseRedirect(reverse('sync_ergebnisse'))
        else:
            messages.error(request, 'Fehler beim Upload')
    else:
        data['semester'] = Semester.objects.all()
        data['form'] = UploadFileForm()

    return render(request, 'intern/import_ergebnisse.html', data)
Ejemplo n.º 3
0
def import_vv(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            # TODO: Fehlerbehandlung
            vv_parser.parse_vv_xml(request.FILES['file'])
            return HttpResponseRedirect(reverse('import_vv_edit'))
        else:
            messages.error(request, 'Fehler beim Upload')
    else:
        form = UploadFileForm()
    return render(request, 'intern/import_vv.html', {'form': form})
Ejemplo n.º 4
0
def import_vv(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            #TODO: Fehlerbehandlung
            vv_parser.parse_vv_xml(request.FILES['file'])
            return HttpResponseRedirect(reverse('import_vv_edit'))
        else:
            messages.error(request, 'Fehler beim Upload')
    else:
        form = UploadFileForm()
    return render(request, 'intern/import_vv.html', {'form': form})
Ejemplo n.º 5
0
def import_vv(request):
    """Zuständig für den Import des Vorlesungsverzeichnisses durch eine XML."""
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            # TODO: Fehlerbehandlung
            vv_parser.parse_vv_xml(request.FILES['file'])
            return HttpResponseRedirect(reverse('import_vv_edit'))
        else:
            messages.error(request, 'Fehler beim Upload')
    else:
        form = UploadFileForm()
    return render(request, 'intern/import_vv.html', {'form': form})