mobile dash layout provided; other styling inconsistencies corrected across views, scss & _applets.html template partial
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
from django.contrib import messages
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from django.db.models import Max, Q
|
||||
from django.http import HttpResponse, HttpResponseForbidden
|
||||
from django.shortcuts import redirect, render
|
||||
|
||||
@@ -17,6 +18,16 @@ PALETTES = [
|
||||
]
|
||||
|
||||
|
||||
def _recent_lists(user, limit=3):
|
||||
return (
|
||||
List
|
||||
.objects
|
||||
.filter(Q(owner=user) | Q(shared_with=user))
|
||||
.annotate(last_item=Max('item__id'))
|
||||
.order_by('-last_item')
|
||||
.distinct()[:limit]
|
||||
)
|
||||
|
||||
def _applet_context(user):
|
||||
ua_map = {ua.applet_id: ua.visible for ua in user.user_applets.all()}
|
||||
applets = {a.slug: a for a in Applet.objects.all()}
|
||||
@@ -26,10 +37,16 @@ def _applet_context(user):
|
||||
if slug in applets
|
||||
]
|
||||
|
||||
|
||||
def home_page(request):
|
||||
context = {"form": ItemForm(), "palettes": PALETTES, "page_class": "page-dashboard"}
|
||||
context = {
|
||||
"form": ItemForm(),
|
||||
"palettes": PALETTES,
|
||||
"page_class": "page-dashboard",
|
||||
}
|
||||
if request.user.is_authenticated:
|
||||
context["applets"] = _applet_context(request.user)
|
||||
context["recent_lists"] = _recent_lists(request.user)
|
||||
return render(request, "apps/dashboard/home.html", context)
|
||||
|
||||
def new_list(request):
|
||||
@@ -42,9 +59,14 @@ def new_list(request):
|
||||
form.save(for_list=nulist)
|
||||
return redirect(nulist)
|
||||
else:
|
||||
context = {"form": form, "palettes": PALETTES, "page_class": "page-dashboard"}
|
||||
context = {
|
||||
"form": form,
|
||||
"palettes": PALETTES,
|
||||
"page_class": "page-dashboard",
|
||||
}
|
||||
if request.user.is_authenticated:
|
||||
context["applets"] = _applet_context(request.user)
|
||||
context["recent_lists"] = _recent_lists(request.user)
|
||||
return render(request, "apps/dashboard/home.html", context)
|
||||
|
||||
def view_list(request, list_id):
|
||||
@@ -116,5 +138,6 @@ def toggle_applets(request):
|
||||
"applets": _applet_context(request.user),
|
||||
"palettes": PALETTES,
|
||||
"form": ItemForm(),
|
||||
"recent_lists": _recent_lists(request.user),
|
||||
})
|
||||
return redirect("home")
|
||||
|
||||
Reference in New Issue
Block a user