from django.shortcuts import render, get_object_or_404, redirect
from django.core.paginator import Paginator
-from django.db.models.functions import ExtractYear
+from django.db.models.functions import ExtractYear, ExtractMonth
from pcdenotes.settings import NOTES_PER_PAGE
from .models import Note
def note_list(request):
notes = Note.objects.all() if request.user.is_staff else Note.objects.filter(status=1)
- notes_count = Note.objects.filter(status=1).count()
+ notes_count = notes.count()
paginator = Paginator(notes, NOTES_PER_PAGE)
page_number = 1
return render(request, 'note_detail.html', {'note': note})
def archive_main(request):
- notes_years = Note.objects.all().annotate(created_year=ExtractYear('created_at')).values_list('created_year', flat=True).distinct().order_by('created_year')
+ notes_years = Note.objects.years_with_total()
return render(request, 'archive_main.html', {'years': notes_years})
def archive_year(request, archive_year):
- return render(request, 'archive_year.html', {'year': archive_year})
+ notes_months = Note.objects.months_with_total(archive_year)
+ return render(request, 'archive_year.html', {'year': archive_year, 'months': notes_months})
def archive_month(request, archive_year, archive_month):
- return render(request, 'archive_month.html', {'year': archive_year, 'month': archive_month})
\ No newline at end of file
+ notes = Note.objects.per_month(archive_year, archive_month)
+ return render(request, 'archive_month.html', {'year': archive_year, 'month': archive_month, 'notes': notes})
\ No newline at end of file