Got library working again

This commit is contained in:
Tris Forster
2023-02-16 17:22:18 +11:00
parent b85440d25c
commit 13f466228b
17 changed files with 427 additions and 140 deletions
@@ -6,27 +6,19 @@
<div class="card">
<a class="" href="{% url 'project_detail' project=project.id %}">
<header class="card-header{% if not project.active %} has-background-light{% endif %}">
<p class="card-header-title">{% if not ensemble %}{{ project.ensemble }}{% endif%} {{ project.name }}</p>
<p class="card-header-title">
{{ project.name }}
</p>
<p class="card-header-icon" style="color: black;">{{ project.rough_date }}</p>
</header>
</a>
<div class="card-content">
<div class="content">
{{ project.description | markdown }}
<div class="content" style="height: 100px; overflow: hidden">
{{ project.description | markdown }}
{% if not ensemble %}
<div class="has-text-centered"><i><small>With {{ project.ensemble }}</small></i></div>
{% endif %}
</div>
<p><small>
{% if project.deadline %}In {{ project.deadline|timeuntil }}<br/>{% endif %}
{% if project.submissions.count %}{{ project.submissions.count }} submissions<br/>{% endif %}
</small></p>
</div>
<div class="card-footer">
{% if 'library' in project.active_modules %}
{% with project.works.count as c %}
<a class="card-footer-item" href="{% url 'item_list' project=project.pk %}">
{{ c }} work{{ c | pluralize }}
</a>
{% endwith %}
{% endif %}
</div>
</div>
</div>
+9 -2
View File
@@ -5,9 +5,9 @@
from django.shortcuts import get_object_or_404, redirect, resolve_url
from django.views.generic import RedirectView
from django.views.generic.detail import DetailView
from django.views.generic.detail import DetailView, SingleObjectMixin
from django.views.generic.list import ListView
from django.views.generic.edit import CreateView, UpdateView
from django.views.generic.edit import CreateView, UpdateView, FormMixin
from django.core.exceptions import SuspiciousOperation
from django.http import Http404, HttpResponseRedirect
from django.db.models import Q
@@ -99,6 +99,8 @@ class AuthorizedResourceMixin(object):
return super().dispatch(request, *args, **kwargs)
# TODO: RevokeResourceView - increment nonce
class ForgetResourceView(AuthorizedResourceMixin, RedirectView):
def is_authorized(self):
@@ -239,6 +241,11 @@ class EnsembleDetailView(EnsembleMixin, DetailView):
data['ensemble_link'] = self.request.path + "?auth=" + self.ensemble.auth()
return data
class EnsembleRevokeView(SingleObjectMixin, RedirectView):
def get_redirect_url(self):
return
""" PROJECT VIEWS """
class ProjectListView(ProjectMixin, ListView):