コード例 #1
0
    def is_visible_q(prefix, user):
        if user.is_anonymous():
            return prefix_q(prefix, status='active')
        elif user.is_superuser:
            return Q()

        return (prefix_q(prefix, status='active') |
                (~prefix_q(prefix, status='deleted')
                 & prefix_q(prefix, teams__users=user)))
コード例 #2
0
    def is_visible_q(cls, prefix, user):
        if user.is_anonymous():
            return Version.is_visible_q(prefix + 'version__', user) & prefix_q(
                prefix, status='active')
        elif user.is_superuser:
            return Q()

        return Version.is_visible_q(prefix + 'version__', user) & (
            prefix_q(prefix, status='active')
            | cls.is_visible_if_hidden_q(prefix, user))
コード例 #3
0
    def is_visible_q(prefix, user):
        if user.is_anonymous():
            return prefix_q(prefix, status='active')
        elif user.is_superuser:
            return Q()

        return (prefix_q(prefix, status='active') |
                (~prefix_q(prefix, status='deleted') &
                 (prefix_q(prefix, oreuser=user)
                  | prefix_q(prefix, organization__teams__users=user))))
コード例 #4
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_q(cls, prefix, user):
        if user.is_anonymous():
            return Version.is_visible_q(prefix + 'version__', user) & prefix_q(prefix, status='active')
        elif user.is_superuser:
            return Q()

        return Version.is_visible_q(prefix + 'version__', user) & (
            prefix_q(prefix, status='active') |
            cls.is_visible_if_hidden_q(prefix, user)
        )
コード例 #5
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_q(prefix, user):
        if user.is_anonymous():
            return prefix_q(prefix, status='active')
        elif user.is_superuser:
            return Q()

        return (
            prefix_q(prefix, status='active') |
            (
                ~prefix_q(prefix, status='deleted') &
                prefix_q(prefix, teams__users=user)
            )
        )
コード例 #6
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_q(prefix, user):
        if user.is_anonymous():
            return prefix_q(prefix, status='active')
        elif user.is_superuser:
            return Q()

        return (
            prefix_q(prefix, status='active') |
            (
                ~prefix_q(prefix, status='deleted') &
                (
                    prefix_q(prefix, oreuser=user) |
                    prefix_q(prefix, organization__teams__users=user)
                )
            )
        )
コード例 #7
0
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix,
                         status='deleted') & Project.is_visible_if_hidden_q(
                             prefix + 'project__', user)
コード例 #8
0
    def is_visible_q(cls, prefix, user):
        if user.is_superuser:
            return Q()

        return Project.is_visible_q(prefix + 'project__', user) & (
            prefix_q(prefix, status='active')
            | cls.is_visible_if_hidden_q(prefix, user))
コード例 #9
0
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix,
                         status='deleted') & Version.is_visible_if_hidden_q(
                             prefix + 'version__', user)
コード例 #10
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_q(cls, prefix, user):
        if user.is_superuser:
            return Q()

        return Project.is_visible_q(prefix + 'project__', user) & (
            prefix_q(prefix, status='active') |
            cls.is_visible_if_hidden_q(prefix, user)
        )
コード例 #11
0
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix, status='deleted') & (
            (prefix_q(prefix, teams__users=user)) |
            (prefix_q(prefix, namespace__oreuser=user)) |
            ((prefix_q(prefix,
                       namespace__organization__teams__is_all_projects=True)
              | prefix_q(prefix,
                         namespace__organization__teams__projects__id=F('id')))
             & prefix_q(prefix, namespace__organization__teams__users=user)))
コード例 #12
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix, status='deleted') & (
            (prefix_q(prefix, teams__users=user)) |
            (prefix_q(prefix, namespace__oreuser=user)) |
            (
                (
                    prefix_q(prefix, namespace__organization__teams__is_all_projects=True) |
                    prefix_q(prefix, namespace__organization__teams__projects__id=F('id'))
                ) &
                prefix_q(prefix, namespace__organization__teams__users=user)
            )
        )
コード例 #13
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix, status='deleted') & Project.is_visible_if_hidden_q(prefix + 'project__', user)
コード例 #14
0
ファイル: models.py プロジェクト: ThunderGemios10/Ore
    def is_visible_if_hidden_q(prefix, user):
        if user.is_anonymous():
            return Q()

        return ~prefix_q(prefix, status='deleted') & Version.is_visible_if_hidden_q(prefix + 'version__', user)