103 lines
3.9 KiB
PHP
103 lines
3.9 KiB
PHP
|
<?php
|
|||
|
|
|||
|
namespace app\admin\controller;
|
|||
|
|
|||
|
use app\common\controller\AdminBase;
|
|||
|
use think\facade\View;
|
|||
|
use app\common\model\Attachment as AttachmentModel;
|
|||
|
|
|||
|
class Attachment extends AdminBase
|
|||
|
{
|
|||
|
private $allowMedias = ["mp4", "ogg", "webm", "mp3", "wav"];//默认只允许上传媒体
|
|||
|
private $allowImages = ['bmp','jpg','jpeg','gif','svg','ico','png','jpeg2000'];//默认只允许上传图片
|
|||
|
private $allowFiles = ['doc','docx','pdf','txt','xls','xlsx','ppt', "zip", "rar"];//默认只允许上传文件
|
|||
|
public function index()
|
|||
|
{
|
|||
|
$param = $this->request->param();
|
|||
|
if(array_key_exists('bcid', $param)){
|
|||
|
View::assign('bcid',$param['bcid']);
|
|||
|
}
|
|||
|
$attaArr = AttachmentModel::select()->toArray();
|
|||
|
if(sizeof($attaArr) > 0){
|
|||
|
$atta = $attaArr[0];
|
|||
|
$atta['bucket_domain'] = $atta['bucket'].".".$atta['endpoint'];
|
|||
|
$atta['i_suffixs'] = str_replace(","," ", $atta['i_suffixs']);
|
|||
|
$atta['a_suffixs'] = str_replace(","," ", $atta['a_suffixs']);
|
|||
|
$atta['f_suffixs'] = str_replace(","," ", $atta['f_suffixs']);
|
|||
|
View::assign('attachment', $atta);
|
|||
|
}
|
|||
|
//文件上传大小
|
|||
|
$postSize = @ini_get('file_uploads') ? ini_get('post_max_size') :'未知';
|
|||
|
$fileUpload = @ini_get('file_uploads') ? ini_get('upload_max_filesize') :'未知';
|
|||
|
View::assign('postSize', $postSize);
|
|||
|
View::assign('fileUpload', $fileUpload);
|
|||
|
|
|||
|
return view('index');
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* 后最输入处理
|
|||
|
*/
|
|||
|
private function suffixHandler($suffix, $type="i"){
|
|||
|
$suffix = str_replace("\n", " ", $suffix);
|
|||
|
$suffix = str_replace("\r", " ", $suffix);
|
|||
|
$suffix = str_replace(" ", " ", $suffix);
|
|||
|
$suffixArr = explode(" ", $suffix);
|
|||
|
$sfArr = [];
|
|||
|
foreach ($suffixArr as $sf){
|
|||
|
if(!empty($sf)){
|
|||
|
if($type == "i"){//支持图片后缀
|
|||
|
if(in_array($sf, $this->allowImages)){
|
|||
|
array_push($sfArr, $sf);
|
|||
|
}
|
|||
|
}elseif ($type == "a"){//支持音频视频附件后缀
|
|||
|
if(in_array($sf, $this->allowMedias)){
|
|||
|
array_push($sfArr, $sf);
|
|||
|
}
|
|||
|
}elseif ($type == "f"){//支持文件附件后缀
|
|||
|
if(in_array($sf, $this->allowFiles)){
|
|||
|
array_push($sfArr, $sf);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
$sfArr = array_unique($sfArr);
|
|||
|
return implode(",", $sfArr);
|
|||
|
}
|
|||
|
|
|||
|
public function save()
|
|||
|
{
|
|||
|
$file = $this->request->action();
|
|||
|
if( $this->request->isPost() ) {
|
|||
|
$param = $this->request->post();
|
|||
|
//现在附近设置
|
|||
|
if(!empty($param["i_suffixs"])){
|
|||
|
$i_suffixs = $this->suffixHandler($param["i_suffixs"], "i");//支持图片后缀
|
|||
|
$param['i_suffixs'] = $i_suffixs;
|
|||
|
}
|
|||
|
if(!empty($param["a_suffixs"])){
|
|||
|
$a_suffixs = $this->suffixHandler($param["a_suffixs"], "a");//支持音频视频附件后缀
|
|||
|
$param['a_suffixs'] = $a_suffixs;
|
|||
|
}
|
|||
|
if(!empty($param["f_suffixs"])){
|
|||
|
$f_suffixs = $this->suffixHandler($param["f_suffixs"], "f");//支持文件附件后缀
|
|||
|
$param['f_suffixs'] = $f_suffixs;
|
|||
|
}
|
|||
|
$bucket_domain = $param['bucket_domain'];
|
|||
|
$bdArr = explode(".", $bucket_domain);
|
|||
|
unset($bdArr[0]);
|
|||
|
$endpoint = implode(".", $bdArr);
|
|||
|
$param['endpoint'] = $endpoint;
|
|||
|
unset($param['bucket_domain']);
|
|||
|
$id = $param["id"];
|
|||
|
|
|||
|
if($id == "" || empty($id)){
|
|||
|
AttachmentModel::create($param);
|
|||
|
}else{
|
|||
|
AttachmentModel::update($param);
|
|||
|
}
|
|||
|
$this->success('设置成功');
|
|||
|
}
|
|||
|
return view($file,['data'=>$this->_load($file)]);
|
|||
|
}
|
|||
|
}
|