Uploadfunktion!
This commit is contained in:
@@ -193,10 +193,14 @@ def favorite_quiz(request, pk):
|
||||
# Neues Quiz erstellen
|
||||
@login_required
|
||||
def new_quiz(request):
|
||||
|
||||
|
||||
if request.method == 'POST':
|
||||
quiz_image = request.FILES.get('quiz_image', None)
|
||||
form = QuizForm(request.POST, request.FILES)
|
||||
if form.is_valid():
|
||||
quiz = form.save(commit=False)
|
||||
quiz.image = quiz_image
|
||||
quiz.user_id = request.user
|
||||
#quiz.creator = request.user
|
||||
quiz.save()
|
||||
@@ -214,7 +218,16 @@ def edit_quiz(request, pk):
|
||||
if request.method == 'POST':
|
||||
form = QuizForm(request.POST, instance=quiz, files=request.FILES)
|
||||
if form.is_valid():
|
||||
|
||||
try:
|
||||
quiz_image = request.FILES['quiz_image']
|
||||
quiz.image=quiz_image
|
||||
quiz.save()
|
||||
except Exception:
|
||||
pass
|
||||
if 'reset_image' in request.POST:
|
||||
quiz.image = None
|
||||
|
||||
|
||||
form.save()
|
||||
return redirect('library:detail_quiz', pk=pk)
|
||||
#return modified(request, pk)
|
||||
@@ -228,7 +241,12 @@ def edit_quiz(request, pk):
|
||||
def delete_quiz(request, pk):
|
||||
quiz = get_object_or_404(QivipQuiz, pk=pk, user_id=request.user)
|
||||
if request.method == 'POST':
|
||||
if quiz.image:
|
||||
quiz.image = None # Entfernt das Bild aus der Datenbank, aber löscht es nicht
|
||||
quiz.save() # Speichere die Änderungen in der Datenbank
|
||||
|
||||
quiz.delete()
|
||||
|
||||
return redirect('library:overview_quiz')
|
||||
return render(request, 'library/delete_confirmation.html', {'object': quiz})
|
||||
|
||||
@@ -254,6 +272,7 @@ def detail_quiz(request, pk):
|
||||
@login_required
|
||||
def copy_quiz(request, pk):
|
||||
original_quiz = get_object_or_404(QivipQuiz, pk=pk)
|
||||
|
||||
|
||||
|
||||
# Quiz kopieren (ohne ID, damit ein neues Objekt erstellt wird)
|
||||
@@ -264,11 +283,10 @@ def copy_quiz(request, pk):
|
||||
new_quiz.pk = None # Setzt die ID auf None, damit Django es als neues Objekt erkennt
|
||||
new_quiz.uuid = uuid.uuid4() # Neue UUID generieren
|
||||
new_quiz.user_id = request.user # Neuer Besitzer ist der aktuelle User
|
||||
new_quiz.name += " - Kopie" # Optional: Name anpassen
|
||||
new_quiz.name += " - Kopie"
|
||||
new_quiz.base_quiz_id = pk
|
||||
new_quiz.rating_count = 0
|
||||
new_quiz.average_rating = 3.0
|
||||
#new_quiz.creator = original_quiz.creator or request.user
|
||||
new_quiz.save() # Speichern als neues Objekt
|
||||
# Optional: Beschreibung anpassen
|
||||
# Alle zugehörigen Fragen kopieren
|
||||
@@ -400,6 +418,8 @@ def new_question(request):
|
||||
@login_required
|
||||
def edit_question(request, pk):
|
||||
question = get_object_or_404(QivipQuestion, pk=pk, quiz_id__user_id=request.user)
|
||||
if 'reset_ques_image' in request.POST:
|
||||
question.image = None
|
||||
if question.quiz_id.user_id != request.user:
|
||||
return redirect('library:question_list')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user