package com.yidianling.home.ui.view

import android.content.Context
import android.view.View
import android.widget.LinearLayout
import com.yidianling.home.R
import com.yidianling.home.event.IHomeBaseEvent
import com.yidianling.home.model.bean.HomeFMBean
import com.ydl.ydl_image.config.ISimpleImageOpConfig
import com.ydl.ydl_image.config.SimpleImageOpConfiger
import com.ydl.ydl_image.manager.YDLImageCacheManager
import com.yidianling.common.tools.RxDeviceTool
import com.yidianling.common.tools.RxImageTool
import kotlinx.android.synthetic.ydl.home_intelligent_top_item_view.view.*

/**
 * @author <a href="https://www.jianshu.com/u/c1e5310dd724">xujian</a>
 * @描述: 心灵电台模块item--顶部item
 * @Copyright Copyright (c) 2019
 * @Company 壹点灵
 * @date 2019/02/15
 */
class HomeIntelligentTopItemView(private val mContext: Context, private var homeEvent: IHomeBaseEvent?): LinearLayout(mContext) {

    init {
        initView()
    }

    private fun initView() {
        orientation = VERTICAL

        var screenWidth = RxDeviceTool.getScreenWidth(mContext)
        var viewWidth = (screenWidth - 2 * 15 * RxDeviceTool.getScreenDensity(mContext)).toInt()
        var viewHeight = viewWidth * 143 / 345
        val params = LinearLayout.LayoutParams(viewWidth, viewHeight)
        layoutParams = params
        View.inflate(mContext, R.layout.home_intelligent_top_item_view, this)

    }

    /**
     * 刷新数据
     */
    fun updateData(bean: HomeFMBean.ListBean) {
        var screenWidth = RxDeviceTool.getScreenWidth(mContext)
        var viewWidth = (screenWidth - RxImageTool.dip2px(30f))
        var viewHeight = viewWidth * 143 / 345
        val sp = SimpleImageOpConfiger()
        sp.loadingPic = R.drawable.platform_default_img
        sp.errorPic = R.drawable.platform_default_img
        sp.scaleType = ISimpleImageOpConfig.CENTER_CROP
        sp.isCacheOnDisk = true
        YDLImageCacheManager.showImage(mContext,bean.imageUrl,homeModuleIntelligentTopViewImage, viewWidth, viewHeight,sp)

        homeModuleIntelligentTopViewTitle.text = bean.name
        homeModuleIntelligentTopViewAuthor.text = bean.author
        homeModuleIntelligentTopViewHits.text = bean.hits.toString()
        this.setOnClickListener{ homeEvent?.fmItemClick(bean) }
        iv_play_fm.setOnClickListener{homeEvent?.fmPlayClick(bean)}
    }
}