<?php

/*
  PHP version 5
  Copyright (c) 2002-2018 ECISP.CN、EarcLink.COM
  警告：这不是一个免费的软件，请在许可范围内使用，请尊重知识产权，侵权必究，举报有奖
  作者：黄祥云 E-mail:6326420@qq.com  QQ:6326420 TEL:18665655030
 */

use application\ESPCMS_FileUpload;
use inc_application\link\PublicLink;

class FileUpload {

	public static function in_FileUpload() {
		global $espcms_web_templates, $espcms_command;
		$lanpack = $espcms_web_templates->geto('lngpack');
		if (!preg_match('/^[\w]{2,50}$/i', $_GET['inputidname']) || !preg_match('/^[\w]{2,50}$/i', $_GET['upFileType'])) {
			exit($lanpack['db_err']);
		}
		$attrname = $_GET['inputidname'];
		$inputtype = $_GET['upFileType'];
		$link_array = array('attrname' => $attrname, 'inputtype' => $inputtype);
		$espcms_web_templates->into('file_save_link', PublicLink::get_fileupload('upfiesave', $link_array));
		$php_upload_max_filesize = ini_get('file_uploads') ? intval(ini_get('upload_max_filesize')) : 2;
		$espcms_web_templates->into('php_upload_max_filesize', $php_upload_max_filesize);
		$net_upload_max_filesize = intval($espcms_command['WEB_UPFILE_SIZE']);
		$espcms_web_templates->into('net_upload_max_filesize', $net_upload_max_filesize);
		$chunksize = $php_upload_max_filesize > 5 ? 5 * 1024 * 1024 : $php_upload_max_filesize * 1024 * 1024;
		$espcms_web_templates->into('chunksize', $chunksize);
		$upload_max_filesize_byte = $net_upload_max_filesize * 1024 * 1024;
		$espcms_web_templates->into('upload_max_filesize_byte', $upload_max_filesize_byte);
		$espcms_web_templates->into('path', 'public');
		$espcms_web_templates->into('inputtype', $inputtype);
		$espcms_web_templates->into('upfile_ext', $_GET['upFileType'] == 'file' ? $espcms_command['UPFILE_FILE_OTHER_TYPE'] : $espcms_command['UPFILE_FILE_PIC_TYPE']);
		$espcms_web_templates->into('tokenkey', token('file_upload'));
		$espcms_web_templates->output('public/fileupload', 'fileupload', false, false);
	}

	public static function in_FileSave() {
		global $espcms_command;
		if (!preg_match('/^[\w]{2,50}$/i', $_GET['inputidname']) || !preg_match('/^[\w]{2,50}$/i', $_GET['upFileType'])) {
			exit;
		}
		$upFileType = $_GET['upFileType'] == 'file' ? 'file' : 'image';
		$isWater = $_POST['isWater'] && $upFileType == 'image' ? true : false;
		$fileName = $_FILES['espcms_webupfilename']['name'] ? $_FILES['espcms_webupfilename']['name'] : uniqid("file_");
		$espcms_command['UPFILE_SIZE'] = $espcms_command['WEB_UPFILE_SIZE'];
		$espcms_command['UPFILE_SAVAPATH'] = 'upload/';
		$uploadFileArray = ESPCMS_FileUpload::intoFile($_FILES['espcms_webupfilename'], $espcms_command, $upFileType, false, $isWater, false, 0, 1);
		$uploadFileArray['inuptypeid'] = $_GET['inputidname'];
		$outJOSN = json_encode($uploadFileArray);
		exit($outJOSN);
	}

}
