104 lines
3.1 KiB
Python
104 lines
3.1 KiB
Python
"""
|
|
Access methods to get EditInfo for xblocks
|
|
"""
|
|
|
|
|
|
from abc import ABCMeta, abstractmethod
|
|
|
|
from xblock.core import XBlockMixin
|
|
|
|
|
|
class EditInfoMixin(XBlockMixin):
|
|
"""
|
|
Provides the interfaces for getting the edit info from XBlocks
|
|
"""
|
|
@property
|
|
def edited_by(self):
|
|
"""
|
|
The user id of the last user to change this xblock content, children, or settings.
|
|
"""
|
|
return self.runtime.get_edited_by(self)
|
|
|
|
@property
|
|
def edited_on(self):
|
|
"""
|
|
The datetime of the last change to this xblock content, children, or settings.
|
|
"""
|
|
return self.runtime.get_edited_on(self)
|
|
|
|
@property
|
|
def subtree_edited_by(self):
|
|
"""
|
|
The user id of the last user to change content, children, or settings in this xblock's subtree
|
|
"""
|
|
return self.runtime.get_subtree_edited_by(self)
|
|
|
|
@property
|
|
def subtree_edited_on(self):
|
|
"""
|
|
The datetime of the last change content, children, or settings in this xblock's subtree
|
|
"""
|
|
return self.runtime.get_subtree_edited_on(self)
|
|
|
|
@property
|
|
def published_by(self):
|
|
"""
|
|
The user id of the last user to publish this specific xblock (or a previous version of it).
|
|
"""
|
|
return self.runtime.get_published_by(self)
|
|
|
|
@property
|
|
def published_on(self):
|
|
"""
|
|
The datetime of the last time this specific xblock was published.
|
|
"""
|
|
return self.runtime.get_published_on(self)
|
|
|
|
|
|
class EditInfoRuntimeMixin(metaclass=ABCMeta):
|
|
"""
|
|
An abstract mixin class for the functions which the :class: `EditInfoMixin` methods call on the runtime
|
|
"""
|
|
|
|
@abstractmethod
|
|
def get_edited_by(self, xblock):
|
|
"""
|
|
The datetime of the last change to this xblock content, children, or settings.
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|
|
|
|
@abstractmethod
|
|
def get_edited_on(self, xblock):
|
|
"""
|
|
The datetime of the last change to this xblock content, children, or settings.
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|
|
|
|
@abstractmethod
|
|
def get_subtree_edited_by(self, xblock):
|
|
"""
|
|
The user id of the last user to change content, children, or settings in this xblock's subtree
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|
|
|
|
@abstractmethod
|
|
def get_subtree_edited_on(self, xblock):
|
|
"""
|
|
The datetime of the last change content, children, or settings in this xblock's subtree
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|
|
|
|
@abstractmethod
|
|
def get_published_by(self, xblock):
|
|
"""
|
|
The user id of the last user to publish this specific xblock (or a previous version of it).
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|
|
|
|
@abstractmethod
|
|
def get_published_on(self, xblock):
|
|
"""
|
|
The datetime of the last time this specific xblock was published.
|
|
"""
|
|
pass # lint-amnesty, pylint: disable=unnecessary-pass
|