tab.py 848 Bytes
Newer Older
1 2 3 4 5 6
"""
These callables are used by django-wiki to check various permissions
a user has on an article.
"""

from django.conf import settings
7
from django.utils.translation import ugettext_noop
8

9
from courseware.tabs import EnrolledTab
10 11


12
class WikiTab(EnrolledTab):
13 14 15 16
    """
    Defines the Wiki view type that is shown as a course tab.
    """

17
    type = "wiki"
18
    title = ugettext_noop('Wiki')
19 20
    view_name = "course_wiki"
    is_hideable = True
21
    is_default = False
22 23 24 25 26 27 28 29 30 31

    @classmethod
    def is_enabled(cls, course, user=None):
        """
        Returns true if the wiki is enabled and the specified user is enrolled or has staff access.
        """
        if not settings.WIKI_ENABLED:
            return False
        if course.allow_public_wiki_access:
            return True
32
        return super(WikiTab, cls).is_enabled(course, user=user)