示例#1
0
# -*- coding: utf-8 -*-

# Standard library imports
# Third party imports
# Local application / specific library imports
from machina.apps.forum_tracking.abstract_models import AbstractForumReadTrack
from machina.apps.forum_tracking.abstract_models import AbstractTopicReadTrack
from machina.core.db.models import model_factory

ForumReadTrack = model_factory(AbstractForumReadTrack)
TopicReadTrack = model_factory(AbstractTopicReadTrack)
示例#2
0
# -*- coding: utf-8 -*-

# Standard library imports
# Third party imports
# Local application / specific library imports
from machina.apps.forum_conversation.abstract_models import AbstractPost
from machina.apps.forum_conversation.abstract_models import AbstractTopic
from machina.core.db.models import model_factory

Topic = model_factory(AbstractTopic)
Post = model_factory(AbstractPost)
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from machina.apps.forum_member.abstract_models import AbstractForumProfile
from machina.core.db.models import model_factory


ForumProfile = model_factory(AbstractForumProfile)
示例#4
0
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from machina.apps.forum.abstract_models import AbstractForum
from machina.core.db.models import model_factory


Forum = model_factory(AbstractForum)
示例#5
0
# -*- coding: utf-8 -*-

# Standard library imports
# Third party imports
import django

# Local application / specific library imports
from machina.apps.forum_tracking.abstract_models import AbstractForumReadTrack
from machina.apps.forum_tracking.abstract_models import AbstractTopicReadTrack
from machina.core.db.models import model_factory


ForumReadTrack = model_factory(AbstractForumReadTrack)
TopicReadTrack = model_factory(AbstractTopicReadTrack)


if django.VERSION < (1, 7):  # pragma: no cover
    from . import receivers  # noqa
示例#6
0
"""
    Forum conversation models
    =========================

    This module defines models provided by the ``forum_conversation`` application.

"""

from machina.apps.forum_conversation.abstract_models import AbstractPost, AbstractTopic
from machina.core.db.models import model_factory


Topic = model_factory(AbstractTopic)
Post = model_factory(AbstractPost)
示例#7
0
# -*- coding: utf-8 -*-

# Standard library imports
# Third party imports
import django

# Local application / specific library imports
from machina.apps.forum_permission.abstract_models import AbstractForumPermission
from machina.apps.forum_permission.abstract_models import AbstractGroupForumPermission
from machina.apps.forum_permission.abstract_models import AbstractUserForumPermission
from machina.core.db.models import model_factory

ForumPermission = model_factory(AbstractForumPermission)
GroupForumPermission = model_factory(AbstractGroupForumPermission)
UserForumPermission = model_factory(AbstractUserForumPermission)

if django.VERSION < (1, 7):  # pragma: no cover
    from . import receivers  # noqa
示例#8
0
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from machina.apps.forum_conversation.forum_attachments.abstract_models import AbstractAttachment
from machina.core.db.models import model_factory

Attachment = model_factory(AbstractAttachment)
示例#9
0
"""
    Forum polls models
    ==================

    This module defines models provided by the ``forum_polls`` application.

"""

from machina.apps.forum_conversation.forum_polls.abstract_models import (
    AbstractTopicPoll, AbstractTopicPollOption, AbstractTopicPollVote
)
from machina.core.db.models import model_factory


TopicPoll = model_factory(AbstractTopicPoll)
TopicPollOption = model_factory(AbstractTopicPollOption)
TopicPollVote = model_factory(AbstractTopicPollVote)
示例#10
0
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from machina.apps.forum_conversation.forum_polls.abstract_models import AbstractTopicPoll
from machina.apps.forum_conversation.forum_polls.abstract_models import AbstractTopicPollOption
from machina.apps.forum_conversation.forum_polls.abstract_models import AbstractTopicPollVote
from machina.core.db.models import model_factory

TopicPoll = model_factory(AbstractTopicPoll)
TopicPollOption = model_factory(AbstractTopicPollOption)
TopicPollVote = model_factory(AbstractTopicPollVote)
示例#11
0
"""
    Forum permission models
    =======================

    This module defines models provided by the ``forum_permission`` application.

"""

from machina.apps.forum_permission.abstract_models import (
    AbstractForumPermission, AbstractGroupForumPermission, AbstractUserForumPermission
)
from machina.core.db.models import model_factory


ForumPermission = model_factory(AbstractForumPermission)
GroupForumPermission = model_factory(AbstractGroupForumPermission)
UserForumPermission = model_factory(AbstractUserForumPermission)
示例#12
0
文件: models.py 项目: openfun/ashley
    # The number of time the topic has been viewed.
    # Add Index for sorting
    views_count = models.PositiveIntegerField(
        editable=False,
        blank=True,
        default=0,
        verbose_name=_("Views count"),
        db_index=True,
    )

    class Meta(MachinaAbstractTopic.Meta):
        abstract = True

    def get_active_users(self, user):
        # collect active users for this topic and exclude current user
        active_post_users = (User.objects.filter(
            is_active=True, posts__topic=self,
            posts__approved=True).exclude(pk=user.pk).distinct())

        list_active_users = [{
            "name": get_forum_member_display_name(user),
            "user": user.pk,
        } for user in active_post_users]

        return sorted(list_active_users, key=lambda i: i["name"])


Topic = model_factory(AbstractTopic)

from machina.apps.forum_conversation.models import *  # noqa
示例#13
0
# -*- coding: utf-8 -*-

# Standard library imports
# Third party imports
import django

# Local application / specific library imports
from machina.apps.forum.abstract_models import AbstractForum
from machina.core.db.models import model_factory


Forum = model_factory(AbstractForum)


if django.VERSION < (1, 7):  # pragma: no cover
    from .receivers import *  # noqa
示例#14
0
"""
    Forum attachments models
    ========================

    This module defines models provided by the ``forum_attachments`` application.

"""

from machina.apps.forum_conversation.forum_attachments.abstract_models import AbstractAttachment
from machina.core.db.models import model_factory


Attachment = model_factory(AbstractAttachment)
示例#15
0
文件: models.py 项目: openfun/ashley
    class Meta:
        """Options for the ``AbstractUser`` model."""

        abstract = True
        app_label = "ashley"

        constraints = [
            models.UniqueConstraint(
                fields=["lti_consumer", "lti_remote_user_id"],
                name="ashleyuser_unique_consumer_remote_user_id",
            ),
        ]


# Default implementation of the AbstractUser, using django-machina's model factory
User = model_factory(AbstractUser)


class AbstractLTIContext(Model):
    """Abstract LTI Context model for Ashley."""

    GROUP_PREFIX = "cg"
    GROUP_DELIMITER = ":"

    lti_id = models.CharField(max_length=150, null=False, blank=False, db_index=True)

    lti_consumer = models.ForeignKey(
        LTIConsumer, on_delete=models.PROTECT, null=False, db_index=True
    )

    # Indicates if forums of this class have been locked, this field is used