:py:mod:`oioioi.publicsolutions.controllers` ============================================ .. py:module:: oioioi.publicsolutions.controllers Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: oioioi.publicsolutions.controllers.PublicSolutionsContestControllerMixin .. py:class:: PublicSolutionsContestControllerMixin Bases: :py:obj:`object` ContestController mixin that sets up publicsolutions app. .. py:method:: can_see_publicsolutions(request, round) Determines whether solutions for the round have been published. :rtype: bool .. py:method:: solutions_must_be_public(qs) This fuction takes for a parameter a queryset with submissions for published rounds. It should return a filtered queryset with exactly these submissions for which solution is mandatorily public. .. py:method:: solutions_may_be_published(qs) This fuction takes for a parameter a queryset with submissions for published rounds. It should return a filtered queryset with exactly these submissions that a user can decide themself to (un)publish. You can assume that none of given submissions meets :meth:'solutions_must_be_public' predicate. At the start these submission are unpublished. .. py:method:: filter_visible_sources(request, qs)