Commit 8aec3589 by Waheed Ahmed Committed by Bill DeRusha

Added comments publisher/models.py

parent db3ef892
...@@ -121,6 +121,9 @@ class Course(TimeStampedModel, ChangedByMixin): ...@@ -121,6 +121,9 @@ class Course(TimeStampedModel, ChangedByMixin):
@property @property
def project_coordinator(self): def project_coordinator(self):
"""
Return course project coordinator user.
"""
try: try:
return self.course_user_roles.get(role=PublisherUserRole.ProjectCoordinator).user return self.course_user_roles.get(role=PublisherUserRole.ProjectCoordinator).user
except CourseUserRole.DoesNotExist: except CourseUserRole.DoesNotExist:
...@@ -139,6 +142,9 @@ class Course(TimeStampedModel, ChangedByMixin): ...@@ -139,6 +142,9 @@ class Course(TimeStampedModel, ChangedByMixin):
@property @property
def course_team_admin(self): def course_team_admin(self):
"""
Return course team user.
"""
try: try:
return self.course_user_roles.get(role=PublisherUserRole.CourseTeam).user return self.course_user_roles.get(role=PublisherUserRole.CourseTeam).user
except CourseUserRole.DoesNotExist: except CourseUserRole.DoesNotExist:
...@@ -151,6 +157,9 @@ class Course(TimeStampedModel, ChangedByMixin): ...@@ -151,6 +157,9 @@ class Course(TimeStampedModel, ChangedByMixin):
@property @property
def marketing_reviewer(self): def marketing_reviewer(self):
"""
Return course marketing reviewer user.
"""
try: try:
return self.course_user_roles.get(role=PublisherUserRole.MarketingReviewer).user return self.course_user_roles.get(role=PublisherUserRole.MarketingReviewer).user
except CourseUserRole.DoesNotExist: except CourseUserRole.DoesNotExist:
...@@ -166,6 +175,9 @@ class Course(TimeStampedModel, ChangedByMixin): ...@@ -166,6 +175,9 @@ class Course(TimeStampedModel, ChangedByMixin):
@property @property
def publisher(self): def publisher(self):
"""
Return course publisher user.
"""
try: try:
return self.course_user_roles.get(role=PublisherUserRole.Publisher).user return self.course_user_roles.get(role=PublisherUserRole.Publisher).user
except CourseUserRole.DoesNotExist: except CourseUserRole.DoesNotExist:
...@@ -346,6 +358,9 @@ class Seat(TimeStampedModel, ChangedByMixin): ...@@ -346,6 +358,9 @@ class Seat(TimeStampedModel, ChangedByMixin):
@property @property
def is_valid_seat(self): def is_valid_seat(self):
"""
Check that seat is valid or not.
"""
return self.type == self.AUDIT or self.type in [self.VERIFIED, self.PROFESSIONAL] and self.price > 0 return self.type == self.AUDIT or self.type in [self.VERIFIED, self.PROFESSIONAL] and self.price > 0
...@@ -498,6 +513,9 @@ class CourseState(TimeStampedModel, ChangedByMixin): ...@@ -498,6 +513,9 @@ class CourseState(TimeStampedModel, ChangedByMixin):
pass pass
def change_state(self, state, user): def change_state(self, state, user):
"""
Change course workflow state and ownership also send emails if required.
"""
if state == CourseStateChoices.Draft: if state == CourseStateChoices.Draft:
self.draft() self.draft()
elif state == CourseStateChoices.Review: elif state == CourseStateChoices.Review:
...@@ -527,6 +545,7 @@ class CourseState(TimeStampedModel, ChangedByMixin): ...@@ -527,6 +545,7 @@ class CourseState(TimeStampedModel, ChangedByMixin):
@property @property
def is_approved(self): def is_approved(self):
""" Check that course is approved or not."""
return self.name == CourseStateChoices.Approved return self.name == CourseStateChoices.Approved
...@@ -582,6 +601,9 @@ class CourseRunState(TimeStampedModel, ChangedByMixin): ...@@ -582,6 +601,9 @@ class CourseRunState(TimeStampedModel, ChangedByMixin):
emails.send_course_run_published_email(self.course_run) emails.send_course_run_published_email(self.course_run)
def change_state(self, state, user): def change_state(self, state, user):
"""
Change course run workflow state and ownership also send emails if required.
"""
if state == CourseRunStateChoices.Draft: if state == CourseRunStateChoices.Draft:
self.draft() self.draft()
elif state == CourseRunStateChoices.Review: elif state == CourseRunStateChoices.Review:
...@@ -615,24 +637,31 @@ class CourseRunState(TimeStampedModel, ChangedByMixin): ...@@ -615,24 +637,31 @@ class CourseRunState(TimeStampedModel, ChangedByMixin):
self.save() self.save()
def change_owner_role(self, role): def change_owner_role(self, role):
"""
Change ownership role.
"""
self.owner_role = role self.owner_role = role
self.owner_role_modified = timezone.now() self.owner_role_modified = timezone.now()
self.save() self.save()
@property @property
def is_preview_accepted(self): def is_preview_accepted(self):
""" Check that preview is accepted or not."""
return self.preview_accepted return self.preview_accepted
@property @property
def is_approved(self): def is_approved(self):
""" Check that course run is approved or not."""
return self.name == CourseRunStateChoices.Approved return self.name == CourseRunStateChoices.Approved
@property @property
def is_ready_to_publish(self): def is_ready_to_publish(self):
""" Check that course run is ready to publish or not."""
return self.is_approved and self.is_preview_accepted return self.is_approved and self.is_preview_accepted
@property @property
def is_published(self): def is_published(self):
""" Check that course run is published or not."""
return self.name == CourseRunStateChoices.Published return self.name == CourseRunStateChoices.Published
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment