
* [x] Adds a ServiceRequest model for all service types * [x] Pre-define simple service requests to begin with * [x] Django admin for admins to handle requests * [x] Notifications for Matrix * [x] Moved Service Access to `services` app * [x] Auto-create default service requests for new memberships * [x] Most simple kinds of tests added * [x] Fix issue in generating service requests (check for service access firstly) * [ ] Channel and bot account ## Deployment 1. Create a bot account. Get an access token with: ``` curl -XPOST \ -d '{"type":"m.login.password", "user":"<userid>", "password":"<password>"}' \ "https://data.coop/_matrix/client/r0/login" ``` 2. Create an admin room for admins. Add admins + bot. Copy the room ID. 3. Add new environment variables for the setup `MATRIX_ACCESS_TOKEN` and `MATRIX_SERVICE_REQUEST_ADMIN_ROOM` Reviewed-on: https://git.data.coop/data.coop/membersystem/pulls/59 Co-authored-by: bbb <benjamin@overtag.dk> Co-committed-by: bbb <benjamin@overtag.dk>
27 lines
649 B
Python
27 lines
649 B
Python
"""Project views."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import TYPE_CHECKING
|
|
|
|
from accounting.models import Order
|
|
from django_view_decorator import view
|
|
from utils.view_utils import render
|
|
|
|
if TYPE_CHECKING:
|
|
from django.http import HttpRequest
|
|
from django.http import HttpResponse
|
|
|
|
|
|
@view(
|
|
paths="",
|
|
name="index",
|
|
login_required=True,
|
|
)
|
|
def index(request: HttpRequest) -> HttpResponse:
|
|
"""View to show the index page."""
|
|
unpaid_orders = Order.objects.filter(member=request.user, is_paid=False)
|
|
|
|
context = {"unpaid_orders": list(unpaid_orders)}
|
|
|
|
return render(request, "index.html", context=context)
|