You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
813 B
22 lines
813 B
package models
|
|
|
|
import "time"
|
|
|
|
// A Chapter is a part of a story.
|
|
type Chapter struct {
|
|
ID string `bson:"_id"`
|
|
StoryID string `bson:"storyId"`
|
|
Title string `bson:"title"`
|
|
Author string `bson:"author"`
|
|
Source string `bson:"source"`
|
|
CreatedDate time.Time `bson:"createdDate"`
|
|
FictionalDate time.Time `bson:"fictionalDate,omitempty"`
|
|
EditedDate time.Time `bson:"editedDate"`
|
|
CommentMode ChapterCommentMode `bson:"commentMode"`
|
|
CommentsLocked bool `bson:"commentsLocked"`
|
|
}
|
|
|
|
// CanComment returns true if the chapter can be commented to.
|
|
func (chapter *Chapter) CanComment() bool {
|
|
return !chapter.CommentsLocked && chapter.CommentMode.IsEnabled()
|
|
}
|