package fetdata import ( "html/template" "time" "golang-fave/engine/utils" "golang-fave/engine/wrapper" ) type BlogPost struct { wrap *wrapper.Wrapper object *utils.MySql_blog_post user *User category *BlogCategory } func (this *BlogPost) load() *BlogPost { return this } func (this *BlogPost) Id() int { if this == nil { return 0 } return this.object.A_id } func (this *BlogPost) User() *User { if this == nil { return nil } if this.user != nil { return this.user } this.user = (&User{wrap: this.wrap}).load() this.user.loadById(this.object.A_user) return this.user } func (this *BlogPost) Name() string { if this == nil { return "" } return this.object.A_name } func (this *BlogPost) Alias() string { if this == nil { return "" } return this.object.A_alias } func (this *BlogPost) Category() *BlogCategory { if this == nil { return nil } if this.category != nil { return this.category } this.category = (&BlogCategory{wrap: this.wrap}).load(nil) this.category.loadById(this.object.A_category) return this.category } func (this *BlogPost) Briefly() template.HTML { if this == nil { return template.HTML("") } return template.HTML(this.object.A_briefly) } func (this *BlogPost) Content() template.HTML { if this == nil { return template.HTML("") } return template.HTML(this.object.A_content) } func (this *BlogPost) DateTimeUnix() int { if this == nil { return 0 } return this.object.A_datetime } func (this *BlogPost) DateTimeFormat(format string) string { if this == nil { return "" } return time.Unix(int64(this.object.A_datetime), 0).Format(format) } func (this *BlogPost) Active() bool { if this == nil { return false } return this.object.A_active > 0 } func (this *BlogPost) Permalink() string { if this == nil { return "" } return "/blog/" + this.object.A_alias + "/" }