|
@@ -1,61 +1,101 @@
|
|
|
-from django.contrib.auth.models import User
|
|
|
|
|
-from django.core.exceptions import ObjectDoesNotExist
|
|
|
|
|
-from django.http.response import Http404, HttpResponseRedirect
|
|
|
|
|
-from django.shortcuts import render, get_object_or_404, redirect
|
|
|
|
|
-
|
|
|
|
|
-from main.forms import StoryForm
|
|
|
|
|
-from main.models import Story
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-def index(request):
|
|
|
|
|
- try:
|
|
|
|
|
- user = User.objects.get(username=request.user)
|
|
|
|
|
- user_stories = list(user.stories.all())
|
|
|
|
|
- except ObjectDoesNotExist:
|
|
|
|
|
- user_stories = []
|
|
|
|
|
-
|
|
|
|
|
- return render(request, 'index.html', {'mes_stories': user_stories})
|
|
|
|
|
-
|
|
|
|
|
-def story_details(request, story_id):
|
|
|
|
|
- story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
- return render(request, 'story_details.html', {'story': story})
|
|
|
|
|
-
|
|
|
|
|
-def story_create(request):
|
|
|
|
|
- if request.method == 'POST':
|
|
|
|
|
-
|
|
|
|
|
- form = StoryForm(request.POST)
|
|
|
|
|
- if form.is_valid():
|
|
|
|
|
- story = form.save(commit=False)
|
|
|
|
|
- story.author = User.objects.get(username=request.user)
|
|
|
|
|
- story.save()
|
|
|
|
|
- return redirect("story_details", story.id)
|
|
|
|
|
-
|
|
|
|
|
- else:
|
|
|
|
|
- form = StoryForm()
|
|
|
|
|
-
|
|
|
|
|
- return render(request, 'story_form.html', {'form': form})
|
|
|
|
|
-
|
|
|
|
|
-def story_edit(request, story_id):
|
|
|
|
|
- if request.method == 'POST':
|
|
|
|
|
- story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
- form = StoryForm(request.POST, instance=story)
|
|
|
|
|
- if form.is_valid():
|
|
|
|
|
- form.save()
|
|
|
|
|
- return redirect("story_details", story.id)
|
|
|
|
|
-
|
|
|
|
|
- else:
|
|
|
|
|
- story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
- form = StoryForm(instance=story)
|
|
|
|
|
-
|
|
|
|
|
- return render(request, 'story_form.html', {'form': form})
|
|
|
|
|
-
|
|
|
|
|
-def story_delete(request, story_id):
|
|
|
|
|
- if request.method == 'POST':
|
|
|
|
|
- story = Story.objects.get(id=story_id)
|
|
|
|
|
- story.delete()
|
|
|
|
|
- return redirect("index")
|
|
|
|
|
- else:
|
|
|
|
|
- story = Story.objects.get(id=story_id)
|
|
|
|
|
- return render(request, 'deletion.html', {'object': story})
|
|
|
|
|
-
|
|
|
|
|
|
|
+from django.contrib.auth.models import User
|
|
|
|
|
+from django.shortcuts import render, get_object_or_404, redirect
|
|
|
|
|
+
|
|
|
|
|
+from main.forms import StoryForm, EpicForm
|
|
|
|
|
+from main.models import Story, Epic
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+def index(request):
|
|
|
|
|
+ epics = Epic.objects.all()
|
|
|
|
|
+ return render(request, 'index.html', {'epics': epics})
|
|
|
|
|
+
|
|
|
|
|
+def story_index(request):
|
|
|
|
|
+ stories = Story.objects.all()
|
|
|
|
|
+ return render(request, 'story_index.html', {'stories': stories})
|
|
|
|
|
+
|
|
|
|
|
+def story_details(request, story_id):
|
|
|
|
|
+ story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
+ return render(request, 'story_details.html', {'story': story})
|
|
|
|
|
+
|
|
|
|
|
+def story_create(request, epic_id):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+
|
|
|
|
|
+ form = StoryForm(request.POST)
|
|
|
|
|
+ if form.is_valid():
|
|
|
|
|
+ story = form.save(commit=False)
|
|
|
|
|
+ story.author = User.objects.get(username=request.user)
|
|
|
|
|
+ story.save()
|
|
|
|
|
+ return redirect("story_details", story.id)
|
|
|
|
|
+
|
|
|
|
|
+ else:
|
|
|
|
|
+ story = Story()
|
|
|
|
|
+ story.epic = get_object_or_404(Epic, id=epic_id)
|
|
|
|
|
+ form = StoryForm(instance=story)
|
|
|
|
|
+
|
|
|
|
|
+ return render(request, 'story_form.html', {'form': form})
|
|
|
|
|
+
|
|
|
|
|
+def story_edit(request, story_id):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+ story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
+ form = StoryForm(request.POST, instance=story)
|
|
|
|
|
+ if form.is_valid():
|
|
|
|
|
+ form.save()
|
|
|
|
|
+ return redirect("story_details", story.id)
|
|
|
|
|
+
|
|
|
|
|
+ else:
|
|
|
|
|
+ story = get_object_or_404(Story, id=story_id)
|
|
|
|
|
+ form = StoryForm(instance=story)
|
|
|
|
|
+
|
|
|
|
|
+ return render(request, 'story_form.html', {'form': form})
|
|
|
|
|
+
|
|
|
|
|
+def story_delete(request, story_id):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+ story = Story.objects.get(id=story_id)
|
|
|
|
|
+ story.delete()
|
|
|
|
|
+ return redirect("index")
|
|
|
|
|
+ else:
|
|
|
|
|
+ story = Story.objects.get(id=story_id)
|
|
|
|
|
+ return render(request, 'deletion.html', {'object': story})
|
|
|
|
|
+
|
|
|
|
|
+def epic_details(request, epic_id):
|
|
|
|
|
+ epic = get_object_or_404(Epic, id=epic_id)
|
|
|
|
|
+ return render(request, 'epic_details.html', {'epic': epic})
|
|
|
|
|
+
|
|
|
|
|
+def epic_create(request):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+
|
|
|
|
|
+ form = EpicForm(request.POST)
|
|
|
|
|
+ if form.is_valid():
|
|
|
|
|
+ epic = form.save(commit=False)
|
|
|
|
|
+ epic.author = User.objects.get(username=request.user)
|
|
|
|
|
+ epic.save()
|
|
|
|
|
+ return redirect("epic_details", epic.id)
|
|
|
|
|
+
|
|
|
|
|
+ else:
|
|
|
|
|
+ form = EpicForm()
|
|
|
|
|
+
|
|
|
|
|
+ return render(request, 'epic_form.html', {'form': form})
|
|
|
|
|
+
|
|
|
|
|
+def epic_edit(request, epic_id):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+ epic = get_object_or_404(Epic, id=epic_id)
|
|
|
|
|
+ form = EpicForm(request.POST, instance=epic)
|
|
|
|
|
+ if form.is_valid():
|
|
|
|
|
+ form.save()
|
|
|
|
|
+ return redirect("epic_details", epic.id)
|
|
|
|
|
+
|
|
|
|
|
+ else:
|
|
|
|
|
+ epic = get_object_or_404(Epic, id=epic_id)
|
|
|
|
|
+ form = EpicForm(instance=epic)
|
|
|
|
|
+
|
|
|
|
|
+ return render(request, 'epic_form.html', {'form': form})
|
|
|
|
|
+
|
|
|
|
|
+def epic_delete(request, epic_id):
|
|
|
|
|
+ if request.method == 'POST':
|
|
|
|
|
+ epic = Epic.objects.get(id=epic_id)
|
|
|
|
|
+ epic.delete()
|
|
|
|
|
+ return redirect("index")
|
|
|
|
|
+ else:
|
|
|
|
|
+ epic = Epic.objects.get(id=epic_id)
|
|
|
|
|
+ return render(request, 'deletion.html', {'object': epic})
|
|
|
|
|
|