import { environment } from "src/environments/environment"
import { TagModel } from "./tag.mmodel"
import { GroupModel } from "./group.mmodel"

export interface CourseModel {
    logId: string
    thName: string
    engName: string
    thDesc: string
    engDesc: string
    objective: string
    courseOutline: string
    thumbnail: string
    link1: string
    courseType: string
    courseLevel: string
    courseTime: string
    courseTrainer: string
    courseTrainerDetail: string
    courseObj: string
    uploadBy: string
    uploadDate: string
    uploadTime: string
    remark: string
    status: number
    approveBy: string
    approveDate: string
    approveTime: string
    tags: TagModel[]
    group: GroupModel
}

export class CourseModel implements CourseModel {
    logId: string
    thName: string
    engName: string
    thDesc: string
    engDesc: string
    objective: string
    courseOutline: string
    thumbnail: string
    link1: string
    courseType: string
    courseLevel: string
    courseTime: string
    courseTrainer: string
    courseTrainerDetail: string
    courseObj: string
    uploadBy: string
    uploadDate: string
    uploadTime: string
    remark: string
    status: number
    approveBy: string
    approveDate: string
    approveTime: string
    tags: TagModel[]
    group: GroupModel
    constructor(data: Partial<any>) {
    this.logId = data.logId?data.logId:''
    this.objective = data.objective?data.objective:''
    this.thumbnail = data.thumbnail?data.thumbnail:''
    this.link1 = data.link1?data.link1:''
    this.courseObj = data.courseObj?data.courseObj:''
    this.uploadBy = data.uploadBy?data.uploadBy:''
    this.remark = data.remark?data.remark:''
    this.status = data.status?data.status:0
    this.approveBy = data.approveBy?data.approveBy:''
    this.thName = data.thName?data.thName:''
    this.engName = data.engName?data.engName:''
    this.thDesc = data.thDesc?data.thDesc:''
    this.engDesc = data.engDesc?data.engDesc:''
    this.courseOutline = data.courseOutline?data.courseOutline:''
    this.courseType = data.courseType?data.courseType:''
    this.courseLevel = data.courseLevel?data.courseLevel:''
    this.courseTime = data.courseTime?data.courseTime:''
    this.courseTrainer = data.courseTrainer?data.courseTrainer:''
    this.courseTrainerDetail = data.courseTrainerDetail?data.courseTrainerDetail:''
    this.tags = data.tags?data.tags:[]
    this.uploadDate = data.uploadDate?data.uploadDate:''
    this.uploadTime = data.uploadTime?data.uploadTime:''
    this.approveDate = data.approveDate?data.approveDate:''
    this.approveTime = data.approveTime?data.approveTime:''
    this.group = data.group?new GroupModel(data.group):new GroupModel({})
    }
    getImage(){
        if(this.thumbnail){
            return environment.url+"files/image/"+this.thumbnail
        }else{
            return 'assets/images/big/auth-bg.jpg'
        }
    }
}