<?php namespace Source\Api;
use Dever;
header('X-Accel-Buffering: no'); //关闭nginx的缓存
class Data
{
    # 切换
    public function set()
    {
        $id = Dever::input('id');
        $info_data_id = Dever::input('info_data_id');
        $db = Dever::db('info_data', 'source');
        $info = $db->find($info_data_id);

        if ($info['info_data_content_id'] == $id) {
            Dever::error('已是当前版本，无需切换');
        }
        $db->update(array('id' => $info['id']), array('info_data_content_id' => $id));
        return '版本切换完成';
    }

    # 获取素材内容
    public function content()
    {
        $msg = array();
        $msg[] = array
        (
            'role' => 'user',
            'content' => '生成一个关于春天的短句',
        );
        return Dever::load('model/chat', 'ai')->init(1)->completions($msg, true);
    }

    # 链接中转
    public function location()
    {
        $id = Dever::input('id');
        $info = Dever::db('info_value', 'source')->find($id);
        if ($info) {
            $link = $info['value'];
            if ($link) {
                header('HTTP/1.1 301 Moved Permanently');
                header('Location: ' . $link);
            }
        }
        Dever::error('链接错误');
    }

    # 获取素材的视频模板选择
    public function getVideoTemplate($value, $set = array())
    {
        if (is_array($value)) {
            $value = end($value);
        }
        $result = array();
        $result['template_id']['show'] = true;
        $result['template_id']['value'] = '';
        if (!$value || $value == 3) {
            $result['template_id']['show'] = false;
            $result['template_id']['option'] = array();
            return $result;
        }
        $option = $set;
        if ($set) {
            $result['template_id']['value'] = -1;
        }
        if ($value == 1) {
            # 官方模板
            $option = Dever::db('video_template', 'api')->select(array('status' => 1));
        } else {
            # 自用模板
        }
        $result['template_id']['option'] = $option;
        return $result;
    }

    # 删除
    public function delValue()
    {
        $id = Dever::input('id');
        Dever::db('info_data_value', 'source')->delete($id);
        return '删除成功';
    }
}