<?php
class UeuploadAction extends BackendAction {
	
    protected $list_relation = true;
    public function _initialize()
    {
        parent::_initialize();
        
    }
    

public function upload(){

 $ueditor_config = json_decode(preg_replace("/\/\*[\s\S]+?\*\//", "", file_get_contents("./static/ueditor/php/config.json")), true);
        $action = $_GET['action'];
        switch ($action) {
            case 'config':
                $result = json_encode($ueditor_config);
                break;
            /* 上传图片 */
            case 'uploadimage':
                /* 上传涂鸦 */
            case 'uploadscrawl':
                /* 上传视频 */
            case 'uploadvideo':
                /* 上传文件 */
            case 'uploadfile':
			
			// 调用ThinkPHP的UploadFile类
			import('ORG.Net.UploadFile');
			$upload = new UploadFile($ueditor_config);
			$upload->autoSub = true;    // 启用子目录存储
			$upload->subType = 'date';  // 子目录存储名为日期
			$upload->dateFormat = 'Ym'; // 日期格式:Ym，如：201701
			 
			if($upload->upload(C('yh_attach_path'))){
			    $info = $upload->getUploadFileInfo();
			   
			    echo json_encode(array(
			        'state' => 'SUCCESS',             // 上传状态，上传成功时必须返回"SUCCESS"
			        'url' => '/'.C('yh_attach_path'). $info[0]['savename'],   // 返回的地址
			        'title' => $info[0]['name'] ,     // 新文件名
			        'original' => $info[0]['name'],   // 原文件名
			        'type' =>  $info[0]['type'],      // 文件类型
			        'size' =>  $info[0]['size']        //文件大小
			        ));
				}else{
                echo json_encode(array('state'=>$upload->getErrorMsg()));
            }
					break;
            default:
                $result = json_encode(array(
                    'state' => '请求地址出错'
                ));
                break;
        }
        /* 输出结果 */
        if (isset($_GET["callback"])) {
            if (preg_match("/^[\w_]+$/", $_GET["callback"])) {
                echo htmlspecialchars($_GET["callback"]) . '(' . $result . ')';
            } else {
                echo json_encode(array(
                    'state' => 'callback参数不合法'
                ));
            }
        } else {
            echo $result;
        }	
	
	
}

}