mirror of
https://git.cmoser.eu/tinytools/django-tinywiki.git
synced 2026-02-04 06:06:33 +01:00
2025.09.17-19:07:57
This commit is contained in:
@@ -34,9 +34,53 @@ class WikiContentType(StrEnum):
|
||||
|
||||
def __repr__(self):
|
||||
return f"<{self.__qualname__}: {self.value.upper()}>"
|
||||
|
||||
|
||||
WIKI_CONTENT_TYPES = (
|
||||
WikiContentType.MARKDOWN,
|
||||
WikiContentType.BBCODE,
|
||||
)
|
||||
|
||||
class WikiPageStatus(StrEnum):
|
||||
IN_PROGRESS = "in_progress"
|
||||
DRAFT = "draft"
|
||||
PUBLISHED = "published"
|
||||
|
||||
@staticmethod
|
||||
def from_string(string:str)->"WikiPageStatus":
|
||||
mapping = {
|
||||
WikiPageStatus.IN_PROGRESS.value: WikiPageStatus.IN_PROGRESS,
|
||||
WikiPageStatus.DRAFT.value: WikiPageStatus.DRAFT,
|
||||
WikiPageStatus.PUBLISHED: WikiPageStatus.PUBLISHED,
|
||||
}
|
||||
return mapping[string.lower()]
|
||||
|
||||
@property
|
||||
def str_raw(self)->str:
|
||||
mapping = {
|
||||
WikiPageStatus.IN_PROGRESS: _("in progress"),
|
||||
WikiPageStatus.DRAFT: _("draft"),
|
||||
WikiPageStatus.PUBLISHED: _("published"),
|
||||
}
|
||||
return mapping[self]
|
||||
|
||||
|
||||
|
||||
@property
|
||||
def str_lazy(self)->str:
|
||||
return gettext_lazy(self.str_raw)
|
||||
|
||||
@property
|
||||
def str(self)->str:
|
||||
return gettext(self.str_raw)
|
||||
|
||||
def __str__(self):
|
||||
return self.str
|
||||
|
||||
def __repr__(self):
|
||||
return f"<{self.__qualname__}: {self.value.upper()}>"
|
||||
|
||||
WIKI_PAGE_STATUS = (
|
||||
WikiPageStatus.IN_PROGRESS,
|
||||
WikiPageStatus.DRAFT,
|
||||
WikiPageStatus.PUBLISHED,
|
||||
)
|
||||
Reference in New Issue
Block a user